|
|
!(function(){var L6=Object.defineProperty,N6=Object.defineProperties;var k6=Object.getOwnPropertyDescriptors;var DS=Object.getOwnPropertySymbols;var Q6=Object.prototype.hasOwnProperty,U6=Object.prototype.propertyIsEnumerable;var NA=Math.pow,_1=(X,nt,M)=>nt in X?L6(X,nt,{enumerable:!0,configurable:!0,writable:!0,value:M}):X[nt]=M,tu=(X,nt)=>{for(var M in nt||(nt={}))Q6.call(nt,M)&&_1(X,M,nt[M]);if(DS)for(var M of DS(nt))U6.call(nt,M)&&_1(X,M,nt[M]);return X},H1=(X,nt)=>N6(X,k6(nt));var yr=(X,nt,M)=>_1(X,typeof nt!="symbol"?nt+"":nt,M);(self.webpackChunk=self.webpackChunk||[]).push([[6505],{1302:function(X,nt,M){"use strict";M.d(nt,{kJ:function(){return Pv},RN:function(){return g6}});var F={};M.r(F),M.d(F,{add:function(){return Wh},adjoint:function(){return Qt},clone:function(){return Be},copy:function(){return Ge},create:function(){return ne},decompose:function(){return nu},determinant:function(){return re},equals:function(){return jv},exactEquals:function(){return zr},frob:function(){return Vh},fromQuat:function(){return DA},fromQuat2:function(){return ti},fromRotation:function(){return Xi},fromRotationTranslation:function(){return $r},fromRotationTranslationScale:function(){return co},fromRotationTranslationScaleOrigin:function(){return uo},fromScaling:function(){return Rn},fromTranslation:function(){return Fr},fromValues:function(){return je},fromXRotation:function(){return Ji},fromYRotation:function(){return dn},fromZRotation:function(){return wr},frustum:function(){return ru},getRotation:function(){return Wo},getScaling:function(){return ks},getTranslation:function(){return _n},identity:function(){return Ie},invert:function(){return An},lookAt:function(){return zh},mul:function(){return ho},multiply:function(){return de},multiplyScalar:function(){return Wv},multiplyScalarAndAdd:function(){return Zv},ortho:function(){return su},orthoNO:function(){return au},orthoZO:function(){return ou},perspective:function(){return iu},perspectiveFromFieldOfView:function(){return za},perspectiveNO:function(){return Gl},perspectiveZO:function(){return Kv},rotate:function(){return Qn},rotateX:function(){return jn},rotateY:function(){return qn},rotateZ:function(){return Qr},scale:function(){return Jn},set:function(){return Zn},str:function(){return Vv},sub:function(){return Yv},subtract:function(){return Au},targetTo:function(){return zv},translate:function(){return Ae},transpose:function(){return De}});var z={};M.r(z),M.d(z,{circle:function(){return lk},diamond:function(){return ck},rect:function(){return hk},simple:function(){return dk},triangle:function(){return Yb},triangleRect:function(){return fk},vee:function(){return uk}});var D=M(33885),N=M(67732),O=M(83652),k=M(94480),U=M(22214),L=M(42403),Q=M(42978),_=M(37271),P=_,Z=1e-6,tt=typeof Float32Array!="undefined"?Float32Array:Array,$=Math.random,lt="zyx";function At(r){return r>=0?Math.round(r):r%.5===0?Math.floor(r):Math.round(r)}function rt(r){tt=r}var ft=Math.PI/180,ht=180/Math.PI;function mt(r){return r*ft}function yt(r){return r*ht}function Tt(r,t){var e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:Z;return Math.abs(r-t)<=e*Math.max(1,Math.abs(r),Math.abs(t))}function xt(){var r=new tt(3);return tt!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r}function Nt(r){var t=new tt(3);return t[0]=r[0],t[1]=r[1],t[2]=r[2],t}function bt(r){var t=r[0],e=r[1],n=r[2];return Math.sqrt(t*t+e*e+n*n)}function Lt(r,t,e){var n=new tt(3);return n[0]=r,n[1]=t,n[2]=e,n}function Kt(r,t){return r[0]=t[0],r[1]=t[1],r[2]=t[2],r}function $t(r,t,e,n){return r[0]=t,r[1]=e,r[2]=n,r}function oe(r,t,e){return r[0]=t[0]+e[0],r[1]=t[1]+e[1],r[2]=t[2]+e[2],r}function fe(r,t,e){return r[0]=t[0]-e[0],r[1]=t[1]-e[1],r[2]=t[2]-e[2],r}function He(r,t,e){return r[0]=t[0]*e[0],r[1]=t[1]*e[1],r[2]=t[2]*e[2],r}function rn(r,t,e){return r[0]=t[0]/e[0],r[1]=t[1]/e[1],r[2]=t[2]/e[2],r}function Dn(r,t){return r[0]=Math.ceil(t[0]),r[1]=Math.ceil(t[1]),r[2]=Math.ceil(t[2]),r}function Mr(r,t){return r[0]=Math.floor(t[0]),r[1]=Math.floor(t[1]),r[2]=Math.floor(t[2]),r}function Vi(r,t,e){return r[0]=Math.min(t[0],e[0]),r[1]=Math.min(t[1],e[1]),r[2]=Math.min(t[2],e[2]),r}function is(r,t,e){return r[0]=Math.max(t[0],e[0]),r[1]=Math.max(t[1],e[1]),r[2]=Math.max(t[2],e[2]),r}function Ao(r,t){return r[0]=glMatrix.round(t[0]),r[1]=glMatrix.round(t[1]),r[2]=glMatrix.round(t[2]),r}function zt(r,t,e){return r[0]=t[0]*e,r[1]=t[1]*e,r[2]=t[2]*e,r}function Wt(r,t,e,n){return r[0]=t[0]+e[0]*n,r[1]=t[1]+e[1]*n,r[2]=t[2]+e[2]*n,r}function Yt(r,t){var e=t[0]-r[0],n=t[1]-r[1],i=t[2]-r[2];return Math.sqrt(e*e+n*n+i*i)}function Et(r,t){var e=t[0]-r[0],n=t[1]-r[1],i=t[2]-r[2];return e*e+n*n+i*i}function kt(r){var t=r[0],e=r[1],n=r[2];return t*t+e*e+n*n}function Dt(r,t){return r[0]=-t[0],r[1]=-t[1],r[2]=-t[2],r}function ie(r,t){return r[0]=1/t[0],r[1]=1/t[1],r[2]=1/t[2],r}function xe(r,t){var e=t[0],n=t[1],i=t[2],a=e*e+n*n+i*i;return a>0&&(a=1/Math.sqrt(a)),r[0]=t[0]*a,r[1]=t[1]*a,r[2]=t[2]*a,r}function _e(r,t){return r[0]*t[0]+r[1]*t[1]+r[2]*t[2]}function Te(r,t,e){var n=t[0],i=t[1],a=t[2],s=e[0],o=e[1],A=e[2];return r[0]=i*A-a*o,r[1]=a*s-n*A,r[2]=n*o-i*s,r}function an(r,t,e,n){var i=t[0],a=t[1],s=t[2];return r[0]=i+n*(e[0]-i),r[1]=a+n*(e[1]-a),r[2]=s+n*(e[2]-s),r}function rr(r,t,e,n){var i=Math.acos(Math.min(Math.max(_e(t,e),-1),1)),a=Math.sin(i),s=Math.sin((1-n)*i)/a,o=Math.sin(n*i)/a;return r[0]=s*t[0]+o*e[0],r[1]=s*t[1]+o*e[1],r[2]=s*t[2]+o*e[2],r}function sr(r,t,e,n,i,a){var s=a*a,o=s*(2*a-3)+1,A=s*(a-2)+a,l=s*(a-1),c=s*(3-2*a);return r[0]=t[0]*o+e[0]*A+n[0]*l+i[0]*c,r[1]=t[1]*o+e[1]*A+n[1]*l+i[1]*c,r[2]=t[2]*o+e[2]*A+n[2]*l+i[2]*c,r}function Ke(r,t,e,n,i,a){var s=1-a,o=s*s,A=a*a,l=o*s,c=3*a*o,u=3*A*s,h=A*a;return r[0]=t[0]*l+e[0]*c+n[0]*u+i[0]*h,r[1]=t[1]*l+e[1]*c+n[1]*u+i[1]*h,r[2]=t[2]*l+e[2]*c+n[2]*u+i[2]*h,r}function ze(r,t){t=t===void 0?1:t;var e=glMatrix.RANDOM()*2*Math.PI,n=glMatrix.RANDOM()*2-1,i=Math.sqrt(1-n*n)*t;return r[0]=Math.cos(e)*i,r[1]=Math.sin(e)*i,r[2]=n*t,r}function ye(r,t,e){var n=t[0],i=t[1],a=t[2],s=e[3]*n+e[7]*i+e[11]*a+e[15];return s=s||1,r[0]=(e[0]*n+e[4]*i+e[8]*a+e[12])/s,r[1]=(e[1]*n+e[5]*i+e[9]*a+e[13])/s,r[2]=(e[2]*n+e[6]*i+e[10]*a+e[14])/s,r}function We(r,t,e){var n=t[0],i=t[1],a=t[2];return r[0]=n*e[0]+i*e[3]+a*e[6],r[1]=n*e[1]+i*e[4]+a*e[7],r[2]=n*e[2]+i*e[5]+a*e[8],r}function Kr(r,t,e){var n=e[0],i=e[1],a=e[2],s=e[3],o=t[0],A=t[1],l=t[2],c=i*l-a*A,u=a*o-n*l,h=n*A-i*o;return c=c+c,u=u+u,h=h+h,r[0]=o+s*c+i*h-a*u,r[1]=A+s*u+a*c-n*h,r[2]=l+s*h+n*u-i*c,r}function Wi(r,t,e,n){var i=[],a=[];return i[0]=t[0]-e[0],i[1]=t[1]-e[1],i[2]=t[2]-e[2],a[0]=i[0],a[1]=i[1]*Math.cos(n)-i[2]*Math.sin(n),a[2]=i[1]*Math.sin(n)+i[2]*Math.cos(n),r[0]=a[0]+e[0],r[1]=a[1]+e[1],r[2]=a[2]+e[2],r}function me(r,t,e,n){var i=[],a=[];return i[0]=t[0]-e[0],i[1]=t[1]-e[1],i[2]=t[2]-e[2],a[0]=i[2]*Math.sin(n)+i[0]*Math.cos(n),a[1]=i[1],a[2]=i[2]*Math.cos(n)-i[0]*Math.sin(n),r[0]=a[0]+e[0],r[1]=a[1]+e[1],r[2]=a[2]+e[2],r}function Ga(r,t,e,n){var i=[],a=[];return i[0]=t[0]-e[0],i[1]=t[1]-e[1],i[2]=t[2]-e[2],a[0]=i[0]*Math.cos(n)-i[1]*Math.sin(n),a[1]=i[0]*Math.sin(n)+i[1]*Math.cos(n),a[2]=i[2],r[0]=a[0]+e[0],r[1]=a[1]+e[1],r[2]=a[2]+e[2],r}function kr(r,t){var e=r[0],n=r[1],i=r[2],a=t[0],s=t[1],o=t[2],A=Math.sqrt((e*e+n*n+i*i)*(a*a+s*s+o*o)),l=A&&_e(r,t)/A;return Math.acos(Math.min(Math.max(l,-1),1))}function Tr(r){return r[0]=0,r[1]=0,r[2]=0,r}function fi(r){return"vec3("+r[0]+", "+r[1]+", "+r[2]+")"}function as(r,t){return r[0]===t[0]&&r[1]===t[1]&&r[2]===t[2]}function Zi(r,t){var e=r[0],n=r[1],i=r[2],a=t[0],s=t[1],o=t[2];return Math.abs(e-a)<=Z*Math.max(1,Math.abs(e),Math.abs(a))&&Math.abs(n-s)<=Z*Math.max(1,Math.abs(n),Math.abs(s))&&Math.abs(i-o)<=Z*Math.max(1,Math.abs(i),Math.abs(o))}var ss=fe,Ii=null,Jr=null,ma=Yt,ya=null,aa=bt,wa=null,qr=function(){var r=xt();return function(t,e,n,i,a,s){var o,A;for(e||(e=3),n||(n=0),i?A=Math.min(i*e+n,t.length):A=t.length,o=n;o<A;o+=e)r[0]=t[o],r[1]=t[o+1],r[2]=t[o+2],a(r,r,s),t[o]=r[0],t[o+1]=r[1],t[o+2]=r[2];return t}}();function or(){var r=new tt(4);return tt!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0,r[3]=0),r}function Ko(r){var t=new tt(4);return t[0]=r[0],t[1]=r[1],t[2]=r[2],t[3]=r[3],t}function ji(r,t,e,n){var i=new tt(4);return i[0]=r,i[1]=t,i[2]=e,i[3]=n,i}function Yi(r,t){return r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[3],r}function lo(r,t,e,n,i){return r[0]=t,r[1]=e,r[2]=n,r[3]=i,r}function Ka(r,t,e){return r[0]=t[0]+e[0],r[1]=t[1]+e[1],r[2]=t[2]+e[2],r[3]=t[3]+e[3],r}function zo(r,t,e){return r[0]=t[0]-e[0],r[1]=t[1]-e[1],r[2]=t[2]-e[2],r[3]=t[3]-e[3],r}function kA(r,t,e){return r[0]=t[0]*e[0],r[1]=t[1]*e[1],r[2]=t[2]*e[2],r[3]=t[3]*e[3],r}function Ns(r,t,e){return r[0]=t[0]/e[0],r[1]=t[1]/e[1],r[2]=t[2]/e[2],r[3]=t[3]/e[3],r}function QA(r,t){return r[0]=Math.ceil(t[0]),r[1]=Math.ceil(t[1]),r[2]=Math.ceil(t[2]),r[3]=Math.ceil(t[3]),r}function Pl(r,t){return r[0]=Math.floor(t[0]),r[1]=Math.floor(t[1]),r[2]=Math.floor(t[2]),r[3]=Math.floor(t[3]),r}function eu(r,t,e){return r[0]=Math.min(t[0],e[0]),r[1]=Math.min(t[1],e[1]),r[2]=Math.min(t[2],e[2]),r[3]=Math.min(t[3],e[3]),r}function Gh(r,t,e){return r[0]=Math.max(t[0],e[0]),r[1]=Math.max(t[1],e[1]),r[2]=Math.max(t[2],e[2]),r[3]=Math.max(t[3],e[3]),r}function Kh(r,t){return r[0]=glMatrix.round(t[0]),r[1]=glMatrix.round(t[1]),r[2]=glMatrix.round(t[2]),r[3]=glMatrix.round(t[3]),r}function Dl(r,t,e){return r[0]=t[0]*e,r[1]=t[1]*e,r[2]=t[2]*e,r[3]=t[3]*e,r}function pn(r,t,e,n){return r[0]=t[0]+e[0]*n,r[1]=t[1]+e[1]*n,r[2]=t[2]+e[2]*n,r[3]=t[3]+e[3]*n,r}function UA(r,t){var e=t[0]-r[0],n=t[1]-r[1],i=t[2]-r[2],a=t[3]-r[3];return Math.sqrt(e*e+n*n+i*i+a*a)}function Rl(r,t){var e=t[0]-r[0],n=t[1]-r[1],i=t[2]-r[2],a=t[3]-r[3];return e*e+n*n+i*i+a*a}function Ea(r){var t=r[0],e=r[1],n=r[2],i=r[3];return Math.sqrt(t*t+e*e+n*n+i*i)}function PA(r){var t=r[0],e=r[1],n=r[2],i=r[3];return t*t+e*e+n*n+i*i}function Vo(r,t){return r[0]=-t[0],r[1]=-t[1],r[2]=-t[2],r[3]=-t[3],r}function _l(r,t){return r[0]=1/t[0],r[1]=1/t[1],r[2]=1/t[2],r[3]=1/t[3],r}function Hl(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=e*e+n*n+i*i+a*a;return s>0&&(s=1/Math.sqrt(s)),r[0]=e*s,r[1]=n*s,r[2]=i*s,r[3]=a*s,r}function q(r,t){return r[0]*t[0]+r[1]*t[1]+r[2]*t[2]+r[3]*t[3]}function x(r,t,e,n){var i=e[0]*n[1]-e[1]*n[0],a=e[0]*n[2]-e[2]*n[0],s=e[0]*n[3]-e[3]*n[0],o=e[1]*n[2]-e[2]*n[1],A=e[1]*n[3]-e[3]*n[1],l=e[2]*n[3]-e[3]*n[2],c=t[0],u=t[1],h=t[2],f=t[3];return r[0]=u*l-h*A+f*o,r[1]=-(c*l)+h*s-f*a,r[2]=c*A-u*s+f*i,r[3]=-(c*o)+u*a-h*i,r}function S(r,t,e,n){var i=t[0],a=t[1],s=t[2],o=t[3];return r[0]=i+n*(e[0]-i),r[1]=a+n*(e[1]-a),r[2]=s+n*(e[2]-s),r[3]=o+n*(e[3]-o),r}function m(r,t){t=t===void 0?1:t;var e,n,i,a,s,o,A;A=glMatrix.RANDOM(),e=A*2-1,n=(4*glMatrix.RANDOM()-2)*Math.sqrt(A*-A+A),s=e*e+n*n,A=glMatrix.RANDOM(),i=A*2-1,a=(4*glMatrix.RANDOM()-2)*Math.sqrt(A*-A+A),o=i*i+a*a;var l=Math.sqrt((1-s)/o);return r[0]=t*e,r[1]=t*n,r[2]=t*i*l,r[3]=t*a*l,r}function T(r,t,e){var n=t[0],i=t[1],a=t[2],s=t[3];return r[0]=e[0]*n+e[4]*i+e[8]*a+e[12]*s,r[1]=e[1]*n+e[5]*i+e[9]*a+e[13]*s,r[2]=e[2]*n+e[6]*i+e[10]*a+e[14]*s,r[3]=e[3]*n+e[7]*i+e[11]*a+e[15]*s,r}function H(r,t,e){var n=e[0],i=e[1],a=e[2],s=e[3],o=t[0],A=t[1],l=t[2],c=i*l-a*A,u=a*o-n*l,h=n*A-i*o;return c=c+c,u=u+u,h=h+h,r[0]=o+s*c+i*h-a*u,r[1]=A+s*u+a*c-n*h,r[2]=l+s*h+n*u-i*c,r[3]=t[3],r}function st(r){return r[0]=0,r[1]=0,r[2]=0,r[3]=0,r}function ot(r){return"vec4("+r[0]+", "+r[1]+", "+r[2]+", "+r[3]+")"}function dt(r,t){return r[0]===t[0]&&r[1]===t[1]&&r[2]===t[2]&&r[3]===t[3]}function gt(r,t){var e=r[0],n=r[1],i=r[2],a=r[3],s=t[0],o=t[1],A=t[2],l=t[3];return Math.abs(e-s)<=glMatrix.EPSILON*Math.max(1,Math.abs(e),Math.abs(s))&&Math.abs(n-o)<=glMatrix.EPSILON*Math.max(1,Math.abs(n),Math.abs(o))&&Math.abs(i-A)<=glMatrix.EPSILON*Math.max(1,Math.abs(i),Math.abs(A))&&Math.abs(a-l)<=glMatrix.EPSILON*Math.max(1,Math.abs(a),Math.abs(l))}var Ut=null,Bt=null,Xt=null,he=null,Vt=null,ee=null,Se=null,Mt=function(){var r=or();return function(t,e,n,i,a,s){var o,A;for(e||(e=4),n||(n=0),i?A=Math.min(i*e+n,t.length):A=t.length,o=n;o<A;o+=e)r[0]=t[o],r[1]=t[o+1],r[2]=t[o+2],r[3]=t[o+3],a(r,r,s),t[o]=r[0],t[o+1]=r[1],t[o+2]=r[2],t[o+3]=r[3];return t}}();function ne(){var r=new tt(16);return tt!=Float32Array&&(r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=0,r[12]=0,r[13]=0,r[14]=0),r[0]=1,r[5]=1,r[10]=1,r[15]=1,r}function Be(r){var t=new tt(16);return t[0]=r[0],t[1]=r[1],t[2]=r[2],t[3]=r[3],t[4]=r[4],t[5]=r[5],t[6]=r[6],t[7]=r[7],t[8]=r[8],t[9]=r[9],t[10]=r[10],t[11]=r[11],t[12]=r[12],t[13]=r[13],t[14]=r[14],t[15]=r[15],t}function Ge(r,t){return r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[3],r[4]=t[4],r[5]=t[5],r[6]=t[6],r[7]=t[7],r[8]=t[8],r[9]=t[9],r[10]=t[10],r[11]=t[11],r[12]=t[12],r[13]=t[13],r[14]=t[14],r[15]=t[15],r}function je(r,t,e,n,i,a,s,o,A,l,c,u,h,f,d,g){var v=new tt(16);return v[0]=r,v[1]=t,v[2]=e,v[3]=n,v[4]=i,v[5]=a,v[6]=s,v[7]=o,v[8]=A,v[9]=l,v[10]=c,v[11]=u,v[12]=h,v[13]=f,v[14]=d,v[15]=g,v}function Zn(r,t,e,n,i,a,s,o,A,l,c,u,h,f,d,g,v){return r[0]=t,r[1]=e,r[2]=n,r[3]=i,r[4]=a,r[5]=s,r[6]=o,r[7]=A,r[8]=l,r[9]=c,r[10]=u,r[11]=h,r[12]=f,r[13]=d,r[14]=g,r[15]=v,r}function Ie(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function De(r,t){if(r===t){var e=t[1],n=t[2],i=t[3],a=t[6],s=t[7],o=t[11];r[1]=t[4],r[2]=t[8],r[3]=t[12],r[4]=e,r[6]=t[9],r[7]=t[13],r[8]=n,r[9]=a,r[11]=t[14],r[12]=i,r[13]=s,r[14]=o}else r[0]=t[0],r[1]=t[4],r[2]=t[8],r[3]=t[12],r[4]=t[1],r[5]=t[5],r[6]=t[9],r[7]=t[13],r[8]=t[2],r[9]=t[6],r[10]=t[10],r[11]=t[14],r[12]=t[3],r[13]=t[7],r[14]=t[11],r[15]=t[15];return r}function An(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=t[4],o=t[5],A=t[6],l=t[7],c=t[8],u=t[9],h=t[10],f=t[11],d=t[12],g=t[13],v=t[14],y=t[15],E=e*o-n*s,C=e*A-i*s,I=e*l-a*s,R=n*A-i*o,K=n*l-a*o,W=i*l-a*A,V=c*g-u*d,J=c*v-h*d,et=c*y-f*d,at=u*v-h*g,ct=u*y-f*g,pt=h*y-f*v,wt=E*pt-C*ct+I*at+R*et-K*J+W*V;return wt?(wt=1/wt,r[0]=(o*pt-A*ct+l*at)*wt,r[1]=(i*ct-n*pt-a*at)*wt,r[2]=(g*W-v*K+y*R)*wt,r[3]=(h*K-u*W-f*R)*wt,r[4]=(A*et-s*pt-l*J)*wt,r[5]=(e*pt-i*et+a*J)*wt,r[6]=(v*I-d*W-y*C)*wt,r[7]=(c*W-h*I+f*C)*wt,r[8]=(s*ct-o*et+l*V)*wt,r[9]=(n*et-e*ct-a*V)*wt,r[10]=(d*K-g*I+y*E)*wt,r[11]=(u*I-c*K-f*E)*wt,r[12]=(o*J-s*at-A*V)*wt,r[13]=(e*at-n*J+i*V)*wt,r[14]=(g*C-d*R-v*E)*wt,r[15]=(c*R-u*C+h*E)*wt,r):null}function Qt(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=t[4],o=t[5],A=t[6],l=t[7],c=t[8],u=t[9],h=t[10],f=t[11],d=t[12],g=t[13],v=t[14],y=t[15],E=e*o-n*s,C=e*A-i*s,I=e*l-a*s,R=n*A-i*o,K=n*l-a*o,W=i*l-a*A,V=c*g-u*d,J=c*v-h*d,et=c*y-f*d,at=u*v-h*g,ct=u*y-f*g,pt=h*y-f*v;return r[0]=o*pt-A*ct+l*at,r[1]=i*ct-n*pt-a*at,r[2]=g*W-v*K+y*R,r[3]=h*K-u*W-f*R,r[4]=A*et-s*pt-l*J,r[5]=e*pt-i*et+a*J,r[6]=v*I-d*W-y*C,r[7]=c*W-h*I+f*C,r[8]=s*ct-o*et+l*V,r[9]=n*et-e*ct-a*V,r[10]=d*K-g*I+y*E,r[11]=u*I-c*K-f*E,r[12]=o*J-s*at-A*V,r[13]=e*at-n*J+i*V,r[14]=g*C-d*R-v*E,r[15]=c*R-u*C+h*E,r}function re(r){var t=r[0],e=r[1],n=r[2],i=r[3],a=r[4],s=r[5],o=r[6],A=r[7],l=r[8],c=r[9],u=r[10],h=r[11],f=r[12],d=r[13],g=r[14],v=r[15],y=t*s-e*a,E=t*o-n*a,C=e*o-n*s,I=l*d-c*f,R=l*g-u*f,K=c*g-u*d,W=t*K-e*R+n*I,V=a*K-s*R+o*I,J=l*C-c*E+u*y,et=f*C-d*E+g*y;return A*W-i*V+v*J-h*et}function de(r,t,e){var n=t[0],i=t[1],a=t[2],s=t[3],o=t[4],A=t[5],l=t[6],c=t[7],u=t[8],h=t[9],f=t[10],d=t[11],g=t[12],v=t[13],y=t[14],E=t[15],C=e[0],I=e[1],R=e[2],K=e[3];return r[0]=C*n+I*o+R*u+K*g,r[1]=C*i+I*A+R*h+K*v,r[2]=C*a+I*l+R*f+K*y,r[3]=C*s+I*c+R*d+K*E,C=e[4],I=e[5],R=e[6],K=e[7],r[4]=C*n+I*o+R*u+K*g,r[5]=C*i+I*A+R*h+K*v,r[6]=C*a+I*l+R*f+K*y,r[7]=C*s+I*c+R*d+K*E,C=e[8],I=e[9],R=e[10],K=e[11],r[8]=C*n+I*o+R*u+K*g,r[9]=C*i+I*A+R*h+K*v,r[10]=C*a+I*l+R*f+K*y,r[11]=C*s+I*c+R*d+K*E,C=e[12],I=e[13],R=e[14],K=e[15],r[12]=C*n+I*o+R*u+K*g,r[13]=C*i+I*A+R*h+K*v,r[14]=C*a+I*l+R*f+K*y,r[15]=C*s+I*c+R*d+K*E,r}function Ae(r,t,e){var n=e[0],i=e[1],a=e[2],s,o,A,l,c,u,h,f,d,g,v,y;return t===r?(r[12]=t[0]*n+t[4]*i+t[8]*a+t[12],r[13]=t[1]*n+t[5]*i+t[9]*a+t[13],r[14]=t[2]*n+t[6]*i+t[10]*a+t[14],r[15]=t[3]*n+t[7]*i+t[11]*a+t[15]):(s=t[0],o=t[1],A=t[2],l=t[3],c=t[4],u=t[5],h=t[6],f=t[7],d=t[8],g=t[9],v=t[10],y=t[11],r[0]=s,r[1]=o,r[2]=A,r[3]=l,r[4]=c,r[5]=u,r[6]=h,r[7]=f,r[8]=d,r[9]=g,r[10]=v,r[11]=y,r[12]=s*n+c*i+d*a+t[12],r[13]=o*n+u*i+g*a+t[13],r[14]=A*n+h*i+v*a+t[14],r[15]=l*n+f*i+y*a+t[15]),r}function Jn(r,t,e){var n=e[0],i=e[1],a=e[2];return r[0]=t[0]*n,r[1]=t[1]*n,r[2]=t[2]*n,r[3]=t[3]*n,r[4]=t[4]*i,r[5]=t[5]*i,r[6]=t[6]*i,r[7]=t[7]*i,r[8]=t[8]*a,r[9]=t[9]*a,r[10]=t[10]*a,r[11]=t[11]*a,r[12]=t[12],r[13]=t[13],r[14]=t[14],r[15]=t[15],r}function Qn(r,t,e,n){var i=n[0],a=n[1],s=n[2],o=Math.sqrt(i*i+a*a+s*s),A,l,c,u,h,f,d,g,v,y,E,C,I,R,K,W,V,J,et,at,ct,pt,wt,Ct;return o<Z?null:(o=1/o,i*=o,a*=o,s*=o,A=Math.sin(e),l=Math.cos(e),c=1-l,u=t[0],h=t[1],f=t[2],d=t[3],g=t[4],v=t[5],y=t[6],E=t[7],C=t[8],I=t[9],R=t[10],K=t[11],W=i*i*c+l,V=a*i*c+s*A,J=s*i*c-a*A,et=i*a*c-s*A,at=a*a*c+l,ct=s*a*c+i*A,pt=i*s*c+a*A,wt=a*s*c-i*A,Ct=s*s*c+l,r[0]=u*W+g*V+C*J,r[1]=h*W+v*V+I*J,r[2]=f*W+y*V+R*J,r[3]=d*W+E*V+K*J,r[4]=u*et+g*at+C*ct,r[5]=h*et+v*at+I*ct,r[6]=f*et+y*at+R*ct,r[7]=d*et+E*at+K*ct,r[8]=u*pt+g*wt+C*Ct,r[9]=h*pt+v*wt+I*Ct,r[10]=f*pt+y*wt+R*Ct,r[11]=d*pt+E*wt+K*Ct,t!==r&&(r[12]=t[12],r[13]=t[13],r[14]=t[14],r[15]=t[15]),r)}function jn(r,t,e){var n=Math.sin(e),i=Math.cos(e),a=t[4],s=t[5],o=t[6],A=t[7],l=t[8],c=t[9],u=t[10],h=t[11];return t!==r&&(r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[3],r[12]=t[12],r[13]=t[13],r[14]=t[14],r[15]=t[15]),r[4]=a*i+l*n,r[5]=s*i+c*n,r[6]=o*i+u*n,r[7]=A*i+h*n,r[8]=l*i-a*n,r[9]=c*i-s*n,r[10]=u*i-o*n,r[11]=h*i-A*n,r}function qn(r,t,e){var n=Math.sin(e),i=Math.cos(e),a=t[0],s=t[1],o=t[2],A=t[3],l=t[8],c=t[9],u=t[10],h=t[11];return t!==r&&(r[4]=t[4],r[5]=t[5],r[6]=t[6],r[7]=t[7],r[12]=t[12],r[13]=t[13],r[14]=t[14],r[15]=t[15]),r[0]=a*i-l*n,r[1]=s*i-c*n,r[2]=o*i-u*n,r[3]=A*i-h*n,r[8]=a*n+l*i,r[9]=s*n+c*i,r[10]=o*n+u*i,r[11]=A*n+h*i,r}function Qr(r,t,e){var n=Math.sin(e),i=Math.cos(e),a=t[0],s=t[1],o=t[2],A=t[3],l=t[4],c=t[5],u=t[6],h=t[7];return t!==r&&(r[8]=t[8],r[9]=t[9],r[10]=t[10],r[11]=t[11],r[12]=t[12],r[13]=t[13],r[14]=t[14],r[15]=t[15]),r[0]=a*i+l*n,r[1]=s*i+c*n,r[2]=o*i+u*n,r[3]=A*i+h*n,r[4]=l*i-a*n,r[5]=c*i-s*n,r[6]=u*i-o*n,r[7]=h*i-A*n,r}function Fr(r,t){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=t[0],r[13]=t[1],r[14]=t[2],r[15]=1,r}function Rn(r,t){return r[0]=t[0],r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=t[1],r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=t[2],r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function Xi(r,t,e){var n=e[0],i=e[1],a=e[2],s=Math.sqrt(n*n+i*i+a*a),o,A,l;return s<Z?null:(s=1/s,n*=s,i*=s,a*=s,o=Math.sin(t),A=Math.cos(t),l=1-A,r[0]=n*n*l+A,r[1]=i*n*l+a*o,r[2]=a*n*l-i*o,r[3]=0,r[4]=n*i*l-a*o,r[5]=i*i*l+A,r[6]=a*i*l+n*o,r[7]=0,r[8]=n*a*l+i*o,r[9]=i*a*l-n*o,r[10]=a*a*l+A,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r)}function Ji(r,t){var e=Math.sin(t),n=Math.cos(t);return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=n,r[6]=e,r[7]=0,r[8]=0,r[9]=-e,r[10]=n,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function dn(r,t){var e=Math.sin(t),n=Math.cos(t);return r[0]=n,r[1]=0,r[2]=-e,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=e,r[9]=0,r[10]=n,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function wr(r,t){var e=Math.sin(t),n=Math.cos(t);return r[0]=n,r[1]=e,r[2]=0,r[3]=0,r[4]=-e,r[5]=n,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function $r(r,t,e){var n=t[0],i=t[1],a=t[2],s=t[3],o=n+n,A=i+i,l=a+a,c=n*o,u=n*A,h=n*l,f=i*A,d=i*l,g=a*l,v=s*o,y=s*A,E=s*l;return r[0]=1-(f+g),r[1]=u+E,r[2]=h-y,r[3]=0,r[4]=u-E,r[5]=1-(c+g),r[6]=d+v,r[7]=0,r[8]=h+y,r[9]=d-v,r[10]=1-(c+f),r[11]=0,r[12]=e[0],r[13]=e[1],r[14]=e[2],r[15]=1,r}function ti(r,t){var e=new tt(3),n=-t[0],i=-t[1],a=-t[2],s=t[3],o=t[4],A=t[5],l=t[6],c=t[7],u=n*n+i*i+a*a+s*s;return u>0?(e[0]=(o*s+c*n+A*a-l*i)*2/u,e[1]=(A*s+c*i+l*n-o*a)*2/u,e[2]=(l*s+c*a+o*i-A*n)*2/u):(e[0]=(o*s+c*n+A*a-l*i)*2,e[1]=(A*s+c*i+l*n-o*a)*2,e[2]=(l*s+c*a+o*i-A*n)*2),$r(r,t,e),r}function _n(r,t){return r[0]=t[12],r[1]=t[13],r[2]=t[14],r}function ks(r,t){var e=t[0],n=t[1],i=t[2],a=t[4],s=t[5],o=t[6],A=t[8],l=t[9],c=t[10];return r[0]=Math.sqrt(e*e+n*n+i*i),r[1]=Math.sqrt(a*a+s*s+o*o),r[2]=Math.sqrt(A*A+l*l+c*c),r}function Wo(r,t){var e=new tt(3);ks(e,t);var n=1/e[0],i=1/e[1],a=1/e[2],s=t[0]*n,o=t[1]*i,A=t[2]*a,l=t[4]*n,c=t[5]*i,u=t[6]*a,h=t[8]*n,f=t[9]*i,d=t[10]*a,g=s+c+d,v=0;return g>0?(v=Math.sqrt(g+1)*2,r[3]=.25*v,r[0]=(u-f)/v,r[1]=(h-A)/v,r[2]=(o-l)/v):s>c&&s>d?(v=Math.sqrt(1+s-c-d)*2,r[3]=(u-f)/v,r[0]=.25*v,r[1]=(o+l)/v,r[2]=(h+A)/v):c>d?(v=Math.sqrt(1+c-s-d)*2,r[3]=(h-A)/v,r[0]=(o+l)/v,r[1]=.25*v,r[2]=(u+f)/v):(v=Math.sqrt(1+d-s-c)*2,r[3]=(o-l)/v,r[0]=(h+A)/v,r[1]=(u+f)/v,r[2]=.25*v),r}function nu(r,t,e,n){t[0]=n[12],t[1]=n[13],t[2]=n[14];var i=n[0],a=n[1],s=n[2],o=n[4],A=n[5],l=n[6],c=n[8],u=n[9],h=n[10];e[0]=Math.sqrt(i*i+a*a+s*s),e[1]=Math.sqrt(o*o+A*A+l*l),e[2]=Math.sqrt(c*c+u*u+h*h);var f=1/e[0],d=1/e[1],g=1/e[2],v=i*f,y=a*d,E=s*g,C=o*f,I=A*d,R=l*g,K=c*f,W=u*d,V=h*g,J=v+I+V,et=0;return J>0?(et=Math.sqrt(J+1)*2,r[3]=.25*et,r[0]=(R-W)/et,r[1]=(K-E)/et,r[2]=(y-C)/et):v>I&&v>V?(et=Math.sqrt(1+v-I-V)*2,r[3]=(R-W)/et,r[0]=.25*et,r[1]=(y+C)/et,r[2]=(K+E)/et):I>V?(et=Math.sqrt(1+I-v-V)*2,r[3]=(K-E)/et,r[0]=(y+C)/et,r[1]=.25*et,r[2]=(R+W)/et):(et=Math.sqrt(1+V-v-I)*2,r[3]=(y-C)/et,r[0]=(K+E)/et,r[1]=(R+W)/et,r[2]=.25*et),r}function co(r,t,e,n){var i=t[0],a=t[1],s=t[2],o=t[3],A=i+i,l=a+a,c=s+s,u=i*A,h=i*l,f=i*c,d=a*l,g=a*c,v=s*c,y=o*A,E=o*l,C=o*c,I=n[0],R=n[1],K=n[2];return r[0]=(1-(d+v))*I,r[1]=(h+C)*I,r[2]=(f-E)*I,r[3]=0,r[4]=(h-C)*R,r[5]=(1-(u+v))*R,r[6]=(g+y)*R,r[7]=0,r[8]=(f+E)*K,r[9]=(g-y)*K,r[10]=(1-(u+d))*K,r[11]=0,r[12]=e[0],r[13]=e[1],r[14]=e[2],r[15]=1,r}function uo(r,t,e,n,i){var a=t[0],s=t[1],o=t[2],A=t[3],l=a+a,c=s+s,u=o+o,h=a*l,f=a*c,d=a*u,g=s*c,v=s*u,y=o*u,E=A*l,C=A*c,I=A*u,R=n[0],K=n[1],W=n[2],V=i[0],J=i[1],et=i[2],at=(1-(g+y))*R,ct=(f+I)*R,pt=(d-C)*R,wt=(f-I)*K,Ct=(1-(h+y))*K,Ht=(v+E)*K,Rt=(d+C)*W,St=(v-E)*W,Ot=(1-(h+g))*W;return r[0]=at,r[1]=ct,r[2]=pt,r[3]=0,r[4]=wt,r[5]=Ct,r[6]=Ht,r[7]=0,r[8]=Rt,r[9]=St,r[10]=Ot,r[11]=0,r[12]=e[0]+V-(at*V+wt*J+Rt*et),r[13]=e[1]+J-(ct*V+Ct*J+St*et),r[14]=e[2]+et-(pt*V+Ht*J+Ot*et),r[15]=1,r}function DA(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=e+e,o=n+n,A=i+i,l=e*s,c=n*s,u=n*o,h=i*s,f=i*o,d=i*A,g=a*s,v=a*o,y=a*A;return r[0]=1-u-d,r[1]=c+y,r[2]=h-v,r[3]=0,r[4]=c-y,r[5]=1-l-d,r[6]=f+g,r[7]=0,r[8]=h+v,r[9]=f-g,r[10]=1-l-u,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function ru(r,t,e,n,i,a,s){var o=1/(e-t),A=1/(i-n),l=1/(a-s);return r[0]=a*2*o,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=a*2*A,r[6]=0,r[7]=0,r[8]=(e+t)*o,r[9]=(i+n)*A,r[10]=(s+a)*l,r[11]=-1,r[12]=0,r[13]=0,r[14]=s*a*2*l,r[15]=0,r}function Gl(r,t,e,n,i){var a=1/Math.tan(t/2);if(r[0]=a/e,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=a,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=-1,r[12]=0,r[13]=0,r[15]=0,i!=null&&i!==1/0){var s=1/(n-i);r[10]=(i+n)*s,r[14]=2*i*n*s}else r[10]=-1,r[14]=-2*n;return r}var iu=Gl;function Kv(r,t,e,n,i){var a=1/Math.tan(t/2);if(r[0]=a/e,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=a,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=-1,r[12]=0,r[13]=0,r[15]=0,i!=null&&i!==1/0){var s=1/(n-i);r[10]=i*s,r[14]=i*n*s}else r[10]=-1,r[14]=-n;return r}function za(r,t,e,n){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),s=Math.tan(t.leftDegrees*Math.PI/180),o=Math.tan(t.rightDegrees*Math.PI/180),A=2/(s+o),l=2/(i+a);return r[0]=A,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=l,r[6]=0,r[7]=0,r[8]=-((s-o)*A*.5),r[9]=(i-a)*l*.5,r[10]=n/(e-n),r[11]=-1,r[12]=0,r[13]=0,r[14]=n*e/(e-n),r[15]=0,r}function au(r,t,e,n,i,a,s){var o=1/(t-e),A=1/(n-i),l=1/(a-s);return r[0]=-2*o,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=-2*A,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=2*l,r[11]=0,r[12]=(t+e)*o,r[13]=(i+n)*A,r[14]=(s+a)*l,r[15]=1,r}var su=au;function ou(r,t,e,n,i,a,s){var o=1/(t-e),A=1/(n-i),l=1/(a-s);return r[0]=-2*o,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=-2*A,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=l,r[11]=0,r[12]=(t+e)*o,r[13]=(i+n)*A,r[14]=a*l,r[15]=1,r}function zh(r,t,e,n){var i,a,s,o,A,l,c,u,h,f,d=t[0],g=t[1],v=t[2],y=n[0],E=n[1],C=n[2],I=e[0],R=e[1],K=e[2];return Math.abs(d-I)<Z&&Math.abs(g-R)<Z&&Math.abs(v-K)<Z?Ie(r):(c=d-I,u=g-R,h=v-K,f=1/Math.sqrt(c*c+u*u+h*h),c*=f,u*=f,h*=f,i=E*h-C*u,a=C*c-y*h,s=y*u-E*c,f=Math.sqrt(i*i+a*a+s*s),f?(f=1/f,i*=f,a*=f,s*=f):(i=0,a=0,s=0),o=u*s-h*a,A=h*i-c*s,l=c*a-u*i,f=Math.sqrt(o*o+A*A+l*l),f?(f=1/f,o*=f,A*=f,l*=f):(o=0,A=0,l=0),r[0]=i,r[1]=o,r[2]=c,r[3]=0,r[4]=a,r[5]=A,r[6]=u,r[7]=0,r[8]=s,r[9]=l,r[10]=h,r[11]=0,r[12]=-(i*d+a*g+s*v),r[13]=-(o*d+A*g+l*v),r[14]=-(c*d+u*g+h*v),r[15]=1,r)}function zv(r,t,e,n){var i=t[0],a=t[1],s=t[2],o=n[0],A=n[1],l=n[2],c=i-e[0],u=a-e[1],h=s-e[2],f=c*c+u*u+h*h;f>0&&(f=1/Math.sqrt(f),c*=f,u*=f,h*=f);var d=A*h-l*u,g=l*c-o*h,v=o*u-A*c;return f=d*d+g*g+v*v,f>0&&(f=1/Math.sqrt(f),d*=f,g*=f,v*=f),r[0]=d,r[1]=g,r[2]=v,r[3]=0,r[4]=u*v-h*g,r[5]=h*d-c*v,r[6]=c*g-u*d,r[7]=0,r[8]=c,r[9]=u,r[10]=h,r[11]=0,r[12]=i,r[13]=a,r[14]=s,r[15]=1,r}function Vv(r){return"mat4("+r[0]+", "+r[1]+", "+r[2]+", "+r[3]+", "+r[4]+", "+r[5]+", "+r[6]+", "+r[7]+", "+r[8]+", "+r[9]+", "+r[10]+", "+r[11]+", "+r[12]+", "+r[13]+", "+r[14]+", "+r[15]+")"}function Vh(r){return Math.sqrt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]+r[3]*r[3]+r[4]*r[4]+r[5]*r[5]+r[6]*r[6]+r[7]*r[7]+r[8]*r[8]+r[9]*r[9]+r[10]*r[10]+r[11]*r[11]+r[12]*r[12]+r[13]*r[13]+r[14]*r[14]+r[15]*r[15])}function Wh(r,t,e){return r[0]=t[0]+e[0],r[1]=t[1]+e[1],r[2]=t[2]+e[2],r[3]=t[3]+e[3],r[4]=t[4]+e[4],r[5]=t[5]+e[5],r[6]=t[6]+e[6],r[7]=t[7]+e[7],r[8]=t[8]+e[8],r[9]=t[9]+e[9],r[10]=t[10]+e[10],r[11]=t[11]+e[11],r[12]=t[12]+e[12],r[13]=t[13]+e[13],r[14]=t[14]+e[14],r[15]=t[15]+e[15],r}function Au(r,t,e){return r[0]=t[0]-e[0],r[1]=t[1]-e[1],r[2]=t[2]-e[2],r[3]=t[3]-e[3],r[4]=t[4]-e[4],r[5]=t[5]-e[5],r[6]=t[6]-e[6],r[7]=t[7]-e[7],r[8]=t[8]-e[8],r[9]=t[9]-e[9],r[10]=t[10]-e[10],r[11]=t[11]-e[11],r[12]=t[12]-e[12],r[13]=t[13]-e[13],r[14]=t[14]-e[14],r[15]=t[15]-e[15],r}function Wv(r,t,e){return r[0]=t[0]*e,r[1]=t[1]*e,r[2]=t[2]*e,r[3]=t[3]*e,r[4]=t[4]*e,r[5]=t[5]*e,r[6]=t[6]*e,r[7]=t[7]*e,r[8]=t[8]*e,r[9]=t[9]*e,r[10]=t[10]*e,r[11]=t[11]*e,r[12]=t[12]*e,r[13]=t[13]*e,r[14]=t[14]*e,r[15]=t[15]*e,r}function Zv(r,t,e,n){return r[0]=t[0]+e[0]*n,r[1]=t[1]+e[1]*n,r[2]=t[2]+e[2]*n,r[3]=t[3]+e[3]*n,r[4]=t[4]+e[4]*n,r[5]=t[5]+e[5]*n,r[6]=t[6]+e[6]*n,r[7]=t[7]+e[7]*n,r[8]=t[8]+e[8]*n,r[9]=t[9]+e[9]*n,r[10]=t[10]+e[10]*n,r[11]=t[11]+e[11]*n,r[12]=t[12]+e[12]*n,r[13]=t[13]+e[13]*n,r[14]=t[14]+e[14]*n,r[15]=t[15]+e[15]*n,r}function zr(r,t){return r[0]===t[0]&&r[1]===t[1]&&r[2]===t[2]&&r[3]===t[3]&&r[4]===t[4]&&r[5]===t[5]&&r[6]===t[6]&&r[7]===t[7]&&r[8]===t[8]&&r[9]===t[9]&&r[10]===t[10]&&r[11]===t[11]&&r[12]===t[12]&&r[13]===t[13]&&r[14]===t[14]&&r[15]===t[15]}function jv(r,t){var e=r[0],n=r[1],i=r[2],a=r[3],s=r[4],o=r[5],A=r[6],l=r[7],c=r[8],u=r[9],h=r[10],f=r[11],d=r[12],g=r[13],v=r[14],y=r[15],E=t[0],C=t[1],I=t[2],R=t[3],K=t[4],W=t[5],V=t[6],J=t[7],et=t[8],at=t[9],ct=t[10],pt=t[11],wt=t[12],Ct=t[13],Ht=t[14],Rt=t[15];return Math.abs(e-E)<=Z*Math.max(1,Math.abs(e),Math.abs(E))&&Math.abs(n-C)<=Z*Math.max(1,Math.abs(n),Math.abs(C))&&Math.abs(i-I)<=Z*Math.max(1,Math.abs(i),Math.abs(I))&&Math.abs(a-R)<=Z*Math.max(1,Math.abs(a),Math.abs(R))&&Math.abs(s-K)<=Z*Math.max(1,Math.abs(s),Math.abs(K))&&Math.abs(o-W)<=Z*Math.max(1,Math.abs(o),Math.abs(W))&&Math.abs(A-V)<=Z*Math.max(1,Math.abs(A),Math.abs(V))&&Math.abs(l-J)<=Z*Math.max(1,Math.abs(l),Math.abs(J))&&Math.abs(c-et)<=Z*Math.max(1,Math.abs(c),Math.abs(et))&&Math.abs(u-at)<=Z*Math.max(1,Math.abs(u),Math.abs(at))&&Math.abs(h-ct)<=Z*Math.max(1,Math.abs(h),Math.abs(ct))&&Math.abs(f-pt)<=Z*Math.max(1,Math.abs(f),Math.abs(pt))&&Math.abs(d-wt)<=Z*Math.max(1,Math.abs(d),Math.abs(wt))&&Math.abs(g-Ct)<=Z*Math.max(1,Math.abs(g),Math.abs(Ct))&&Math.abs(v-Ht)<=Z*Math.max(1,Math.abs(v),Math.abs(Ht))&&Math.abs(y-Rt)<=Z*Math.max(1,Math.abs(y),Math.abs(Rt))}var ho=de,Yv=Au;function Zh(){var r=new tt(9);return tt!=Float32Array&&(r[1]=0,r[2]=0,r[3]=0,r[5]=0,r[6]=0,r[7]=0),r[0]=1,r[4]=1,r[8]=1,r}function Xv(r,t){return r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[4],r[4]=t[5],r[5]=t[6],r[6]=t[8],r[7]=t[9],r[8]=t[10],r}function z1(r){var t=new glMatrix.ARRAY_TYPE(9);return t[0]=r[0],t[1]=r[1],t[2]=r[2],t[3]=r[3],t[4]=r[4],t[5]=r[5],t[6]=r[6],t[7]=r[7],t[8]=r[8],t}function lu(r,t){return r[0]=t[0],r[1]=t[1],r[2]=t[2],r[3]=t[3],r[4]=t[4],r[5]=t[5],r[6]=t[6],r[7]=t[7],r[8]=t[8],r}function Kl(r,t,e,n,i,a,s,o,A){var l=new tt(9);return l[0]=r,l[1]=t,l[2]=e,l[3]=n,l[4]=i,l[5]=a,l[6]=s,l[7]=o,l[8]=A,l}function Jv(r,t,e,n,i,a,s,o,A,l){return r[0]=t,r[1]=e,r[2]=n,r[3]=i,r[4]=a,r[5]=s,r[6]=o,r[7]=A,r[8]=l,r}function V1(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=1,r[5]=0,r[6]=0,r[7]=0,r[8]=1,r}function fo(r,t){if(r===t){var e=t[1],n=t[2],i=t[5];r[1]=t[3],r[2]=t[6],r[3]=e,r[5]=t[7],r[6]=n,r[7]=i}else r[0]=t[0],r[1]=t[3],r[2]=t[6],r[3]=t[1],r[4]=t[4],r[5]=t[7],r[6]=t[2],r[7]=t[5],r[8]=t[8];return r}function cu(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=t[4],o=t[5],A=t[6],l=t[7],c=t[8],u=c*s-o*l,h=-c*a+o*A,f=l*a-s*A,d=e*u+n*h+i*f;return d?(d=1/d,r[0]=u*d,r[1]=(-c*n+i*l)*d,r[2]=(o*n-i*s)*d,r[3]=h*d,r[4]=(c*e-i*A)*d,r[5]=(-o*e+i*a)*d,r[6]=f*d,r[7]=(-l*e+n*A)*d,r[8]=(s*e-n*a)*d,r):null}function jh(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=t[4],o=t[5],A=t[6],l=t[7],c=t[8];return r[0]=s*c-o*l,r[1]=i*l-n*c,r[2]=n*o-i*s,r[3]=o*A-a*c,r[4]=e*c-i*A,r[5]=i*a-e*o,r[6]=a*l-s*A,r[7]=n*A-e*l,r[8]=e*s-n*a,r}function W1(r){var t=r[0],e=r[1],n=r[2],i=r[3],a=r[4],s=r[5],o=r[6],A=r[7],l=r[8];return t*(l*a-s*A)+e*(-l*i+s*o)+n*(A*i-a*o)}function Z1(r,t,e){var n=t[0],i=t[1],a=t[2],s=t[3],o=t[4],A=t[5],l=t[6],c=t[7],u=t[8],h=e[0],f=e[1],d=e[2],g=e[3],v=e[4],y=e[5],E=e[6],C=e[7],I=e[8];return r[0]=h*n+f*s+d*l,r[1]=h*i+f*o+d*c,r[2]=h*a+f*A+d*u,r[3]=g*n+v*s+y*l,r[4]=g*i+v*o+y*c,r[5]=g*a+v*A+y*u,r[6]=E*n+C*s+I*l,r[7]=E*i+C*o+I*c,r[8]=E*a+C*A+I*u,r}function j1(r,t,e){var n=t[0],i=t[1],a=t[2],s=t[3],o=t[4],A=t[5],l=t[6],c=t[7],u=t[8],h=e[0],f=e[1];return r[0]=n,r[1]=i,r[2]=a,r[3]=s,r[4]=o,r[5]=A,r[6]=h*n+f*s+l,r[7]=h*i+f*o+c,r[8]=h*a+f*A+u,r}function Y1(r,t,e){var n=t[0],i=t[1],a=t[2],s=t[3],o=t[4],A=t[5],l=t[6],c=t[7],u=t[8],h=Math.sin(e),f=Math.cos(e);return r[0]=f*n+h*s,r[1]=f*i+h*o,r[2]=f*a+h*A,r[3]=f*s-h*n,r[4]=f*o-h*i,r[5]=f*A-h*a,r[6]=l,r[7]=c,r[8]=u,r}function X1(r,t,e){var n=e[0],i=e[1];return r[0]=n*t[0],r[1]=n*t[1],r[2]=n*t[2],r[3]=i*t[3],r[4]=i*t[4],r[5]=i*t[5],r[6]=t[6],r[7]=t[7],r[8]=t[8],r}function J1(r,t){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=1,r[5]=0,r[6]=t[0],r[7]=t[1],r[8]=1,r}function q1(r,t){var e=Math.sin(t),n=Math.cos(t);return r[0]=n,r[1]=e,r[2]=0,r[3]=-e,r[4]=n,r[5]=0,r[6]=0,r[7]=0,r[8]=1,r}function $1(r,t){return r[0]=t[0],r[1]=0,r[2]=0,r[3]=0,r[4]=t[1],r[5]=0,r[6]=0,r[7]=0,r[8]=1,r}function tw(r,t){return r[0]=t[0],r[1]=t[1],r[2]=0,r[3]=t[2],r[4]=t[3],r[5]=0,r[6]=t[4],r[7]=t[5],r[8]=1,r}function ew(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=e+e,o=n+n,A=i+i,l=e*s,c=n*s,u=n*o,h=i*s,f=i*o,d=i*A,g=a*s,v=a*o,y=a*A;return r[0]=1-u-d,r[3]=c-y,r[6]=h+v,r[1]=c+y,r[4]=1-l-d,r[7]=f-g,r[2]=h-v,r[5]=f+g,r[8]=1-l-u,r}function nw(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=t[4],o=t[5],A=t[6],l=t[7],c=t[8],u=t[9],h=t[10],f=t[11],d=t[12],g=t[13],v=t[14],y=t[15],E=e*o-n*s,C=e*A-i*s,I=e*l-a*s,R=n*A-i*o,K=n*l-a*o,W=i*l-a*A,V=c*g-u*d,J=c*v-h*d,et=c*y-f*d,at=u*v-h*g,ct=u*y-f*g,pt=h*y-f*v,wt=E*pt-C*ct+I*at+R*et-K*J+W*V;return wt?(wt=1/wt,r[0]=(o*pt-A*ct+l*at)*wt,r[1]=(A*et-s*pt-l*J)*wt,r[2]=(s*ct-o*et+l*V)*wt,r[3]=(i*ct-n*pt-a*at)*wt,r[4]=(e*pt-i*et+a*J)*wt,r[5]=(n*et-e*ct-a*V)*wt,r[6]=(g*W-v*K+y*R)*wt,r[7]=(v*I-d*W-y*C)*wt,r[8]=(d*K-g*I+y*E)*wt,r):null}function rw(r,t,e){return r[0]=2/t,r[1]=0,r[2]=0,r[3]=0,r[4]=-2/e,r[5]=0,r[6]=-1,r[7]=1,r[8]=1,r}function uu(r){return"mat3("+r[0]+", "+r[1]+", "+r[2]+", "+r[3]+", "+r[4]+", "+r[5]+", "+r[6]+", "+r[7]+", "+r[8]+")"}function iw(r){return Math.sqrt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]+r[3]*r[3]+r[4]*r[4]+r[5]*r[5]+r[6]*r[6]+r[7]*r[7]+r[8]*r[8])}function aw(r,t,e){return r[0]=t[0]+e[0],r[1]=t[1]+e[1],r[2]=t[2]+e[2],r[3]=t[3]+e[3],r[4]=t[4]+e[4],r[5]=t[5]+e[5],r[6]=t[6]+e[6],r[7]=t[7]+e[7],r[8]=t[8]+e[8],r}function sw(r,t,e){return r[0]=t[0]-e[0],r[1]=t[1]-e[1],r[2]=t[2]-e[2],r[3]=t[3]-e[3],r[4]=t[4]-e[4],r[5]=t[5]-e[5],r[6]=t[6]-e[6],r[7]=t[7]-e[7],r[8]=t[8]-e[8],r}function ow(r,t,e){return r[0]=t[0]*e,r[1]=t[1]*e,r[2]=t[2]*e,r[3]=t[3]*e,r[4]=t[4]*e,r[5]=t[5]*e,r[6]=t[6]*e,r[7]=t[7]*e,r[8]=t[8]*e,r}function Aw(r,t,e,n){return r[0]=t[0]+e[0]*n,r[1]=t[1]+e[1]*n,r[2]=t[2]+e[2]*n,r[3]=t[3]+e[3]*n,r[4]=t[4]+e[4]*n,r[5]=t[5]+e[5]*n,r[6]=t[6]+e[6]*n,r[7]=t[7]+e[7]*n,r[8]=t[8]+e[8]*n,r}function lw(r,t){return r[0]===t[0]&&r[1]===t[1]&&r[2]===t[2]&&r[3]===t[3]&&r[4]===t[4]&&r[5]===t[5]&&r[6]===t[6]&&r[7]===t[7]&&r[8]===t[8]}function cw(r,t){var e=r[0],n=r[1],i=r[2],a=r[3],s=r[4],o=r[5],A=r[6],l=r[7],c=r[8],u=t[0],h=t[1],f=t[2],d=t[3],g=t[4],v=t[5],y=t[6],E=t[7],C=t[8];return Math.abs(e-u)<=glMatrix.EPSILON*Math.max(1,Math.abs(e),Math.abs(u))&&Math.abs(n-h)<=glMatrix.EPSILON*Math.max(1,Math.abs(n),Math.abs(h))&&Math.abs(i-f)<=glMatrix.EPSILON*Math.max(1,Math.abs(i),Math.abs(f))&&Math.abs(a-d)<=glMatrix.EPSILON*Math.max(1,Math.abs(a),Math.abs(d))&&Math.abs(s-g)<=glMatrix.EPSILON*Math.max(1,Math.abs(s),Math.abs(g))&&Math.abs(o-v)<=glMatrix.EPSILON*Math.max(1,Math.abs(o),Math.abs(v))&&Math.abs(A-y)<=glMatrix.EPSILON*Math.max(1,Math.abs(A),Math.abs(y))&&Math.abs(l-E)<=glMatrix.EPSILON*Math.max(1,Math.abs(l),Math.abs(E))&&Math.abs(c-C)<=glMatrix.EPSILON*Math.max(1,Math.abs(c),Math.abs(C))}var uw=null,Yh=null;function Er(){var r=new tt(4);return tt!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r[3]=1,r}function qv(r){return r[0]=0,r[1]=0,r[2]=0,r[3]=1,r}function sa(r,t,e){e=e*.5;var n=Math.sin(e);return r[0]=n*t[0],r[1]=n*t[1],r[2]=n*t[2],r[3]=Math.cos(e),r}function RA(r,t){var e=Math.acos(t[3])*2,n=Math.sin(e/2);return n>glMatrix.EPSILON?(r[0]=t[0]/n,r[1]=t[1]/n,r[2]=t[2]/n):(r[0]=1,r[1]=0,r[2]=0),e}function $n(r,t){var e=Ps(r,t);return Math.acos(2*e*e-1)}function Qs(r,t,e){var n=t[0],i=t[1],a=t[2],s=t[3],o=e[0],A=e[1],l=e[2],c=e[3];return r[0]=n*c+s*o+i*l-a*A,r[1]=i*c+s*A+a*o-n*l,r[2]=a*c+s*l+n*A-i*o,r[3]=s*c-n*o-i*A-a*l,r}function Xh(r,t,e){e*=.5;var n=t[0],i=t[1],a=t[2],s=t[3],o=Math.sin(e),A=Math.cos(e);return r[0]=n*A+s*o,r[1]=i*A+a*o,r[2]=a*A-i*o,r[3]=s*A-n*o,r}function $v(r,t,e){e*=.5;var n=t[0],i=t[1],a=t[2],s=t[3],o=Math.sin(e),A=Math.cos(e);return r[0]=n*A-a*o,r[1]=i*A+s*o,r[2]=a*A+n*o,r[3]=s*A-i*o,r}function _A(r,t,e){e*=.5;var n=t[0],i=t[1],a=t[2],s=t[3],o=Math.sin(e),A=Math.cos(e);return r[0]=n*A+i*o,r[1]=i*A-n*o,r[2]=a*A+s*o,r[3]=s*A-a*o,r}function os(r,t){var e=t[0],n=t[1],i=t[2];return r[0]=e,r[1]=n,r[2]=i,r[3]=Math.sqrt(Math.abs(1-e*e-n*n-i*i)),r}function t0(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=Math.sqrt(e*e+n*n+i*i),o=Math.exp(a),A=s>0?o*Math.sin(s)/s:0;return r[0]=e*A,r[1]=n*A,r[2]=i*A,r[3]=o*Math.cos(s),r}function Us(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=Math.sqrt(e*e+n*n+i*i),o=s>0?Math.atan2(s,a)/s:0;return r[0]=e*o,r[1]=n*o,r[2]=i*o,r[3]=.5*Math.log(e*e+n*n+i*i+a*a),r}function Ur(r,t,e){return Us(r,t),oa(r,r,e),t0(r,r),r}function zl(r,t,e,n){var i=t[0],a=t[1],s=t[2],o=t[3],A=e[0],l=e[1],c=e[2],u=e[3],h,f,d,g,v;return f=i*A+a*l+s*c+o*u,f<0&&(f=-f,A=-A,l=-l,c=-c,u=-u),1-f>Z?(h=Math.acos(f),d=Math.sin(h),g=Math.sin((1-n)*h)/d,v=Math.sin(n*h)/d):(g=1-n,v=n),r[0]=g*i+v*A,r[1]=g*a+v*l,r[2]=g*s+v*c,r[3]=g*o+v*u,r}function di(r){var t=glMatrix.RANDOM(),e=glMatrix.RANDOM(),n=glMatrix.RANDOM(),i=Math.sqrt(1-t),a=Math.sqrt(t);return r[0]=i*Math.sin(2*Math.PI*e),r[1]=i*Math.cos(2*Math.PI*e),r[2]=a*Math.sin(2*Math.PI*n),r[3]=a*Math.cos(2*Math.PI*n),r}function HA(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=e*e+n*n+i*i+a*a,o=s?1/s:0;return r[0]=-e*o,r[1]=-n*o,r[2]=-i*o,r[3]=a*o,r}function go(r,t){return r[0]=-t[0],r[1]=-t[1],r[2]=-t[2],r[3]=t[3],r}function GA(r,t){var e=t[0]+t[4]+t[8],n;if(e>0)n=Math.sqrt(e+1),r[3]=.5*n,n=.5/n,r[0]=(t[5]-t[7])*n,r[1]=(t[6]-t[2])*n,r[2]=(t[1]-t[3])*n;else{var i=0;t[4]>t[0]&&(i=1),t[8]>t[i*3+i]&&(i=2);var a=(i+1)%3,s=(i+2)%3;n=Math.sqrt(t[i*3+i]-t[a*3+a]-t[s*3+s]+1),r[i]=.5*n,n=.5/n,r[3]=(t[a*3+s]-t[s*3+a])*n,r[a]=(t[a*3+i]+t[i*3+a])*n,r[s]=(t[s*3+i]+t[i*3+s])*n}return r}function Kn(r,t,e,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:lt,a=Math.PI/360;t*=a,n*=a,e*=a;var s=Math.sin(t),o=Math.cos(t),A=Math.sin(e),l=Math.cos(e),c=Math.sin(n),u=Math.cos(n);switch(i){case"xyz":r[0]=s*l*u+o*A*c,r[1]=o*A*u-s*l*c,r[2]=o*l*c+s*A*u,r[3]=o*l*u-s*A*c;break;case"xzy":r[0]=s*l*u-o*A*c,r[1]=o*A*u-s*l*c,r[2]=o*l*c+s*A*u,r[3]=o*l*u+s*A*c;break;case"yxz":r[0]=s*l*u+o*A*c,r[1]=o*A*u-s*l*c,r[2]=o*l*c-s*A*u,r[3]=o*l*u+s*A*c;break;case"yzx":r[0]=s*l*u+o*A*c,r[1]=o*A*u+s*l*c,r[2]=o*l*c-s*A*u,r[3]=o*l*u-s*A*c;break;case"zxy":r[0]=s*l*u-o*A*c,r[1]=o*A*u+s*l*c,r[2]=o*l*c+s*A*u,r[3]=o*l*u-s*A*c;break;case"zyx":r[0]=s*l*u-o*A*c,r[1]=o*A*u+s*l*c,r[2]=o*l*c-s*A*u,r[3]=o*l*u+s*A*c;break;default:throw new Error("Unknown angle order "+i)}return r}function e0(r){return"quat("+r[0]+", "+r[1]+", "+r[2]+", "+r[3]+")"}var n0=Ko,Jh=ji,KA=Yi,zA=lo,r0=Ka,hu=Qs,oa=Dl,Ps=q,vo=S,ei=Ea,po=null,i0=PA,a0=null,Zo=Hl,s0=dt;function hw(r,t){return Math.abs(vec4.dot(r,t))>=1-glMatrix.EPSILON}var Vl=function(){var r=xt(),t=Lt(1,0,0),e=Lt(0,1,0);return function(n,i,a){var s=_e(i,a);return s<-.999999?(Te(r,t,i),aa(r)<1e-6&&Te(r,e,i),xe(r,r),sa(n,r,Math.PI),n):s>.999999?(n[0]=0,n[1]=0,n[2]=0,n[3]=1,n):(Te(r,i,a),n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=1+s,Zo(n,n))}}(),Ds=function(){var r=Er(),t=Er();return function(e,n,i,a,s,o){return zl(r,n,s,o),zl(t,i,a,o),zl(e,r,t,2*o*(1-o)),e}}(),fw=function(){var r=Zh();return function(t,e,n,i){return r[0]=n[0],r[3]=n[1],r[6]=n[2],r[1]=i[0],r[4]=i[1],r[7]=i[2],r[2]=-e[0],r[5]=-e[1],r[8]=-e[2],Zo(t,GA(t,r))}}();function fu(){var r=new tt(2);return tt!=Float32Array&&(r[0]=0,r[1]=0),r}function du(r){var t=new glMatrix.ARRAY_TYPE(2);return t[0]=r[0],t[1]=r[1],t}function o0(r,t){var e=new glMatrix.ARRAY_TYPE(2);return e[0]=r,e[1]=t,e}function A0(r,t){return r[0]=t[0],r[1]=t[1],r}function l0(r,t,e){return r[0]=t,r[1]=e,r}function Va(r,t,e){return r[0]=t[0]+e[0],r[1]=t[1]+e[1],r}function c0(r,t,e){return r[0]=t[0]-e[0],r[1]=t[1]-e[1],r}function dw(r,t,e){return r[0]=t[0]*e[0],r[1]=t[1]*e[1],r}function gw(r,t,e){return r[0]=t[0]/e[0],r[1]=t[1]/e[1],r}function gu(r,t){return r[0]=Math.ceil(t[0]),r[1]=Math.ceil(t[1]),r}function vw(r,t){return r[0]=Math.floor(t[0]),r[1]=Math.floor(t[1]),r}function u0(r,t,e){return r[0]=Math.min(t[0],e[0]),r[1]=Math.min(t[1],e[1]),r}function h0(r,t,e){return r[0]=Math.max(t[0],e[0]),r[1]=Math.max(t[1],e[1]),r}function f0(r,t){return r[0]=glMatrix.round(t[0]),r[1]=glMatrix.round(t[1]),r}function d0(r,t,e){return r[0]=t[0]*e,r[1]=t[1]*e,r}function g0(r,t,e,n){return r[0]=t[0]+e[0]*n,r[1]=t[1]+e[1]*n,r}function v0(r,t){var e=t[0]-r[0],n=t[1]-r[1];return Math.sqrt(e*e+n*n)}function p0(r,t){var e=t[0]-r[0],n=t[1]-r[1];return e*e+n*n}function m0(r){var t=r[0],e=r[1];return Math.sqrt(t*t+e*e)}function pw(r){var t=r[0],e=r[1];return t*t+e*e}function vu(r,t){return r[0]=-t[0],r[1]=-t[1],r}function mw(r,t){return r[0]=1/t[0],r[1]=1/t[1],r}function y0(r,t){var e=t[0],n=t[1],i=e*e+n*n;return i>0&&(i=1/Math.sqrt(i)),r[0]=t[0]*i,r[1]=t[1]*i,r}function pu(r,t){return r[0]*t[0]+r[1]*t[1]}function yw(r,t,e){var n=t[0]*e[1]-t[1]*e[0];return r[0]=r[1]=0,r[2]=n,r}function w0(r,t,e,n){var i=t[0],a=t[1];return r[0]=i+n*(e[0]-i),r[1]=a+n*(e[1]-a),r}function ww(r,t){t=t===void 0?1:t;var e=glMatrix.RANDOM()*2*Math.PI;return r[0]=Math.cos(e)*t,r[1]=Math.sin(e)*t,r}function Ew(r,t,e){var n=t[0],i=t[1];return r[0]=e[0]*n+e[2]*i,r[1]=e[1]*n+e[3]*i,r}function Bw(r,t,e){var n=t[0],i=t[1];return r[0]=e[0]*n+e[2]*i+e[4],r[1]=e[1]*n+e[3]*i+e[5],r}function bw(r,t,e){var n=t[0],i=t[1];return r[0]=e[0]*n+e[3]*i+e[6],r[1]=e[1]*n+e[4]*i+e[7],r}function xw(r,t,e){var n=t[0],i=t[1];return r[0]=e[0]*n+e[4]*i+e[12],r[1]=e[1]*n+e[5]*i+e[13],r}function VA(r,t,e,n){var i=t[0]-e[0],a=t[1]-e[1],s=Math.sin(n),o=Math.cos(n);return r[0]=i*o-a*s+e[0],r[1]=i*s+a*o+e[1],r}function Cw(r,t){var e=r[0],n=r[1],i=t[0],a=t[1];return Math.abs(Math.atan2(n*i-e*a,e*i+n*a))}function Sw(r,t){var e=r[0],n=r[1],i=t[0],a=t[1];return Math.atan2(e*a-n*i,e*i+n*a)}function mu(r){return r[0]=0,r[1]=0,r}function Mw(r){return"vec2("+r[0]+", "+r[1]+")"}function E0(r,t){return r[0]===t[0]&&r[1]===t[1]}function Tw(r,t){var e=r[0],n=r[1],i=t[0],a=t[1];return Math.abs(e-i)<=glMatrix.EPSILON*Math.max(1,Math.abs(e),Math.abs(i))&&Math.abs(n-a)<=glMatrix.EPSILON*Math.max(1,Math.abs(n),Math.abs(a))}var Fw=null,yu=null,Ow=null,Iw=null,Lw=null,Nw=null,wu=null,kw=function(){var r=fu();return function(t,e,n,i,a,s){var o,A;for(e||(e=2),n||(n=0),i?A=Math.min(i*e+n,t.length):A=t.length,o=n;o<A;o+=e)r[0]=t[o],r[1]=t[o+1],a(r,r,s),t[o]=r[0],t[o+1]=r[1];return t}}();function we(r){return typeof r=="number"}function Li(r,t){return Math.sqrt((r[0]-t[0])*(r[0]-t[0])+(r[1]-t[1])*(r[1]-t[1]))}function Pe(r){return r==null}function gn(r){return typeof r=="string"}var B0=function(r,t,e){return r<t?t:r>e?e:r},hr=B0,j=M(80813),WA={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0};function qh(r){return Array.isArray(r)&&r.every(function(t){var e=t[0].toLowerCase();return WA[e]===t.length-1&&"achlmqstvz".includes(e)})}function $h(r){return qh(r)&&r.every(function(t){var e=t[0];return e===e.toUpperCase()})}function tf(r){return $h(r)&&r.every(function(t){var e=t[0];return"ACLMQZ".includes(e)})}var ef={x1:0,y1:0,x2:0,y2:0,x:0,y:0,qx:null,qy:null};function nf(r){for(var t=r.pathValue[r.segmentStart],e=t.toLowerCase(),n=r.data;n.length>=WA[e]&&(e==="m"&&n.length>2?(r.segments.push([t].concat(n.splice(0,2))),e="l",t=t==="m"?"l":"L"):r.segments.push([t].concat(n.splice(0,WA[e]))),!!WA[e]););}function b0(r){var t=r.index,e=r.pathValue,n=e.charCodeAt(t);if(n===48){r.param=0,r.index+=1;return}if(n===49){r.param=1,r.index+=1;return}r.err='[path-util]: invalid Arc flag "'.concat(e[t],'", expecting 0 or 1 at index ').concat(t)}function Wl(r){return r>=48&&r<=57||r===43||r===45||r===46}function jo(r){return r>=48&&r<=57}function x0(r){var t=r.max,e=r.pathValue,n=r.index,i=n,a=!1,s=!1,o=!1,A=!1,l;if(i>=t){r.err="[path-util]: Invalid path value at index ".concat(i,', "pathValue" is missing param');return}if(l=e.charCodeAt(i),(l===43||l===45)&&(i+=1,l=e.charCodeAt(i)),!jo(l)&&l!==46){r.err="[path-util]: Invalid path value at index ".concat(i,', "').concat(e[i],'" is not a number');return}if(l!==46){if(a=l===48,i+=1,l=e.charCodeAt(i),a&&i<t&&l&&jo(l)){r.err="[path-util]: Invalid path value at index ".concat(n,', "').concat(e[n],'" illegal number');return}for(;i<t&&jo(e.charCodeAt(i));)i+=1,s=!0;l=e.charCodeAt(i)}if(l===46){for(A=!0,i+=1;jo(e.charCodeAt(i));)i+=1,o=!0;l=e.charCodeAt(i)}if(l===101||l===69){if(A&&!s&&!o){r.err="[path-util]: Invalid path value at index ".concat(i,', "').concat(e[i],'" invalid float exponent');return}if(i+=1,l=e.charCodeAt(i),(l===43||l===45)&&(i+=1),i<t&&jo(e.charCodeAt(i)))for(;i<t&&jo(e.charCodeAt(i));)i+=1;else{r.err="[path-util]: Invalid path value at index ".concat(i,', "').concat(e[i],'" invalid integer exponent');return}}r.index=i,r.param=+r.pathValue.slice(n,i)}function rf(r){var t=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];return r===10||r===13||r===8232||r===8233||r===32||r===9||r===11||r===12||r===160||r>=5760&&t.includes(r)}function Zl(r){for(var t=r.pathValue,e=r.max;r.index<e&&rf(t.charCodeAt(r.index));)r.index+=1}function C0(r){switch(r|32){case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:return!0;default:return!1}}function Eu(r){return(r|32)===97}function jl(r){var t=r.max,e=r.pathValue,n=r.index,i=e.charCodeAt(n),a=WA[e[n].toLowerCase()];if(r.segmentStart=n,!C0(i)){r.err='[path-util]: Invalid path value "'.concat(e[n],'" is not a path command');return}if(r.index+=1,Zl(r),r.data=[],!a){nf(r);return}for(;;){for(var s=a;s>0;s-=1){if(Eu(i)&&(s===3||s===4)?b0(r):x0(r),r.err.length)return;r.data.push(r.param),Zl(r),r.index<t&&e.charCodeAt(r.index)===44&&(r.index+=1,Zl(r))}if(r.index>=r.max||!Wl(e.charCodeAt(r.index)))break}nf(r)}var S0=function(){function r(t){this.pathValue=t,this.segments=[],this.max=t.length,this.index=0,this.param=0,this.segmentStart=0,this.data=[],this.err=""}return r}();function M0(r){if(qh(r))return[].concat(r);var t=new S0(r);for(Zl(t);t.index<t.max&&!t.err.length;)jl(t);return t.err?t.err:t.segments}function T0(r){if($h(r))return[].concat(r);var t=M0(r),e=0,n=0,i=0,a=0;return t.map(function(s){var o=s.slice(1).map(Number),A=s[0],l=A.toUpperCase();if(A==="M")return e=o[0],n=o[1],i=e,a=n,["M",e,n];var c;if(A!==l)switch(l){case"A":c=[l,o[0],o[1],o[2],o[3],o[4],o[5]+e,o[6]+n];break;case"V":c=[l,o[0]+n];break;case"H":c=[l,o[0]+e];break;default:{var u=o.map(function(f,d){return f+(d%2?n:e)});c=[l].concat(u)}}else c=[l].concat(o);var h=c.length;switch(l){case"Z":e=i,n=a;break;case"H":e=c[1];break;case"V":n=c[1];break;default:e=c[h-2],n=c[h-1],l==="M"&&(i=e,a=n)}return c})}function F0(r,t){var e=r[0],n=t.x1,i=t.y1,a=t.x2,s=t.y2,o=r.slice(1).map(Number),A=r;if("TQ".includes(e)||(t.qx=null,t.qy=null),e==="H")A=["L",r[1],i];else if(e==="V")A=["L",n,r[1]];else if(e==="S"){var l=n*2-a,c=i*2-s;t.x1=l,t.y1=c,A=["C",l,c].concat(o)}else if(e==="T"){var u=n*2-t.qx,h=i*2-t.qy;t.qx=u,t.qy=h,A=["Q",u,h].concat(o)}else if(e==="Q"){var f=o[0],d=o[1];t.qx=f,t.qy=d}return A}function Yl(r){if(tf(r))return[].concat(r);for(var t=T0(r),e=(0,j.pi)({},ef),n=0;n<t.length;n+=1){t[n]=F0(t[n],e);var i=t[n],a=i.length;e.x1=+i[a-2],e.y1=+i[a-1],e.x2=+i[a-4]||e.x1,e.y2=+i[a-3]||e.y1}return t}function Rs(r,t,e){var n=r[0],i=r[1],a=t[0],s=t[1];return[n+(a-n)*e,i+(s-i)*e]}function Yo(r,t,e,n,i){var a=Li([r,t],[e,n]),s={x:0,y:0};if(typeof i=="number")if(i<=0)s={x:r,y:t};else if(i>=a)s={x:e,y:n};else{var o=Rs([r,t],[e,n],i/a),A=o[0],l=o[1];s={x:A,y:l}}return{length:a,point:s,min:{x:Math.min(r,e),y:Math.min(t,n)},max:{x:Math.max(r,e),y:Math.max(t,n)}}}function af(r,t){var e=r.x,n=r.y,i=t.x,a=t.y,s=e*i+n*a,o=Math.sqrt((Math.pow(e,2)+Math.pow(n,2))*(Math.pow(i,2)+Math.pow(a,2))),A=e*a-n*i<0?-1:1,l=A*Math.acos(s/o);return l}function O0(r,t,e,n,i,a,s,o,A,l){var c=Math.abs,u=Math.sin,h=Math.cos,f=Math.sqrt,d=Math.PI,g=c(e),v=c(n),y=(i%360+360)%360,E=y*(d/180);if(r===o&&t===A)return{x:r,y:t};if(g===0||v===0)return Yo(r,t,o,A,l).point;var C=(r-o)/2,I=(t-A)/2,R={x:h(E)*C+u(E)*I,y:-u(E)*C+h(E)*I},K=Math.pow(R.x,2)/Math.pow(g,2)+Math.pow(R.y,2)/Math.pow(v,2);K>1&&(g*=f(K),v*=f(K));var W=Math.pow(g,2)*Math.pow(v,2)-Math.pow(g,2)*Math.pow(R.y,2)-Math.pow(v,2)*Math.pow(R.x,2),V=Math.pow(g,2)*Math.pow(R.y,2)+Math.pow(v,2)*Math.pow(R.x,2),J=W/V;J=J<0?0:J;var et=(a!==s?1:-1)*f(J),at={x:et*(g*R.y/v),y:et*(-(v*R.x)/g)},ct={x:h(E)*at.x-u(E)*at.y+(r+o)/2,y:u(E)*at.x+h(E)*at.y+(t+A)/2},pt={x:(R.x-at.x)/g,y:(R.y-at.y)/v},wt=af({x:1,y:0},pt),Ct={x:(-R.x-at.x)/g,y:(-R.y-at.y)/v},Ht=af(pt,Ct);!s&&Ht>0?Ht-=2*d:s&&Ht<0&&(Ht+=2*d),Ht%=2*d;var Rt=wt+Ht*l,St=g*h(Rt),Ot=v*u(Rt),Gt={x:h(E)*St-u(E)*Ot+ct.x,y:u(E)*St+h(E)*Ot+ct.y};return Gt}function I0(r,t,e,n,i,a,s,o,A,l,c){var u,h=c.bbox,f=h===void 0?!0:h,d=c.length,g=d===void 0?!0:d,v=c.sampleSize,y=v===void 0?30:v,E=typeof l=="number",C=r,I=t,R=0,K=[C,I,R],W=[C,I],V=0,J={x:0,y:0},et=[{x:C,y:I}];E&&l<=0&&(J={x:C,y:I});for(var at=0;at<=y;at+=1){if(V=at/y,u=O0(r,t,e,n,i,a,s,o,A,V),C=u.x,I=u.y,f&&et.push({x:C,y:I}),g&&(R+=Li(W,[C,I])),W=[C,I],E&&R>=l&&l>K[2]){var ct=(R-l)/(R-K[2]);J={x:W[0]*(1-ct)+K[0]*ct,y:W[1]*(1-ct)+K[1]*ct}}K=[C,I,R]}return E&&l>=R&&(J={x:o,y:A}),{length:R,point:J,min:{x:Math.min.apply(null,et.map(function(pt){return pt.x})),y:Math.min.apply(null,et.map(function(pt){return pt.y}))},max:{x:Math.max.apply(null,et.map(function(pt){return pt.x})),y:Math.max.apply(null,et.map(function(pt){return pt.y}))}}}function L0(r,t,e,n,i,a,s,o,A){var l=1-A;return{x:Math.pow(l,3)*r+3*Math.pow(l,2)*A*e+3*l*Math.pow(A,2)*i+Math.pow(A,3)*s,y:Math.pow(l,3)*t+3*Math.pow(l,2)*A*n+3*l*Math.pow(A,2)*a+Math.pow(A,3)*o}}function sf(r,t,e,n,i,a,s,o,A,l){var c,u=l.bbox,h=u===void 0?!0:u,f=l.length,d=f===void 0?!0:f,g=l.sampleSize,v=g===void 0?10:g,y=typeof A=="number",E=r,C=t,I=0,R=[E,C,I],K=[E,C],W=0,V={x:0,y:0},J=[{x:E,y:C}];y&&A<=0&&(V={x:E,y:C});for(var et=0;et<=v;et+=1){if(W=et/v,c=L0(r,t,e,n,i,a,s,o,W),E=c.x,C=c.y,h&&J.push({x:E,y:C}),d&&(I+=Li(K,[E,C])),K=[E,C],y&&I>=A&&A>R[2]){var at=(I-A)/(I-R[2]);V={x:K[0]*(1-at)+R[0]*at,y:K[1]*(1-at)+R[1]*at}}R=[E,C,I]}return y&&A>=I&&(V={x:s,y:o}),{length:I,point:V,min:{x:Math.min.apply(null,J.map(function(ct){return ct.x})),y:Math.min.apply(null,J.map(function(ct){return ct.y}))},max:{x:Math.max.apply(null,J.map(function(ct){return ct.x})),y:Math.max.apply(null,J.map(function(ct){return ct.y}))}}}function N0(r,t,e,n,i,a,s){var o=1-s;return{x:Math.pow(o,2)*r+2*o*s*e+Math.pow(s,2)*i,y:Math.pow(o,2)*t+2*o*s*n+Math.pow(s,2)*a}}function k0(r,t,e,n,i,a,s,o){var A,l=o.bbox,c=l===void 0?!0:l,u=o.length,h=u===void 0?!0:u,f=o.sampleSize,d=f===void 0?10:f,g=typeof s=="number",v=r,y=t,E=0,C=[v,y,E],I=[v,y],R=0,K={x:0,y:0},W=[{x:v,y}];g&&s<=0&&(K={x:v,y});for(var V=0;V<=d;V+=1){if(R=V/d,A=N0(r,t,e,n,i,a,R),v=A.x,y=A.y,c&&W.push({x:v,y}),h&&(E+=Li(I,[v,y])),I=[v,y],g&&E>=s&&s>C[2]){var J=(E-s)/(E-C[2]);K={x:I[0]*(1-J)+C[0]*J,y:I[1]*(1-J)+C[1]*J}}C=[v,y,E]}return g&&s>=E&&(K={x:i,y:a}),{length:E,point:K,min:{x:Math.min.apply(null,W.map(function(et){return et.x})),y:Math.min.apply(null,W.map(function(et){return et.y}))},max:{x:Math.max.apply(null,W.map(function(et){return et.x})),y:Math.max.apply(null,W.map(function(et){return et.y}))}}}function of(r,t,e){for(var n,i,a,s,o,A,l=Yl(r),c=typeof t=="number",u,h=[],f,d=0,g=0,v=0,y=0,E,C=[],I=[],R=0,K={x:0,y:0},W=K,V=K,J=K,et=0,at=0,ct=l.length;at<ct;at+=1)E=l[at],f=E[0],u=f==="M",h=u?h:[d,g].concat(E.slice(1)),u?(v=E[1],y=E[2],K={x:v,y},W=K,R=0,c&&t<.001&&(J=K)):f==="L"?(n=Yo(h[0],h[1],h[2],h[3],(t||0)-et),R=n.length,K=n.min,W=n.max,V=n.point):f==="A"?(i=I0(h[0],h[1],h[2],h[3],h[4],h[5],h[6],h[7],h[8],(t||0)-et,e||{}),R=i.length,K=i.min,W=i.max,V=i.point):f==="C"?(a=sf(h[0],h[1],h[2],h[3],h[4],h[5],h[6],h[7],(t||0)-et,e||{}),R=a.length,K=a.min,W=a.max,V=a.point):f==="Q"?(s=k0(h[0],h[1],h[2],h[3],h[4],h[5],(t||0)-et,e||{}),R=s.length,K=s.min,W=s.max,V=s.point):f==="Z"&&(h=[d,g,v,y],o=Yo(h[0],h[1],h[2],h[3],(t||0)-et),R=o.length,K=o.min,W=o.max,V=o.point),c&&et<t&&et+R>=t&&(J=V),I.push(W),C.push(K),et+=R,A=f!=="Z"?E.slice(-2):[v,y],d=A[0],g=A[1];return c&&t>=et&&(J={x:d,y:g}),{length:et,point:J,min:{x:Math.min.apply(null,C.map(function(pt){return pt.x})),y:Math.min.apply(null,C.map(function(pt){return pt.y}))},max:{x:Math.max.apply(null,I.map(function(pt){return pt.x})),y:Math.max.apply(null,I.map(function(pt){return pt.y}))}}}function Q0(r,t){return of(r,void 0,(0,j.pi)((0,j.pi)({},t),{bbox:!1,length:!0})).length}function Ni(r){return Array.isArray(r)}var Xl=function(r){if(Ni(r))return r.reduce(function(t,e){return Math.min(t,e)},r[0])};function Jl(r){if(!Array.isArray(r))return-1/0;var t=r.length;if(!t)return-1/0;for(var e=r[0],n=1;n<t;n++)e=Math.max(e,r[n]);return e}var Af=1e-5;function Xo(r,t,e){return e===void 0&&(e=Af),r===t||Math.abs(r-t)<e}var U0=function(r,t){return(r%t+t)%t},lf=U0;function ZA(r,t,e){if(r[e].length>7){r[e].shift();for(var n=r[e],i=e;n.length;)t[e]="A",r.splice(i+=1,0,["C"].concat(n.splice(0,6)));r.splice(e,1)}}function P0(r){return tf(r)&&r.every(function(t){var e=t[0];return"MC".includes(e)})}function ql(r,t,e){var n=r*Math.cos(e)-t*Math.sin(e),i=r*Math.sin(e)+t*Math.cos(e);return{x:n,y:i}}function $l(r,t,e,n,i,a,s,o,A,l){var c=r,u=t,h=e,f=n,d=o,g=A,v=Math.PI*120/180,y=Math.PI/180*(+i||0),E=[],C,I,R,K,W;if(l)I=l[0],R=l[1],K=l[2],W=l[3];else{C=ql(c,u,-y),c=C.x,u=C.y,C=ql(d,g,-y),d=C.x,g=C.y;var V=(c-d)/2,J=(u-g)/2,et=V*V/(h*h)+J*J/(f*f);et>1&&(et=Math.sqrt(et),h*=et,f*=et);var at=h*h,ct=f*f,pt=(a===s?-1:1)*Math.sqrt(Math.abs((at*ct-at*J*J-ct*V*V)/(at*J*J+ct*V*V)));K=pt*h*J/f+(c+d)/2,W=pt*-f*V/h+(u+g)/2,I=Math.asin(((u-W)/f*Math.pow(10,9)>>0)/Math.pow(10,9)),R=Math.asin(((g-W)/f*Math.pow(10,9)>>0)/Math.pow(10,9)),I=c<K?Math.PI-I:I,R=d<K?Math.PI-R:R,I<0&&(I=Math.PI*2+I),R<0&&(R=Math.PI*2+R),s&&I>R&&(I-=Math.PI*2),!s&&R>I&&(R-=Math.PI*2)}var wt=R-I;if(Math.abs(wt)>v){var Ct=R,Ht=d,Rt=g;R=I+v*(s&&R>I?1:-1),d=K+h*Math.cos(R),g=W+f*Math.sin(R),E=$l(d,g,h,f,i,0,s,Ht,Rt,[R,Ct,K,W])}wt=R-I;var St=Math.cos(I),Ot=Math.sin(I),Gt=Math.cos(R),qt=Math.sin(R),ae=Math.tan(wt/4),ue=4/3*h*ae,pe=4/3*f*ae,Ce=[c,u],Qe=[c+ue*Ot,u-pe*St],Re=[d+ue*qt,g-pe*Gt],nn=[d,g];if(Qe[0]=2*Ce[0]-Qe[0],Qe[1]=2*Ce[1]-Qe[1],l)return Qe.concat(Re,nn,E);E=Qe.concat(Re,nn,E);for(var mn=[],on=0,er=E.length;on<er;on+=1)mn[on]=on%2?ql(E[on-1],E[on],y).y:ql(E[on],E[on+1],y).x;return mn}function D0(r,t,e,n,i,a){var s=.3333333333333333,o=2/3;return[s*r+o*e,s*t+o*n,s*i+o*e,s*a+o*n,i,a]}var cf=function(r,t,e,n){var i=.5,a=Rs([r,t],[e,n],i);return(0,j.ev)((0,j.ev)([],a,!0),[e,n,e,n],!1)};function R0(r,t){var e=r[0],n=r.slice(1).map(Number),i=n[0],a=n[1],s,o=t.x1,A=t.y1,l=t.x,c=t.y;switch("TQ".includes(e)||(t.qx=null,t.qy=null),e){case"M":return t.x=i,t.y=a,r;case"A":return s=[o,A].concat(n),["C"].concat($l(s[0],s[1],s[2],s[3],s[4],s[5],s[6],s[7],s[8],s[9]));case"Q":return t.qx=i,t.qy=a,s=[o,A].concat(n),["C"].concat(D0(s[0],s[1],s[2],s[3],s[4],s[5]));case"L":return["C"].concat(cf(o,A,i,a));case"Z":return o===l&&A===c?["C",o,A,l,c,l,c]:["C"].concat(cf(o,A,l,c));default:}return r}function Bu(r,t){if(t===void 0&&(t=!1),P0(r)){var e=[].concat(r);return t?[e,[]]:e}for(var n=Yl(r),i=(0,j.pi)({},ef),a=[],s="",o=n.length,A,l,c=[],u=0;u<o;u+=1){n[u]&&(s=n[u][0]),a[u]=s;var h=R0(n[u],i);n[u]=h,ZA(n,a,u),o=n.length,s==="Z"&&c.push(u),A=n[u],l=A.length,i.x1=+A[l-2],i.y1=+A[l-1],i.x2=+A[l-4]||i.x1,i.y2=+A[l-3]||i.y1}return t?[n,c]:n}var _0=50;function H0(r,t){t===void 0&&(t=.5);var e=r.slice(0,2),n=r.slice(2,4),i=r.slice(4,6),a=r.slice(6,8),s=Rs(e,n,t),o=Rs(n,i,t),A=Rs(i,a,t),l=Rs(s,o,t),c=Rs(o,A,t),u=Rs(l,c,t);return[["C"].concat(s,l,u),["C"].concat(c,A,a)]}function uf(r){return r.map(function(t,e,n){var i=e&&n[e-1].slice(-2).concat(t.slice(1)),a=e?sf(i[0],i[1],i[2],i[3],i[4],i[5],i[6],i[7],i[8],{bbox:!1}).length:0,s;return e?s=a?H0(i):[t,t]:s=[t],{s:t,ss:s,l:a}})}function hf(r,t,e,n){if(n===void 0&&(n=0),n>_0)return console.warn("Maximum recursion depth reached in equalizeSegments"),[r,t];var i=uf(r),a=uf(t),s=i.length,o=a.length,A=i.filter(function(y){return y.l}).length,l=a.filter(function(y){return y.l}).length,c=i.filter(function(y){return y.l}).reduce(function(y,E){var C=E.l;return y+C},0)/A||0,u=a.filter(function(y){return y.l}).reduce(function(y,E){var C=E.l;return y+C},0)/l||0,h=e||Math.max(s,o),f=[c,u],d=[h-s,h-o],g=0,v=[i,a].map(function(y,E){return y.l===h?y.map(function(C){return C.s}):y.map(function(C,I){return g=I&&d[E]&&C.l>=f[E],d[E]-=g?1:0,g?C.ss:[C.s]}).flat()});return v[0].length===v[1].length?v:hf(v[0],v[1],h,n+1)}function Pr(r,t,e,n,i,a,s,o){return 3*((o-t)*(e+i)-(s-r)*(n+a)+n*(r-i)-e*(t-a)+o*(i+r/3)-s*(a+t/3))/20}function G0(r){var t=0,e=0,n=0;return Bu(r).map(function(i){var a;switch(i[0]){case"M":return t=i[1],e=i[2],0;default:var s=i.slice(1),o=s[0],A=s[1],l=s[2],c=s[3],u=s[4],h=s[5];return n=Pr(t,e,o,A,l,c,u,h),a=i.slice(-2),t=a[0],e=a[1],n}}).reduce(function(i,a){return i+a},0)}function ff(r){return G0(r)>=0}function K0(r){var t=r.slice(1).map(function(e,n,i){return n?i[n-1].slice(-2).concat(e.slice(1)):r[0].slice(1).concat(e.slice(1))}).map(function(e){return e.map(function(n,i){return e[e.length-i-2*(1-i%2)]})}).reverse();return[["M"].concat(t[0].slice(0,2))].concat(t.map(function(e){return["C"].concat(e.slice(2))}))}function z0(r){return r.map(function(t){return Array.isArray(t)?[].concat(t):t})}function V0(r){var t=r.length,e=t-1;return r.map(function(n,i){return r.map(function(a,s){var o=i+s,A;return s===0||r[o]&&r[o][0]==="M"?(A=r[o],["M"].concat(A.slice(-2))):(o>=t&&(o-=e),r[o])})})}function df(r,t){var e=r.length-1,n=[],i=0,a=0,s=V0(r);return s.forEach(function(o,A){r.slice(1).forEach(function(l,c){a+=Li(r[(A+c)%e].slice(-2),t[c%e].slice(-2))}),n[A]=a,a=0}),i=n.indexOf(Math.min.apply(null,n)),s[i]}var W0=function(r){return r===void 0},Ye=W0,Z0={}.toString,j0=function(r,t){return Z0.call(r)==="[object "+t+"]"},gf=j0,Y0=function(r){return gf(r,"Boolean")},Jo=Y0;function jt(r){return typeof r=="function"}var Br=function(r){var t=typeof r;return r!==null&&t==="object"||t==="function"};function X0(r,t,e){return of(r,t,(0,j.pi)((0,j.pi)({},e),{bbox:!1,length:!0})).point}var Ee=M(20068),Ba=M(58289);function J0(r,t){for(;!{}.hasOwnProperty.call(r,t)&&(r=(0,Ba.Z)(r))!==null;);return r}function tc(){return tc=typeof Reflect!="undefined"&&Reflect.get?Reflect.get.bind():function(r,t,e){var n=J0(r,t);if(n){var i=Object.getOwnPropertyDescriptor(n,t);return i.get?i.get.call(arguments.length<3?r:e):i.value}},tc.apply(null,arguments)}function _s(r,t,e,n){var i=tc((0,Ba.Z)(1&n?r.prototype:r),t,e);return 2&n&&typeof i=="function"?function(a){return i.apply(e,a)}:i}var ec=M(97047);function gi(r,t,e,n){var i=r-e,a=t-n;return Math.sqrt(i*i+a*a)}function nc(r,t){var e=Math.min.apply(Math,(0,k.Z)(r)),n=Math.min.apply(Math,(0,k.Z)(t)),i=Math.max.apply(Math,(0,k.Z)(r)),a=Math.max.apply(Math,(0,k.Z)(t));return{x:e,y:n,width:i-e,height:a-n}}function vf(r){return(r+Math.PI*2)%(Math.PI*2)}function Hs(r,t){var e=Math.abs(r);return t>0?e:e*-1}function bu(r,t,e,n,i,a){var s=e,o=n;if(s===0||o===0)return{x:r,y:t};for(var A=i-r,l=a-t,c=Math.abs(A),u=Math.abs(l),h=s*s,f=o*o,d=Math.PI/4,g=0,v=0,y=0;y<4;y++){g=s*Math.cos(d),v=o*Math.sin(d);var E=(h-f)*Math.pow(Math.cos(d),3)/s,C=(f-h)*Math.pow(Math.sin(d),3)/o,I=g-E,R=v-C,K=c-E,W=u-C,V=Math.hypot(R,I),J=Math.hypot(W,K),et=V*Math.asin((I*W-R*K)/(V*J)),at=et/Math.sqrt(h+f-g*g-v*v);d+=at,d=Math.min(Math.PI/2,Math.max(0,d))}return{x:r+Hs(g,A),y:t+Hs(v,l)}}function xu(r,t,e,n,i,a,s,o){return-1*e*Math.cos(i)*Math.sin(o)-n*Math.sin(i)*Math.cos(o)}function q0(r,t,e,n,i,a,s,o){return-1*e*Math.sin(i)*Math.sin(o)+n*Math.cos(i)*Math.cos(o)}function pf(r,t,e){return Math.atan(-t/r*Math.tan(e))}function $0(r,t,e){return Math.atan(t/(r*Math.tan(e)))}function Cu(r,t,e,n,i,a){return e*Math.cos(i)*Math.cos(a)-n*Math.sin(i)*Math.sin(a)+r}function tp(r,t,e,n,i,a){return e*Math.sin(i)*Math.cos(a)+n*Math.cos(i)*Math.sin(a)+t}function ep(r,t,e,n){var i=Math.atan2(n*r,e*t);return(i+Math.PI*2)%(Math.PI*2)}function mf(r,t,e){return{x:r*Math.cos(e),y:t*Math.sin(e)}}function yf(r,t,e){var n=Math.cos(e),i=Math.sin(e);return[r*n-t*i,r*i+t*n]}function np(r,t,e,n,i,a,s){for(var o=pf(e,n,i),A=1/0,l=-1/0,c=[a,s],u=-Math.PI*2;u<=Math.PI*2;u+=Math.PI){var h=o+u;a<s?a<h&&h<s&&c.push(h):s<h&&h<a&&c.push(h)}for(var f=0;f<c.length;f++){var d=Cu(r,t,e,n,i,c[f]);d<A&&(A=d),d>l&&(l=d)}for(var g=$0(e,n,i),v=1/0,y=-1/0,E=[a,s],C=-Math.PI*2;C<=Math.PI*2;C+=Math.PI){var I=g+C;a<s?a<I&&I<s&&E.push(I):s<I&&I<a&&E.push(I)}for(var R=0;R<E.length;R++){var K=tp(r,t,e,n,i,E[R]);K<v&&(v=K),K>y&&(y=K)}return{x:A,y:v,width:l-A,height:y-v}}function Qw(r,t,e,n,i,a,s,o,A){var l=yf(o-r,A-t,-i),c=_slicedToArray(l,2),u=c[0],h=c[1],f=bu(0,0,e,n,u,h),d=ep(e,n,f.x,f.y);d<a?f=mf(e,n,a):d>s&&(f=mf(e,n,s));var g=yf(f.x,f.y,i);return{x:g[0]+r,y:g[1]+t}}function Uw(r,t,e,n,i,a,s,o){var A=(s-a)*o+a,l=xu(r,t,e,n,i,a,s,A),c=q0(r,t,e,n,i,a,s,A);return vf(Math.atan2(c,l))}var rp=1e-4;function Su(r,t,e,n,i,a){var s=-1,o=1/0,A=[e,n],l=20;a&&a>200&&(l=a/10);for(var c=1/l,u=c/10,h=0;h<=l;h++){var f=h*c,d=[i.apply(void 0,(0,k.Z)(r.concat([f]))),i.apply(void 0,(0,k.Z)(t.concat([f])))],g=gi(A[0],A[1],d[0],d[1]);g<o&&(s=f,o=g)}if(s===0)return{x:r[0],y:t[0]};if(s===1){var v=r.length;return{x:r[v-1],y:t[v-1]}}o=1/0;for(var y=0;y<32&&!(u<rp);y++){var E=s-u,C=s+u,I=[i.apply(void 0,(0,k.Z)(r.concat([E]))),i.apply(void 0,(0,k.Z)(t.concat([E])))],R=gi(A[0],A[1],I[0],I[1]);if(E>=0&&R<o)s=E,o=R;else{var K=[i.apply(void 0,(0,k.Z)(r.concat([C]))),i.apply(void 0,(0,k.Z)(t.concat([C])))],W=gi(A[0],A[1],K[0],K[1]);C<=1&&W<o?(s=C,o=W):u*=.5}}return{x:i.apply(void 0,(0,k.Z)(r.concat([s]))),y:i.apply(void 0,(0,k.Z)(t.concat([s])))}}function ip(r,t){for(var e=0,n=r.length,i=0;i<n;i++){var a=r[i],s=t[i],o=r[(i+1)%n],A=t[(i+1)%n];e+=gi(a,s,o,A)}return e/2}function Pw(r,t,e,n){return nc([r,e],[t,n])}function wf(r,t,e,n){return gi(r,t,e,n)}function ba(r,t,e,n,i){return{x:(1-i)*r+i*e,y:(1-i)*t+i*n}}function ap(r,t,e,n,i,a){var s=(e-r)*(i-r)+(n-t)*(a-t);if(s<0)return gi(r,t,i,a);var o=(e-r)*(e-r)+(n-t)*(n-t);return s>o?gi(e,n,i,a):jA(r,t,e,n,i,a)}function jA(r,t,e,n,i,a){var s=[e-r,n-t];if(E0(s,[0,0]))return Math.sqrt((i-r)*(i-r)+(a-t)*(a-t));var o=[-s[1],s[0]];y0(o,o);var A=[i-r,a-t];return Math.abs(pu(A,o))}function Dw(r,t,e,n){return Math.atan2(n-t,e-r)}function As(r,t,e,n,i){var a=1-i;return a*a*a*r+3*t*i*a*a+3*e*i*i*a+n*i*i*i}function rc(r,t,e,n,i){var a=1-i;return 3*(a*a*(t-r)+2*a*i*(e-t)+i*i*(n-e))}function Mu(r,t,e,n){var i=-3*r+9*t-9*e+3*n,a=6*r-12*t+6*e,s=3*t-3*r,o=[],A,l,c;if(Xo(i,0))Xo(a,0)||(A=-s/a,A>=0&&A<=1&&o.push(A));else{var u=a*a-4*i*s;Xo(u,0)?o.push(-a/(2*i)):u>0&&(c=Math.sqrt(u),A=(-a+c)/(2*i),l=(-a-c)/(2*i),A>=0&&A<=1&&o.push(A),l>=0&&l<=1&&o.push(l))}return o}function Ef(r,t,e,n,i,a,s,o,A){var l=As(r,e,i,s,A),c=As(t,n,a,o,A),u=ba(r,t,e,n,A),h=ba(e,n,i,a,A),f=ba(i,a,s,o,A),d=ba(u.x,u.y,h.x,h.y,A),g=ba(h.x,h.y,f.x,f.y,A);return[[r,t,u.x,u.y,d.x,d.y,l,c],[l,c,g.x,g.y,f.x,f.y,s,o]]}function Tu(r,t,e,n,i,a,s,o,A){if(A===0)return ip([r,e,i,s],[t,n,a,o]);var l=Ef(r,t,e,n,i,a,s,o,.5),c=[].concat(_toConsumableArray(l[0]),[A-1]),u=[].concat(_toConsumableArray(l[1]),[A-1]);return Tu.apply(void 0,_toConsumableArray(c))+Tu.apply(void 0,_toConsumableArray(u))}function Bf(r,t,e,n,i,a,s,o){for(var A=[r,s],l=[t,o],c=Mu(r,e,i,s),u=Mu(t,n,a,o),h=0;h<c.length;h++)A.push(As(r,e,i,s,c[h]));for(var f=0;f<u.length;f++)l.push(As(t,n,a,o,u[f]));return nc(A,l)}function bf(r,t,e,n,i,a,s,o){return Tu(r,t,e,n,i,a,s,o,3)}function Fu(r,t,e,n,i,a,s,o,A,l,c){return Su([r,e,i,s],[t,n,a,o],A,l,As,c)}function Ou(r,t,e,n,i,a,s,o,A,l,c){var u=Fu(r,t,e,n,i,a,s,o,A,l,c);return gi(u.x,u.y,A,l)}function sp(r,t,e,n,i,a,s,o,A){return{x:As(r,e,i,s,A),y:As(t,n,a,o,A)}}function op(r,t,e,n,i,a,s,o,A){var l=rc(r,e,i,s,A),c=rc(t,n,a,o,A);return vf(Math.atan2(c,l))}function Iu(r){for(var t=0,e=[],n=0;n<r.length-1;n++){var i=r[n],a=r[n+1],s=gi(i[0],i[1],a[0],a[1]),o={from:i,to:a,length:s};e.push(o),t+=s}return{segments:e,totalLength:t}}function ic(r){if(r.length<2)return 0;for(var t=0,e=0;e<r.length-1;e++){var n=r[e],i=r[e+1];t+=gi(n[0],n[1],i[0],i[1])}return t}function xf(r,t){if(t>1||t<0||r.length<2)return null;var e=Iu(r),n=e.segments,i=e.totalLength;if(i===0)return{x:r[0][0],y:r[0][1]};for(var a=0,s=null,o=0;o<n.length;o++){var A=n[o],l=A.from,c=A.to,u=A.length/i;if(t>=a&&t<=a+u){var h=(t-a)/u;s=ba(l[0],l[1],c[0],c[1],h);break}a+=u}return s}function Cf(r,t){if(t>1||t<0||r.length<2)return 0;for(var e=Iu(r),n=e.segments,i=e.totalLength,a=0,s=0,o=0;o<n.length;o++){var A=n[o],l=A.from,c=A.to,u=A.length/i;if(t>=a&&t<=a+u){s=Math.atan2(c[1]-l[1],c[0]-l[0]);break}a+=u}return s}function Sf(r,t,e){for(var n=1/0,i=0;i<r.length-1;i++){var a=r[i],s=r[i+1],o=ap(a[0],a[1],s[0],s[1],t,e);o<n&&(n=o)}return n}function Aa(r){for(var t=[],e=[],n=0;n<r.length;n++){var i=r[n];t.push(i[0]),e.push(i[1])}return nc(t,e)}function Lu(r){return ic(r)}function Rw(r,t){return xf(r,t)}function _w(r,t,e){return Sf(r,t,e)}function Hw(r,t){return Cf(r,t)}function ac(r){var t=r.slice(0);return r.length&&t.push(r[0]),t}function Gw(r){return Aa(r)}function Kw(r){return ic(ac(r))}function zw(r,t){return xf(ac(r),t)}function Vw(r,t,e){return Sf(ac(r),t,e)}function Ww(r,t){return Cf(ac(r),t)}function qo(r,t,e,n){var i=1-n;return i*i*r+2*n*i*t+n*n*e}function Mf(r,t,e){var n=r+e-2*t;if(Xo(n,0))return[.5];var i=(r-t)/n;return i<=1&&i>=0?[i]:[]}function Nu(r,t,e,n,i,a,s){var o=qo(r,e,i,s),A=qo(t,n,a,s),l=ba(r,t,e,n,s),c=ba(e,n,i,a,s);return[[r,t,l.x,l.y,o,A],[o,A,c.x,c.y,i,a]]}function sc(r,t,e,n,i,a,s){if(s===0)return(gi(r,t,e,n)+gi(e,n,i,a)+gi(r,t,i,a))/2;var o=Nu(r,t,e,n,i,a,.5),A=o[0],l=o[1];return A.push(s-1),l.push(s-1),sc.apply(void 0,_toConsumableArray(A))+sc.apply(void 0,_toConsumableArray(l))}function ni(r,t,e,n,i,a){var s=Mf(r,e,i)[0],o=Mf(t,n,a)[0],A=[r,i],l=[t,a];return s!==void 0&&A.push(qo(r,e,i,s)),o!==void 0&&l.push(qo(t,n,a,o)),nc(A,l)}function oc(r,t,e,n,i,a){return sc(r,t,e,n,i,a,3)}function Ap(r,t,e,n,i,a,s,o){return Su([r,e,i],[t,n,a],s,o,qo)}function lp(r,t,e,n,i,a,s,o){var A=Ap(r,t,e,n,i,a,s,o);return gi(A.x,A.y,s,o)}var ri=M(75044),Wa=M(3202),Gs=M(19251),Za=M(75931);var Zt=function(r){return r.GROUP="g",r.FRAGMENT="fragment",r.CIRCLE="circle",r.ELLIPSE="ellipse",r.IMAGE="image",r.RECT="rect",r.LINE="line",r.POLYLINE="polyline",r.POLYGON="polygon",r.TEXT="text",r.PATH="path",r.HTML="html",r.MESH="mesh",r}({}),Ac=function(r){return r[r.ZERO=0]="ZERO",r[r.NEGATIVE_ONE=1]="NEGATIVE_ONE",r}({}),ls=function(){function r(){(0,N.Z)(this,r),this.plugins=[]}return(0,O.Z)(r,[{key:"addRenderingPlugin",value:function(e){this.plugins.push(e),this.context.renderingPlugins.push(e)}},{key:"removeAllRenderingPlugins",value:function(){var e=this;this.plugins.forEach(function(n){var i=e.context.renderingPlugins.indexOf(n);i>=0&&e.context.renderingPlugins.splice(i,1)})}}])}(),cp=function(){function r(t){(0,N.Z)(this,r),this.clipSpaceNearZ=Ac.NEGATIVE_ONE,this.plugins=[],this.config=(0,D.Z)({enableDirtyCheck:!0,enableCulling:!1,enableAutoRendering:!0,enableDirtyRectangleRendering:!0,enableDirtyRectangleRenderingDebug:!1,enableSizeAttenuation:!0,enableRenderingOptimization:!1},t)}return(0,O.Z)(r,[{key:"registerPlugin",value:function(e){var n=this.plugins.findIndex(function(i){return i===e});n===-1&&this.plugins.push(e)}},{key:"unregisterPlugin",value:function(e){var n=this.plugins.findIndex(function(i){return i===e});n>-1&&this.plugins.splice(n,1)}},{key:"getPlugins",value:function(){return this.plugins}},{key:"getPlugin",value:function(e){return this.plugins.find(function(n){return n.name===e})}},{key:"getConfig",value:function(){return this.config}},{key:"setConfig",value:function(e){Object.assign(this.config,e)}}])}(),ku=oe,$o=Kt,Tf=is,Ff=Vi,Qu=zt,lc=ss,Yn=function(){function r(){(0,N.Z)(this,r),this.center=[0,0,0],this.halfExtents=[0,0,0],this.min=[0,0,0],this.max=[0,0,0]}return(0,O.Z)(r,[{key:"update",value:function(e,n){$o(this.center,e),$o(this.halfExtents,n),lc(this.min,this.center,this.halfExtents),ku(this.max,this.center,this.halfExtents)}},{key:"setMinMax",value:function(e,n){ku(this.center,n,e),Qu(this.center,this.center,.5),lc(this.halfExtents,n,e),Qu(this.halfExtents,this.halfExtents,.5),$o(this.min,e),$o(this.max,n)}},{key:"getMin",value:function(){return this.min}},{key:"getMax",value:function(){return this.max}},{key:"add",value:function(e){if(!r.isEmpty(e)){if(r.isEmpty(this)){this.setMinMax(e.getMin(),e.getMax());return}var n=this.center,i=n[0],a=n[1],s=n[2],o=this.halfExtents,A=o[0],l=o[1],c=o[2],u=i-A,h=i+A,f=a-l,d=a+l,g=s-c,v=s+c,y=e.center,E=y[0],C=y[1],I=y[2],R=e.halfExtents,K=R[0],W=R[1],V=R[2],J=E-K,et=E+K,at=C-W,ct=C+W,pt=I-V,wt=I+V;J<u&&(u=J),et>h&&(h=et),at<f&&(f=at),ct>d&&(d=ct),pt<g&&(g=pt),wt>v&&(v=wt),n[0]=(u+h)*.5,n[1]=(f+d)*.5,n[2]=(g+v)*.5,o[0]=(h-u)*.5,o[1]=(d-f)*.5,o[2]=(v-g)*.5,this.min[0]=u,this.min[1]=f,this.min[2]=g,this.max[0]=h,this.max[1]=d,this.max[2]=v}}},{key:"setFromTransformedAABB",value:function(e,n){var i=this.center,a=this.halfExtents,s=e.center,o=e.halfExtents,A=n[0],l=n[4],c=n[8],u=n[1],h=n[5],f=n[9],d=n[2],g=n[6],v=n[10],y=Math.abs(A),E=Math.abs(l),C=Math.abs(c),I=Math.abs(u),R=Math.abs(h),K=Math.abs(f),W=Math.abs(d),V=Math.abs(g),J=Math.abs(v);i[0]=n[12]+A*s[0]+l*s[1]+c*s[2],i[1]=n[13]+u*s[0]+h*s[1]+f*s[2],i[2]=n[14]+d*s[0]+g*s[1]+v*s[2],a[0]=y*o[0]+E*o[1]+C*o[2],a[1]=I*o[0]+R*o[1]+K*o[2],a[2]=W*o[0]+V*o[1]+J*o[2],lc(this.min,i,a),ku(this.max,i,a)}},{key:"intersects",value:function(e){var n=this.getMax(),i=this.getMin(),a=e.getMax(),s=e.getMin();return i[0]<=a[0]&&n[0]>=s[0]&&i[1]<=a[1]&&n[1]>=s[1]&&i[2]<=a[2]&&n[2]>=s[2]}},{key:"intersection",value:function(e){if(!this.intersects(e))return null;var n=new r,i=Tf([0,0,0],this.getMin(),e.getMin()),a=Ff([0,0,0],this.getMax(),e.getMax());return n.setMinMax(i,a),n}},{key:"getNegativeFarPoint",value:function(e){return e.pnVertexFlag===273?$o([0,0,0],this.min):e.pnVertexFlag===272?[this.min[0],this.min[1],this.max[2]]:e.pnVertexFlag===257?[this.min[0],this.max[1],this.min[2]]:e.pnVertexFlag===256?[this.min[0],this.max[1],this.max[2]]:e.pnVertexFlag===17?[this.max[0],this.min[1],this.min[2]]:e.pnVertexFlag===16?[this.max[0],this.min[1],this.max[2]]:e.pnVertexFlag===1?[this.max[0],this.max[1],this.min[2]]:[this.max[0],this.max[1],this.max[2]]}},{key:"getPositiveFarPoint",value:function(e){return e.pnVertexFlag===273?$o([0,0,0],this.max):e.pnVertexFlag===272?[this.max[0],this.max[1],this.min[2]]:e.pnVertexFlag===257?[this.max[0],this.min[1],this.max[2]]:e.pnVertexFlag===256?[this.max[0],this.min[1],this.min[2]]:e.pnVertexFlag===17?[this.min[0],this.max[1],this.max[2]]:e.pnVertexFlag===16?[this.min[0],this.max[1],this.min[2]]:e.pnVertexFlag===1?[this.min[0],this.min[1],this.max[2]]:[this.min[0],this.min[1],this.min[2]]}}],[{key:"isEmpty",value:function(e){return!e||e.halfExtents[0]===0&&e.halfExtents[1]===0&&e.halfExtents[2]===0}}])}(),up=function(){function r(t,e){(0,N.Z)(this,r),this.distance=t||0,this.normal=e||Lt(0,1,0),this.updatePNVertexFlag()}return(0,O.Z)(r,[{key:"updatePNVertexFlag",value:function(){this.pnVertexFlag=(+(this.normal[0]>=0)<<8)+(+(this.normal[1]>=0)<<4)+ +(this.normal[2]>=0)}},{key:"distanceToPoint",value:function(e){return _e(e,this.normal)-this.distance}},{key:"normalize",value:function(){var e=1/aa(this.normal);zt(this.normal,this.normal,e),this.distance*=e}},{key:"intersectsLine",value:function(e,n,i){var a=this.distanceToPoint(e),s=this.distanceToPoint(n),o=a/(a-s),A=o>=0&&o<=1;return A&&i&&an(i,e,n,o),A}}])}(),tA=function(r){return r[r.OUTSIDE=4294967295]="OUTSIDE",r[r.INSIDE=0]="INSIDE",r[r.INDETERMINATE=2147483647]="INDETERMINATE",r}({}),hp=function(){function r(t){if((0,N.Z)(this,r),this.planes=[],t)this.planes=t;else for(var e=0;e<6;e++)this.planes.push(new up)}return(0,O.Z)(r,[{key:"extractFromVPMatrix",value:function(e){var n=(0,Q.Z)(e,16),i=n[0],a=n[1],s=n[2],o=n[3],A=n[4],l=n[5],c=n[6],u=n[7],h=n[8],f=n[9],d=n[10],g=n[11],v=n[12],y=n[13],E=n[14],C=n[15];$t(this.planes[0].normal,o-i,u-A,g-h),this.planes[0].distance=C-v,$t(this.planes[1].normal,o+i,u+A,g+h),this.planes[1].distance=C+v,$t(this.planes[2].normal,o+a,u+l,g+f),this.planes[2].distance=C+y,$t(this.planes[3].normal,o-a,u-l,g-f),this.planes[3].distance=C-y,$t(this.planes[4].normal,o-s,u-c,g-d),this.planes[4].distance=C-E,$t(this.planes[5].normal,o+s,u+c,g+d),this.planes[5].distance=C+E,this.planes.forEach(function(I){I.normalize(),I.updatePNVertexFlag()})}}])}(),ii=function(){function r(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;(0,N.Z)(this,r),this.x=0,this.y=0,this.x=t,this.y=e}return(0,O.Z)(r,[{key:"clone",value:function(){return new r(this.x,this.y)}},{key:"copyFrom",value:function(e){this.x=e.x,this.y=e.y}}])}(),cs=function(){function r(t,e,n,i){(0,N.Z)(this,r),this.x=t,this.y=e,this.width=n,this.height=i,this.left=t,this.right=t+n,this.top=e,this.bottom=e+i}return(0,O.Z)(r,[{key:"toJSON",value:function(){}}],[{key:"fromRect",value:function(e){return new r(e.x,e.y,e.width,e.height)}},{key:"applyTransform",value:function(e,n){var i=ji(e.x,e.y,0,1),a=ji(e.x+e.width,e.y,0,1),s=ji(e.x,e.y+e.height,0,1),o=ji(e.x+e.width,e.y+e.height,0,1),A=or(),l=or(),c=or(),u=or();T(A,i,n),T(l,a,n),T(c,s,n),T(u,o,n);var h=Math.min(A[0],l[0],c[0],u[0]),f=Math.min(A[1],l[1],c[1],u[1]),d=Math.max(A[0],l[0],c[0],u[0]),g=Math.max(A[1],l[1],c[1],u[1]);return r.fromRect({x:h,y:f,width:d-h,height:g-f})}}])}(),On="Method not implemented.",eA="Use document.documentElement instead.",Of="Cannot append a destroyed element.";function Ks(r){return r===void 0?0:r>360||r<-360?r%360:r}var cc=xt();function vi(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;return Array.isArray(r)&&r.length===3?n?Nt(r):Kt(cc,r):we(r)?n?Lt(r,t,e):$t(cc,r,t,e):n?Lt(r[0],r[1]||t,r[2]||e):$t(cc,r[0],r[1]||t,r[2]||e)}var If=Math.PI/180;function Un(r){return r*If}var uc=180/Math.PI;function Bi(r){return r*uc}var Lf=.9;function Zw(r){return r%=400,r<0&&(r+=400),r*Lf}function jw(r){return r/360}function Nf(r){return 360*r}var us=Math.PI/2;function Uu(r,t){var e=t[0],n=t[1],i=t[2],a=t[3],s=e*e,o=n*n,A=i*i,l=a*a,c=s+o+A+l,u=e*a-n*i;return u>.499995*c?(r[0]=us,r[1]=2*Math.atan2(n,e),r[2]=0):u<-.499995*c?(r[0]=-us,r[1]=2*Math.atan2(n,e),r[2]=0):(r[0]=Math.asin(2*(e*i-a*n)),r[1]=Math.atan2(2*(e*a+n*i),1-2*(A+l)),r[2]=Math.atan2(2*(e*n+i*a),1-2*(o+A))),r}function hc(r,t){var e,n,i=ks(xt(),t),a=(0,Q.Z)(i,3),s=a[0],o=a[1],A=a[2],l=Math.asin(-t[2]/s);return l<us?l>-us?(e=Math.atan2(t[6]/o,t[10]/A),n=Math.atan2(t[1]/s,t[0]/s)):(n=0,e=-Math.atan2(t[4]/o,t[5]/o)):(n=0,e=Math.atan2(t[4]/o,t[5]/o)),r[0]=e,r[1]=l,r[2]=n,r}function Pu(r,t){return t.length===16?hc(r,t):Uu(r,t)}function fp(r,t,e,n,i){var a=Math.cos(r),s=Math.sin(r);return Kl(n*a,i*s,0,-n*s,i*a,0,t,e,1)}function dp(r,t,e,n,i,a,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,A=2*a,l=e-t,c=n-i,u=A/l,h=A/c,f=(e+t)/l,d=(n+i)/c,g,v,y=s-a,E=s*a;return o?(g=-s/y,v=-E/y):(g=-(s+a)/y,v=-2*E/y),r[0]=u,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=h,r[6]=0,r[7]=0,r[8]=f,r[9]=d,r[10]=g,r[11]=-1,r[12]=0,r[13]=0,r[14]=v,r[15]=0,r}function kf(r){var t=r[0],e=r[1],n=r[3],i=r[4],a=Math.sqrt(t*t+e*e),s=Math.sqrt(n*n+i*i),o=t*i-e*n;if(o<0&&(t<i?a=-a:s=-s),a){var A=1/a;t*=A,e*=A}if(s){var l=1/s;n*=l,i*=l}var c=Math.atan2(e,t),u=Bi(c);return[r[6],r[7],a,s,u]}var xa=ne(),qi=ne(),nA=or(),Ve=[xt(),xt(),xt()],fc=xt();function Qf(r,t,e,n,i,a){if(!Uf(xa,r)||(Ge(qi,xa),qi[3]=0,qi[7]=0,qi[11]=0,qi[15]=1,Math.abs(re(qi))<1e-8))return!1;var s=xa[3],o=xa[7],A=xa[11],l=xa[12],c=xa[13],u=xa[14],h=xa[15];if(s!==0||o!==0||A!==0){nA[0]=s,nA[1]=o,nA[2]=A,nA[3]=h;var f=An(qi,qi);if(!f)return!1;De(qi,qi),T(i,nA,qi)}else i[0]=i[1]=i[2]=0,i[3]=1;if(t[0]=l,t[1]=c,t[2]=u,gp(Ve,xa),e[0]=bt(Ve[0]),xe(Ve[0],Ve[0]),n[0]=_e(Ve[0],Ve[1]),rA(Ve[1],Ve[1],Ve[0],1,-n[0]),e[1]=bt(Ve[1]),xe(Ve[1],Ve[1]),n[0]/=e[1],n[1]=_e(Ve[0],Ve[2]),rA(Ve[2],Ve[2],Ve[0],1,-n[1]),n[2]=_e(Ve[1],Ve[2]),rA(Ve[2],Ve[2],Ve[1],1,-n[2]),e[2]=bt(Ve[2]),xe(Ve[2],Ve[2]),n[1]/=e[2],n[2]/=e[2],Te(fc,Ve[1],Ve[2]),_e(Ve[0],fc)<0)for(var d=0;d<3;d++)e[d]*=-1,Ve[d][0]*=-1,Ve[d][1]*=-1,Ve[d][2]*=-1;return a[0]=.5*Math.sqrt(Math.max(1+Ve[0][0]-Ve[1][1]-Ve[2][2],0)),a[1]=.5*Math.sqrt(Math.max(1-Ve[0][0]+Ve[1][1]-Ve[2][2],0)),a[2]=.5*Math.sqrt(Math.max(1-Ve[0][0]-Ve[1][1]+Ve[2][2],0)),a[3]=.5*Math.sqrt(Math.max(1+Ve[0][0]+Ve[1][1]+Ve[2][2],0)),Ve[2][1]>Ve[1][2]&&(a[0]=-a[0]),Ve[0][2]>Ve[2][0]&&(a[1]=-a[1]),Ve[1][0]>Ve[0][1]&&(a[2]=-a[2]),!0}function Uf(r,t){var e=t[15];if(e===0)return!1;for(var n=1/e,i=0;i<16;i++)r[i]=t[i]*n;return!0}function gp(r,t){r[0][0]=t[0],r[0][1]=t[1],r[0][2]=t[2],r[1][0]=t[4],r[1][1]=t[5],r[1][2]=t[6],r[2][0]=t[8],r[2][1]=t[9],r[2][2]=t[10]}function rA(r,t,e,n,i){r[0]=t[0]*n+e[0]*i,r[1]=t[1]*n+e[1]*i,r[2]=t[2]*n+e[2]*i}var In=function(r){return r[r.ORBITING=0]="ORBITING",r[r.EXPLORING=1]="EXPLORING",r[r.TRACKING=2]="TRACKING",r}({}),dc=function(r){return r[r.DEFAULT=0]="DEFAULT",r[r.ROTATIONAL=1]="ROTATIONAL",r[r.TRANSLATIONAL=2]="TRANSLATIONAL",r[r.CINEMATIC=3]="CINEMATIC",r}({}),$i=function(r){return r[r.ORTHOGRAPHIC=0]="ORTHOGRAPHIC",r[r.PERSPECTIVE=1]="PERSPECTIVE",r}({}),Pf={UPDATED:"updated"},Du=2e-4,Ru=function(){function r(){(0,N.Z)(this,r),this.clipSpaceNearZ=Ac.NEGATIVE_ONE,this.eventEmitter=new P,this.matrix=ne(),this.right=Lt(1,0,0),this.up=Lt(0,1,0),this.forward=Lt(0,0,1),this.position=Lt(0,0,1),this.focalPoint=Lt(0,0,0),this.distanceVector=Lt(0,0,-1),this.distance=1,this.azimuth=0,this.elevation=0,this.roll=0,this.relAzimuth=0,this.relElevation=0,this.relRoll=0,this.dollyingStep=0,this.maxDistance=1/0,this.minDistance=-1/0,this.zoom=1,this.rotateWorld=!1,this.fov=30,this.near=.1,this.far=1e3,this.aspect=1,this.projectionMatrix=ne(),this.projectionMatrixInverse=ne(),this.jitteredProjectionMatrix=void 0,this.enableUpdate=!0,this.type=In.EXPLORING,this.trackingMode=dc.DEFAULT,this.projectionMode=$i.PERSPECTIVE,this.frustum=new hp,this.orthoMatrix=ne()}return(0,O.Z)(r,[{key:"isOrtho",value:function(){return this.projectionMode===$i.ORTHOGRAPHIC}},{key:"getProjectionMode",value:function(){return this.projectionMode}},{key:"getPerspective",value:function(){return this.jitteredProjectionMatrix||this.projectionMatrix}},{key:"getPerspectiveInverse",value:function(){return this.projectionMatrixInverse}},{key:"getFrustum",value:function(){return this.frustum}},{key:"getPosition",value:function(){return this.position}},{key:"getFocalPoint",value:function(){return this.focalPoint}},{key:"getDollyingStep",value:function(){return this.dollyingStep}},{key:"getNear",value:function(){return this.near}},{key:"getFar",value:function(){return this.far}},{key:"getZoom",value:function(){return this.zoom}},{key:"getOrthoMatrix",value:function(){return this.orthoMatrix}},{key:"getView",value:function(){return this.view}},{key:"setEnableUpdate",value:function(e){this.enableUpdate=e}},{key:"setType",value:function(e,n){return this.type=e,this.type===In.EXPLORING?this.setWorldRotation(!0):this.setWorldRotation(!1),this._getAngles(),this.type===In.TRACKING&&n!==void 0&&this.setTrackingMode(n),this}},{key:"setProjectionMode",value:function(e){return this.projectionMode=e,this}},{key:"setTrackingMode",value:function(e){if(this.type!==In.TRACKING)throw new Error("Impossible to set a tracking mode if the camera is not of tracking type");return this.trackingMode=e,this}},{key:"setWorldRotation",value:function(e){return this.rotateWorld=e,this._getAngles(),this}},{key:"getViewTransform",value:function(){return An(ne(),this.matrix)}},{key:"getWorldTransform",value:function(){return this.matrix}},{key:"jitterProjectionMatrix",value:function(e,n){var i=Fr(ne(),[e,n,0]);this.jitteredProjectionMatrix=de(ne(),i,this.projectionMatrix)}},{key:"clearJitterProjectionMatrix",value:function(){this.jitteredProjectionMatrix=void 0}},{key:"setMatrix",value:function(e){return this.matrix=e,this._update(),this}},{key:"setProjectionMatrix",value:function(e){this.projectionMatrix=e}},{key:"setFov",value:function(e){return this.setPerspective(this.near,this.far,e,this.aspect),this}},{key:"setAspect",value:function(e){return this.setPerspective(this.near,this.far,this.fov,e),this}},{key:"setNear",value:function(e){return this.projectionMode===$i.PERSPECTIVE?this.setPerspective(e,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,e,this.far),this}},{key:"setFar",value:function(e){return this.projectionMode===$i.PERSPECTIVE?this.setPerspective(this.near,e,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,e),this}},{key:"setViewOffset",value:function(e,n,i,a,s,o){return this.aspect=e/n,this.view===void 0&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=n,this.view.offsetX=i,this.view.offsetY=a,this.view.width=s,this.view.height=o,this.projectionMode===$i.PERSPECTIVE?this.setPerspective(this.near,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far),this}},{key:"clearViewOffset",value:function(){return this.view!==void 0&&(this.view.enabled=!1),this.projectionMode===$i.PERSPECTIVE?this.setPerspective(this.near,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far),this}},{key:"setZoom",value:function(e){return this.zoom=e,this.projectionMode===$i.ORTHOGRAPHIC?this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far):this.projectionMode===$i.PERSPECTIVE&&this.setPerspective(this.near,this.far,this.fov,this.aspect),this}},{key:"setZoomByViewportPoint",value:function(e,n){var i=this.canvas.viewport2Canvas({x:n[0],y:n[1]}),a=i.x,s=i.y,o=this.roll;this.rotate(0,0,-o),this.setPosition(a,s),this.setFocalPoint(a,s),this.setZoom(e),this.rotate(0,0,o);var A=this.canvas.viewport2Canvas({x:n[0],y:n[1]}),l=A.x,c=A.y,u=Lt(l-a,c-s,0),h=_e(u,this.right)/bt(this.right),f=_e(u,this.up)/bt(this.up),d=this.getPosition(),g=(0,Q.Z)(d,2),v=g[0],y=g[1],E=this.getFocalPoint(),C=(0,Q.Z)(E,2),I=C[0],R=C[1];return this.setPosition(v-h,y-f),this.setFocalPoint(I-h,R-f),this}},{key:"setPerspective",value:function(e,n,i,a){var s;this.projectionMode=$i.PERSPECTIVE,this.fov=i,this.near=e,this.far=n,this.aspect=a;var o=this.near*Math.tan(Un(.5*this.fov))/this.zoom,A=2*o,l=this.aspect*A,c=-.5*l;if((s=this.view)!==null&&s!==void 0&&s.enabled){var u=this.view.fullWidth,h=this.view.fullHeight;c+=this.view.offsetX*l/u,o-=this.view.offsetY*A/h,l*=this.view.width/u,A*=this.view.height/h}return dp(this.projectionMatrix,c,c+l,o-A,o,e,this.far,this.clipSpaceNearZ===Ac.ZERO),An(this.projectionMatrixInverse,this.projectionMatrix),this.triggerUpdate(),this}},{key:"setOrthographic",value:function(e,n,i,a,s,o){var A;this.projectionMode=$i.ORTHOGRAPHIC,this.rright=n,this.left=e,this.top=i,this.bottom=a,this.near=s,this.far=o;var l=(this.rright-this.left)/(2*this.zoom),c=(this.top-this.bottom)/(2*this.zoom),u=(this.rright+this.left)/2,h=(this.top+this.bottom)/2,f=u-l,d=u+l,g=h+c,v=h-c;if((A=this.view)!==null&&A!==void 0&&A.enabled){var y=(this.rright-this.left)/this.view.fullWidth/this.zoom,E=(this.top-this.bottom)/this.view.fullHeight/this.zoom;f+=y*this.view.offsetX,d=f+y*this.view.width,g-=E*this.view.offsetY,v=g-E*this.view.height}return this.clipSpaceNearZ===Ac.NEGATIVE_ONE?su(this.projectionMatrix,f,d,g,v,s,o):ou(this.projectionMatrix,f,d,g,v,s,o),An(this.projectionMatrixInverse,this.projectionMatrix),this._getOrthoMatrix(),this.triggerUpdate(),this}},{key:"setPosition",value:function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.position[1],i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.position[2],a=vi(e,n,i);return this._setPosition(a),this.setFocalPoint(this.focalPoint),this.triggerUpdate(),this}},{key:"setFocalPoint",value:function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.focalPoint[1],i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.focalPoint[2],a=Lt(0,1,0);if(this.focalPoint=vi(e,n,i),this.trackingMode===dc.CINEMATIC){var s=fe(xt(),this.focalPoint,this.position);e=s[0],n=s[1],i=s[2];var o=bt(s),A=Bi(Math.asin(n/o)),l=90+Bi(Math.atan2(i,e)),c=ne();qn(c,c,Un(l)),jn(c,c,Un(A)),a=ye(xt(),[0,1,0],c)}return An(this.matrix,zh(ne(),this.position,this.focalPoint,a)),this._getAxes(),this._getDistance(),this._getAngles(),this.triggerUpdate(),this}},{key:"getDistance",value:function(){return this.distance}},{key:"getDistanceVector",value:function(){return this.distanceVector}},{key:"setDistance",value:function(e){if(this.distance===e||e<0)return this;this.distance=e,this.distance<Du&&(this.distance=Du),this.dollyingStep=this.distance/100;var n=xt();e=this.distance;var i=this.forward,a=this.focalPoint;return n[0]=e*i[0]+a[0],n[1]=e*i[1]+a[1],n[2]=e*i[2]+a[2],this._setPosition(n),this.triggerUpdate(),this}},{key:"setMaxDistance",value:function(e){return this.maxDistance=e,this}},{key:"setMinDistance",value:function(e){return this.minDistance=e,this}},{key:"setAzimuth",value:function(e){return this.azimuth=Ks(e),this.computeMatrix(),this._getAxes(),this.type===In.ORBITING||this.type===In.EXPLORING?this._getPosition():this.type===In.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:"getAzimuth",value:function(){return this.azimuth}},{key:"setElevation",value:function(e){return this.elevation=Ks(e),this.computeMatrix(),this._getAxes(),this.type===In.ORBITING||this.type===In.EXPLORING?this._getPosition():this.type===In.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:"getElevation",value:function(){return this.elevation}},{key:"setRoll",value:function(e){return this.roll=Ks(e),this.computeMatrix(),this._getAxes(),this.type===In.ORBITING||this.type===In.EXPLORING?this._getPosition():this.type===In.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:"getRoll",value:function(){return this.roll}},{key:"_update",value:function(){this._getAxes(),this._getPosition(),this._getDistance(),this._getAngles(),this._getOrthoMatrix(),this.triggerUpdate()}},{key:"computeMatrix",value:function(){var e=sa(Er(),[0,0,1],Un(this.roll));Ie(this.matrix);var n=sa(Er(),[1,0,0],Un((this.rotateWorld&&this.type!==In.TRACKING||this.type===In.TRACKING?1:-1)*this.elevation)),i=sa(Er(),[0,1,0],Un((this.rotateWorld&&this.type!==In.TRACKING||this.type===In.TRACKING?1:-1)*this.azimuth)),a=Qs(Er(),i,n);a=Qs(Er(),a,e);var s=DA(ne(),a);this.type===In.ORBITING||this.type===In.EXPLORING?(Ae(this.matrix,this.matrix,this.focalPoint),de(this.matrix,this.matrix,s),Ae(this.matrix,this.matrix,[0,0,this.distance])):this.type===In.TRACKING&&(Ae(this.matrix,this.matrix,this.position),de(this.matrix,this.matrix,s))}},{key:"_setPosition",value:function(e,n,i){this.position=vi(e,n,i);var a=this.matrix;a[12]=this.position[0],a[13]=this.position[1],a[14]=this.position[2],a[15]=1,this._getOrthoMatrix()}},{key:"_getAxes",value:function(){Kt(this.right,vi(T(or(),[1,0,0,0],this.matrix))),Kt(this.up,vi(T(or(),[0,1,0,0],this.matrix))),Kt(this.forward,vi(T(or(),[0,0,1,0],this.matrix))),xe(this.right,this.right),xe(this.up,this.up),xe(this.forward,this.forward)}},{key:"_getAngles",value:function(){var e=this.distanceVector[0],n=this.distanceVector[1],i=this.distanceVector[2],a=bt(this.distanceVector);if(a===0){this.elevation=0,this.azimuth=0;return}this.type===In.TRACKING?(this.elevation=Bi(Math.asin(n/a)),this.azimuth=Bi(Math.atan2(-e,-i))):this.rotateWorld?(this.elevation=Bi(Math.asin(n/a)),this.azimuth=Bi(Math.atan2(-e,-i))):(this.elevation=-Bi(Math.asin(n/a)),this.azimuth=-Bi(Math.atan2(-e,-i)))}},{key:"_getPosition",value:function(){Kt(this.position,vi(T(or(),[0,0,0,1],this.matrix))),this._getDistance()}},{key:"_getFocalPoint",value:function(){We(this.distanceVector,[0,0,-this.distance],Xv(Zh(),this.matrix)),oe(this.focalPoint,this.position,this.distanceVector),this._getDistance()}},{key:"_getDistance",value:function(){this.distanceVector=fe(xt(),this.focalPoint,this.position),this.distance=bt(this.distanceVector),this.dollyingStep=this.distance/100}},{key:"_getOrthoMatrix",value:function(){if(this.projectionMode===$i.ORTHOGRAPHIC){var e=this.position,n=sa(Er(),[0,0,1],-this.roll*Math.PI/180);uo(this.orthoMatrix,n,Lt((this.rright-this.left)/2-e[0],(this.top-this.bottom)/2-e[1],0),Lt(this.zoom,this.zoom,1),e)}}},{key:"triggerUpdate",value:function(){if(this.enableUpdate){var e=this.getViewTransform(),n=de(ne(),this.getPerspective(),e);this.getFrustum().extractFromVPMatrix(n),this.eventEmitter.emit(Pf.UPDATED)}}},{key:"rotate",value:function(e,n,i){throw new Error(On)}},{key:"pan",value:function(e,n){throw new Error(On)}},{key:"dolly",value:function(e){throw new Error(On)}},{key:"createLandmark",value:function(e,n){throw new Error(On)}},{key:"gotoLandmark",value:function(e,n){throw new Error(On)}},{key:"cancelLandmarkAnimation",value:function(){throw new Error(On)}}])}(),vp=function(r){return r[r.Standard=0]="Standard",r}({}),gc=function(r){return r[r.ADDED=0]="ADDED",r[r.REMOVED=1]="REMOVED",r[r.Z_INDEX_CHANGED=2]="Z_INDEX_CHANGED",r}({}),iA=xt(),aA=ne(),br=Er();function zs(r){if(r.localDirtyFlag){var t=r.localSkew[0]!==0||r.localSkew[1]!==0;if(t){uo(r.localTransform,r.localRotation,r.localPosition,Lt(1,1,1),r.origin),(r.localSkew[0]!==0||r.localSkew[1]!==0)&&(Ie(aA),aA[4]=Math.tan(r.localSkew[0]),aA[1]=Math.tan(r.localSkew[1]),de(r.localTransform,r.localTransform,aA));var e=uo(aA,zA(br,0,0,0,1),$t(iA,1,1,1),r.localScale,r.origin);de(r.localTransform,r.localTransform,e)}else{var n=r.localTransform,i=r.localPosition,a=r.localRotation,s=r.localScale,o=r.origin,A=i[0]!==0||i[1]!==0||i[2]!==0,l=a[3]!==1||a[0]!==0||a[1]!==0||a[2]!==0,c=s[0]!==1||s[1]!==1||s[2]!==1,u=o[0]!==0||o[1]!==0||o[2]!==0;!l&&!c&&!u?A?Fr(n,i):Ie(n):uo(n,a,i,s,o)}r.localDirtyFlag=!1}}function sA(r,t){r.dirtyFlag&&(t?de(r.worldTransform,t.worldTransform,r.localTransform):Ge(r.worldTransform,r.localTransform),r.dirtyFlag=!1)}var hs={absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new cs(0,0,0,0)},le=function(r){return r.COORDINATE="<coordinate>",r.COLOR="<color>",r.PAINT="<paint>",r.NUMBER="<number>",r.ANGLE="<angle>",r.OPACITY_VALUE="<opacity-value>",r.SHADOW_BLUR="<shadow-blur>",r.LENGTH="<length>",r.PERCENTAGE="<percentage>",r.LENGTH_PERCENTAGE="<length> | <percentage>",r.LENGTH_PERCENTAGE_12="[<length> | <percentage>]{1,2}",r.LENGTH_PERCENTAGE_14="[<length> | <percentage>]{1,4}",r.LIST_OF_POINTS="<list-of-points>",r.PATH="<path>",r.FILTER="<filter>",r.Z_INDEX="<z-index>",r.OFFSET_DISTANCE="<offset-distance>",r.DEFINED_PATH="<defined-path>",r.MARKER="<marker>",r.TRANSFORM="<transform>",r.TRANSFORM_ORIGIN="<transform-origin>",r.TEXT="<text>",r.TEXT_TRANSFORM="<text-transform>",r}({});function mo(r,t,e){r.prototype=t.prototype=e,e.constructor=r}function ja(r,t){var e=Object.create(r.prototype);for(var n in t)e[n]=t[n];return e}function oA(){}var AA=.7,YA=1/AA,Vs="\\s*([+-]?\\d+)\\s*",fs="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Ca="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Df=/^#([0-9a-f]{3,8})$/,XA=new RegExp(`^rgb\\(${Vs},${Vs},${Vs}\\)$`),pp=new RegExp(`^rgb\\(${Ca},${Ca},${Ca}\\)$`),mp=new RegExp(`^rgba\\(${Vs},${Vs},${Vs},${fs}\\)$`),yp=new RegExp(`^rgba\\(${Ca},${Ca},${Ca},${fs}\\)$`),wp=new RegExp(`^hsl\\(${fs},${Ca},${Ca}\\)$`),Ep=new RegExp(`^hsla\\(${fs},${Ca},${Ca},${fs}\\)$`),vc={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};mo(oA,pc,{copy(r){return Object.assign(new this.constructor,this,r)},displayable(){return this.rgb().displayable()},hex:Rf,formatHex:Rf,formatHex8:Bp,formatHsl:bp,formatRgb:_f,toString:_f});function Rf(){return this.rgb().formatHex()}function Bp(){return this.rgb().formatHex8()}function bp(){return Kf(this).formatHsl()}function _f(){return this.rgb().formatRgb()}function pc(r){var t,e;return r=(r+"").trim().toLowerCase(),(t=Df.exec(r))?(e=t[1].length,t=parseInt(t[1],16),e===6?mc(t):e===3?new ki(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):e===8?lA(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):e===4?lA(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=XA.exec(r))?new ki(t[1],t[2],t[3],1):(t=pp.exec(r))?new ki(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=mp.exec(r))?lA(t[1],t[2],t[3],t[4]):(t=yp.exec(r))?lA(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=wp.exec(r))?wc(t[1],t[2]/100,t[3]/100,1):(t=Ep.exec(r))?wc(t[1],t[2]/100,t[3]/100,t[4]):vc.hasOwnProperty(r)?mc(vc[r]):r==="transparent"?new ki(NaN,NaN,NaN,0):null}function mc(r){return new ki(r>>16&255,r>>8&255,r&255,1)}function lA(r,t,e,n){return n<=0&&(r=t=e=NaN),new ki(r,t,e,n)}function Hf(r){return r instanceof oA||(r=pc(r)),r?(r=r.rgb(),new ki(r.r,r.g,r.b,r.opacity)):new ki}function xp(r,t,e,n){return arguments.length===1?Hf(r):new ki(r,t,e,n==null?1:n)}function ki(r,t,e,n){this.r=+r,this.g=+t,this.b=+e,this.opacity=+n}mo(ki,xp,ja(oA,{brighter(r){return r=r==null?YA:Math.pow(YA,r),new ki(this.r*r,this.g*r,this.b*r,this.opacity)},darker(r){return r=r==null?AA:Math.pow(AA,r),new ki(this.r*r,this.g*r,this.b*r,this.opacity)},rgb(){return this},clamp(){return new ki(yo(this.r),yo(this.g),yo(this.b),yc(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:_u,formatHex:_u,formatHex8:Cp,formatRgb:Gf,toString:Gf}));function _u(){return`#${wo(this.r)}${wo(this.g)}${wo(this.b)}`}function Cp(){return`#${wo(this.r)}${wo(this.g)}${wo(this.b)}${wo((isNaN(this.opacity)?1:this.opacity)*255)}`}function Gf(){const r=yc(this.opacity);return`${r===1?"rgb(":"rgba("}${yo(this.r)}, ${yo(this.g)}, ${yo(this.b)}${r===1?")":`, ${r})`}`}function yc(r){return isNaN(r)?1:Math.max(0,Math.min(1,r))}function yo(r){return Math.max(0,Math.min(255,Math.round(r)||0))}function wo(r){return r=yo(r),(r<16?"0":"")+r.toString(16)}function wc(r,t,e,n){return n<=0?r=t=e=NaN:e<=0||e>=1?r=t=NaN:t<=0&&(r=NaN),new Sa(r,t,e,n)}function Kf(r){if(r instanceof Sa)return new Sa(r.h,r.s,r.l,r.opacity);if(r instanceof oA||(r=pc(r)),!r)return new Sa;if(r instanceof Sa)return r;r=r.rgb();var t=r.r/255,e=r.g/255,n=r.b/255,i=Math.min(t,e,n),a=Math.max(t,e,n),s=NaN,o=a-i,A=(a+i)/2;return o?(t===a?s=(e-n)/o+(e<n)*6:e===a?s=(n-t)/o+2:s=(t-e)/o+4,o/=A<.5?a+i:2-a-i,s*=60):o=A>0&&A<1?0:s,new Sa(s,o,A,r.opacity)}function Hu(r,t,e,n){return arguments.length===1?Kf(r):new Sa(r,t,e,n==null?1:n)}function Sa(r,t,e,n){this.h=+r,this.s=+t,this.l=+e,this.opacity=+n}mo(Sa,Hu,ja(oA,{brighter(r){return r=r==null?YA:Math.pow(YA,r),new Sa(this.h,this.s,this.l*r,this.opacity)},darker(r){return r=r==null?AA:Math.pow(AA,r),new Sa(this.h,this.s,this.l*r,this.opacity)},rgb(){var r=this.h%360+(this.h<0)*360,t=isNaN(r)||isNaN(this.s)?0:this.s,e=this.l,n=e+(e<.5?e:1-e)*t,i=2*e-n;return new ki(cA(r>=240?r-240:r+120,i,n),cA(r,i,n),cA(r<120?r+240:r-120,i,n),this.opacity)},clamp(){return new Sa(Me(this.h),ds(this.s),ds(this.l),yc(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 r=yc(this.opacity);return`${r===1?"hsl(":"hsla("}${Me(this.h)}, ${ds(this.s)*100}%, ${ds(this.l)*100}%${r===1?")":`, ${r})`}`}}));function Me(r){return r=(r||0)%360,r<0?r+360:r}function ds(r){return Math.max(0,Math.min(1,r||0))}function cA(r,t,e){return(r<60?t+(e-t)*r/60:r<180?e:r<240?t+(e-t)*(240-r)/60:t)*255}function Ln(r,t){if(typeof r!="function"||t!=null&&typeof t!="function")throw new TypeError("Expected a function");var e=function(){for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];var o=t?t.apply(this,a):a[0],A=e.cache;if(A.has(o))return A.get(o);var l=r.apply(this,a);return e.cache=A.set(o,l)||A,l};return e.cache=new(Ln.Cache||Map),Ln.cacheList.push(e.cache),e}Ln.Cache=Map,Ln.cacheList=[],Ln.clearCache=function(){Ln.cacheList.forEach(function(r){return r.clear()})};var ve=function(r){return r[r.kUnknown=0]="kUnknown",r[r.kNumber=1]="kNumber",r[r.kPercentage=2]="kPercentage",r[r.kEms=3]="kEms",r[r.kPixels=4]="kPixels",r[r.kRems=5]="kRems",r[r.kDegrees=6]="kDegrees",r[r.kRadians=7]="kRadians",r[r.kGradians=8]="kGradians",r[r.kTurns=9]="kTurns",r[r.kMilliseconds=10]="kMilliseconds",r[r.kSeconds=11]="kSeconds",r[r.kInteger=12]="kInteger",r}({}),hn=function(r){return r[r.kUNumber=0]="kUNumber",r[r.kUPercent=1]="kUPercent",r[r.kULength=2]="kULength",r[r.kUAngle=3]="kUAngle",r[r.kUTime=4]="kUTime",r[r.kUOther=5]="kUOther",r}({}),Ar=function(r){return r[r.kYes=0]="kYes",r[r.kNo=1]="kNo",r}({}),Ec=function(r){return r[r.kYes=0]="kYes",r[r.kNo=1]="kNo",r}({}),Sp=[{name:"em",unit_type:ve.kEms},{name:"px",unit_type:ve.kPixels},{name:"deg",unit_type:ve.kDegrees},{name:"rad",unit_type:ve.kRadians},{name:"grad",unit_type:ve.kGradians},{name:"ms",unit_type:ve.kMilliseconds},{name:"s",unit_type:ve.kSeconds},{name:"rem",unit_type:ve.kRems},{name:"turn",unit_type:ve.kTurns}],gs=function(r){return r[r.kUnknownType=0]="kUnknownType",r[r.kUnparsedType=1]="kUnparsedType",r[r.kKeywordType=2]="kKeywordType",r[r.kUnitType=3]="kUnitType",r[r.kSumType=4]="kSumType",r[r.kProductType=5]="kProductType",r[r.kNegateType=6]="kNegateType",r[r.kInvertType=7]="kInvertType",r[r.kMinType=8]="kMinType",r[r.kMaxType=9]="kMaxType",r[r.kClampType=10]="kClampType",r[r.kTransformType=11]="kTransformType",r[r.kPositionType=12]="kPositionType",r[r.kURLImageType=13]="kURLImageType",r[r.kColorType=14]="kColorType",r[r.kUnsupportedColorType=15]="kUnsupportedColorType",r}({}),Mp=function(t){return Sp.find(function(e){return e.name===t}).unit_type},Bc=function(t){return t?t==="number"?ve.kNumber:t==="percent"||t==="%"?ve.kPercentage:Mp(t):ve.kUnknown},Tp=function(t){switch(t){case ve.kNumber:case ve.kInteger:return hn.kUNumber;case ve.kPercentage:return hn.kUPercent;case ve.kPixels:return hn.kULength;case ve.kMilliseconds:case ve.kSeconds:return hn.kUTime;case ve.kDegrees:case ve.kRadians:case ve.kGradians:case ve.kTurns:return hn.kUAngle;default:return hn.kUOther}},Fp=function(t){switch(t){case hn.kUNumber:return ve.kNumber;case hn.kULength:return ve.kPixels;case hn.kUPercent:return ve.kPercentage;case hn.kUTime:return ve.kSeconds;case hn.kUAngle:return ve.kDegrees;default:return ve.kUnknown}},Gu=function(t){var e=1;switch(t){case ve.kPixels:case ve.kDegrees:case ve.kSeconds:break;case ve.kMilliseconds:e=.001;break;case ve.kRadians:e=180/Math.PI;break;case ve.kGradians:e=.9;break;case ve.kTurns:e=360;break}return e},Ku=function(t){switch(t){case ve.kNumber:case ve.kInteger:return"";case ve.kPercentage:return"%";case ve.kEms:return"em";case ve.kRems:return"rem";case ve.kPixels:return"px";case ve.kDegrees:return"deg";case ve.kRadians:return"rad";case ve.kGradians:return"grad";case ve.kMilliseconds:return"ms";case ve.kSeconds:return"s";case ve.kTurns:return"turn"}return""},JA=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"toString",value:function(){return this.buildCSSText(Ar.kNo,Ec.kNo,"")}},{key:"isNumericValue",value:function(){return this.getType()>=gs.kUnitType&&this.getType()<=gs.kClampType}}],[{key:"isAngle",value:function(e){return e===ve.kDegrees||e===ve.kRadians||e===ve.kGradians||e===ve.kTurns}},{key:"isLength",value:function(e){return e>=ve.kEms&&e<ve.kDegrees}},{key:"isRelativeUnit",value:function(e){return e===ve.kPercentage||e===ve.kEms||e===ve.kRems}},{key:"isTime",value:function(e){return e===ve.kSeconds||e===ve.kMilliseconds}}])}(),Op=function(r){function t(e){var n;return(0,N.Z)(this,t),n=(0,U.Z)(this,t),n.colorSpace=e,n}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"getType",value:function(){return gs.kColorType}},{key:"to",value:function(n){return this}}])}(JA),vs=function(r){return r[r.Constant=0]="Constant",r[r.LinearGradient=1]="LinearGradient",r[r.RadialGradient=2]="RadialGradient",r}({}),qA=function(r){function t(e,n){var i;return(0,N.Z)(this,t),i=(0,U.Z)(this,t),i.type=e,i.value=n,i}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"clone",value:function(){return new t(this.type,this.value)}},{key:"buildCSSText",value:function(n,i,a){return a}},{key:"getType",value:function(){return gs.kColorType}}])}(JA),Qi=function(r){function t(e){var n;return(0,N.Z)(this,t),n=(0,U.Z)(this,t),n.value=e,n}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"clone",value:function(){return new t(this.value)}},{key:"getType",value:function(){return gs.kKeywordType}},{key:"buildCSSText",value:function(n,i,a){return a+this.value}}])}(JA),zf=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",n="";return Number.isFinite(t)?n="NaN":t>0?n="infinity":n="-infinity",n+=e},zu=function(t){return Fp(Tp(t))},Hn=function(r){function t(e){var n,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ve.kNumber;(0,N.Z)(this,t),n=(0,U.Z)(this,t);var a;return typeof i=="string"?a=Bc(i):a=i,n.unit=a,n.value=e,n}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"clone",value:function(){return new t(this.value,this.unit)}},{key:"equals",value:function(n){var i=n;return this.value===i.value&&this.unit===i.unit}},{key:"getType",value:function(){return gs.kUnitType}},{key:"convertTo",value:function(n){if(this.unit===n)return new t(this.value,this.unit);var i=zu(this.unit);if(i!==zu(n)||i===ve.kUnknown)return null;var a=Gu(this.unit)/Gu(n);return new t(this.value*a,n)}},{key:"buildCSSText",value:function(n,i,a){var s;switch(this.unit){case ve.kUnknown:break;case ve.kInteger:s=Number(this.value).toFixed(0);break;case ve.kNumber:case ve.kPercentage:case ve.kEms:case ve.kRems:case ve.kPixels:case ve.kDegrees:case ve.kRadians:case ve.kGradians:case ve.kMilliseconds:case ve.kSeconds:case ve.kTurns:{var o=-999999,A=999999,l=this.value,c=Ku(this.unit);if(l<o||l>A){var u=Ku(this.unit);!Number.isFinite(l)||Number.isNaN(l)?s=zf(l,u):s=l+(u||"")}else s="".concat(l).concat(c)}}return a+=s,a}}])}(JA),Ma=new Hn(0,"px");new Hn(1,"px");var Eo=new Hn(0,"deg"),Vu=function(r){function t(e,n,i){var a,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;return(0,N.Z)(this,t),a=(0,U.Z)(this,t,["rgb"]),a.r=e,a.g=n,a.b=i,a.alpha=s,a.isNone=o,a}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"clone",value:function(){return new t(this.r,this.g,this.b,this.alpha)}},{key:"buildCSSText",value:function(n,i,a){return"".concat(a,"rgba(").concat(this.r,",").concat(this.g,",").concat(this.b,",").concat(this.alpha,")")}}])}(Op),$A=new Qi("unset"),la=new Qi("initial"),Vf=new Qi("inherit"),uA={"":$A,unset:$A,initial:la,inherit:Vf},Ip=function(t){return uA[t]||(uA[t]=new Qi(t)),uA[t]},Wf=new Vu(0,0,0,0,!0),bc=new Vu(0,0,0,0),hA=Ln(function(r,t,e,n){return new Vu(r,t,e,n)},function(r,t,e,n){return"rgba(".concat(r,",").concat(t,",").concat(e,",").concat(n,")")}),Xn=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:ve.kNumber;return new Hn(t,e)};new Hn(50,"%");function Lp(r){var t=r.type,e=r.value;return t==="hex"?"#".concat(e):t==="literal"?e:t==="rgb"?"rgb(".concat(e.join(","),")"):"rgba(".concat(e.join(","),")")}var fA=function(){var r={linearGradient:/^(linear\-gradient)/i,repeatingLinearGradient:/^(repeating\-linear\-gradient)/i,radialGradient:/^(radial\-gradient)/i,repeatingRadialGradient:/^(repeating\-radial\-gradient)/i,conicGradient:/^(conic\-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest\-side|closest\-corner|farthest\-side|farthest\-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))px/,percentageValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))\%/,emValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))em/,angleValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))deg/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^\#([0-9a-fA-F]+)/,literalColor:/^([a-zA-Z]+)/,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,number:/^(([0-9]*\.[0-9]+)|([0-9]+\.?))/},t="";function e(Rt){throw new Error("".concat(t,": ").concat(Rt))}function n(){var Rt=i();return t.length>0&&e("Invalid input not EOF"),Rt}function i(){return C(a)}function a(){return s("linear-gradient",r.linearGradient,A)||s("repeating-linear-gradient",r.repeatingLinearGradient,A)||s("radial-gradient",r.radialGradient,u)||s("repeating-radial-gradient",r.repeatingRadialGradient,u)||s("conic-gradient",r.conicGradient,u)}function s(Rt,St,Ot){return o(St,function(Gt){var qt=Ot();return qt&&(Ct(r.comma)||e("Missing comma before color stops")),{type:Rt,orientation:qt,colorStops:C(I)}})}function o(Rt,St){var Ot=Ct(Rt);if(Ot){Ct(r.startCall)||e("Missing (");var Gt=St(Ot);return Ct(r.endCall)||e("Missing )"),Gt}}function A(){return l()||c()}function l(){return wt("directional",r.sideOrCorner,1)}function c(){return wt("angular",r.angleValue,1)}function u(){var Rt,St=h(),Ot;return St&&(Rt=[],Rt.push(St),Ot=t,Ct(r.comma)&&(St=h(),St?Rt.push(St):t=Ot)),Rt}function h(){var Rt=f()||d();if(Rt)Rt.at=v();else{var St=g();if(St){Rt=St;var Ot=v();Ot&&(Rt.at=Ot)}else{var Gt=y();Gt&&(Rt={type:"default-radial",at:Gt})}}return Rt}function f(){var Rt=wt("shape",/^(circle)/i,0);return Rt&&(Rt.style=pt()||g()),Rt}function d(){var Rt=wt("shape",/^(ellipse)/i,0);return Rt&&(Rt.style=at()||g()),Rt}function g(){return wt("extent-keyword",r.extentKeywords,1)}function v(){if(wt("position",/^at/,0)){var Rt=y();return Rt||e("Missing positioning value"),Rt}}function y(){var Rt=E();if(Rt.x||Rt.y)return{type:"position",value:Rt}}function E(){return{x:at(),y:at()}}function C(Rt){var St=Rt(),Ot=[];if(St)for(Ot.push(St);Ct(r.comma);)St=Rt(),St?Ot.push(St):e("One extra comma");return Ot}function I(){var Rt=R();return Rt||e("Expected color definition"),Rt.length=at(),Rt}function R(){return W()||J()||V()||K()}function K(){return wt("literal",r.literalColor,0)}function W(){return wt("hex",r.hexColor,1)}function V(){return o(r.rgbColor,function(){return{type:"rgb",value:C(et)}})}function J(){return o(r.rgbaColor,function(){return{type:"rgba",value:C(et)}})}function et(){return Ct(r.number)[1]}function at(){return wt("%",r.percentageValue,1)||ct()||pt()}function ct(){return wt("position-keyword",r.positionKeywords,1)}function pt(){return wt("px",r.pixelValue,1)||wt("em",r.emValue,1)}function wt(Rt,St,Ot){var Gt=Ct(St);if(Gt)return{type:Rt,value:Gt[Ot]}}function Ct(Rt){var St=/^[\n\r\t\s]+/.exec(t);St&&Ht(St[0].length);var Ot=Rt.exec(t);return Ot&&Ht(Ot[0].length),Ot}function Ht(Rt){t=t.substring(Rt)}return function(Rt){return t=Rt,n()}}();function Np(r,t,e,n){var i=Un(n.value),a=0,s=0,o=a+t/2,A=s+e/2,l=Math.abs(t*Math.cos(i))+Math.abs(e*Math.sin(i)),c=r[0]+o-Math.cos(i)*l/2,u=r[1]+A-Math.sin(i)*l/2,h=r[0]+o+Math.cos(i)*l/2,f=r[1]+A+Math.sin(i)*l/2;return{x1:c,y1:u,x2:h,y2:f}}function kp(r,t,e,n,i,a){var s=n.value,o=i.value;n.unit===ve.kPercentage&&(s=n.value/100*t),i.unit===ve.kPercentage&&(o=i.value/100*e);var A=Math.max(Li([0,0],[s,o]),Li([0,e],[s,o]),Li([t,e],[s,o]),Li([t,0],[s,o]));return a&&(a instanceof Hn?A=a.value:a instanceof Qi&&(a.value==="closest-side"?A=Math.min(s,t-s,o,e-o):a.value==="farthest-side"?A=Math.max(s,t-s,o,e-o):a.value==="closest-corner"&&(A=Math.min(Li([0,0],[s,o]),Li([0,e],[s,o]),Li([t,e],[s,o]),Li([t,0],[s,o]))))),{x:s+r[0],y:o+r[1],r:A}}var Zf=/^l\s*\(\s*([\d.]+)\s*\)\s*(.*)/i,Qp=/^r\s*\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)\s*(.*)/i,jf=/^p\s*\(\s*([axyn])\s*\)\s*(.*)/i,Yf=/[\d.]+:(#[^\s]+|[^\)]+\))/gi;function Up(r){var t,e=r.length;if(r[e-1].length=(t=r[e-1].length)!==null&&t!==void 0?t:{type:"%",value:"100"},e>1){var n;r[0].length=(n=r[0].length)!==null&&n!==void 0?n:{type:"%",value:"0"}}for(var i=0,a=Number(r[0].length.value),s=1;s<e;s++){var o,A=(o=r[s].length)===null||o===void 0?void 0:o.value;if(!Pe(A)&&!Pe(a)){for(var l=1;l<s-i;l++)r[i+l].length={type:"%",value:"".concat(a+(Number(A)-a)*l/(s-i))};i=s,a=Number(A)}}}var Pp={left:180,top:-90,bottom:90,right:0,"left top":225,"top left":225,"left bottom":135,"bottom left":135,"right top":-45,"top right":-45,"right bottom":45,"bottom right":45},Dp=Ln(function(r){var t;return r.type==="angular"?t=Number(r.value):t=Pp[r.value]||0,Xn(t,"deg")}),Rp=Ln(function(r){var t=50,e=50,n="%",i="%";if((r==null?void 0:r.type)==="position"){var a=r.value,s=a.x,o=a.y;(s==null?void 0:s.type)==="position-keyword"&&(s.value==="left"?t=0:s.value==="center"?t=50:s.value==="right"?t=100:s.value==="top"?e=0:s.value==="bottom"&&(e=100)),(o==null?void 0:o.type)==="position-keyword"&&(o.value==="left"?t=0:o.value==="center"?e=50:o.value==="right"?t=100:o.value==="top"?e=0:o.value==="bottom"&&(e=100)),((s==null?void 0:s.type)==="px"||(s==null?void 0:s.type)==="%"||(s==null?void 0:s.type)==="em")&&(n=s==null?void 0:s.type,t=Number(s.value)),((o==null?void 0:o.type)==="px"||(o==null?void 0:o.type)==="%"||(o==null?void 0:o.type)==="em")&&(i=o==null?void 0:o.type,e=Number(o.value))}return{cx:Xn(t,n),cy:Xn(e,i)}}),_p=Ln(function(r){if(r.indexOf("linear")>-1||r.indexOf("radial")>-1){var t=fA(r);return t.map(function(o){var A=o.type,l=o.orientation,c=o.colorStops;Up(c);var u=c.map(function(C){return{offset:Xn(Number(C.length.value),"%"),color:Lp(C)}});if(A==="linear-gradient")return new qA(vs.LinearGradient,{angle:l?Dp(l):Eo,steps:u});if(A==="radial-gradient"&&(l||(l=[{type:"shape",value:"circle"}]),l[0].type==="shape"&&l[0].value==="circle")){var h=Rp(l[0].at),f=h.cx,d=h.cy,g;if(l[0].style){var v=l[0].style,y=v.type,E=v.value;y==="extent-keyword"?g=Ip(E):g=Xn(E,y)}return new qA(vs.RadialGradient,{cx:f,cy:d,size:g,steps:u})}})}var e=r[0];if(r[1]==="("||r[2]==="("){if(e==="l"){var n=Zf.exec(r);if(n){var i,a=((i=n[2].match(Yf))===null||i===void 0?void 0:i.map(function(o){return o.split(":")}))||[];return[new qA(vs.LinearGradient,{angle:Xn(parseFloat(n[1]),"deg"),steps:a.map(function(o){var A=(0,Q.Z)(o,2),l=A[0],c=A[1];return{offset:Xn(Number(l)*100,"%"),color:c}})})]}}else if(e==="r"){var s=Hp(r);if(s)if(gn(s))r=s;else return[new qA(vs.RadialGradient,s)]}else if(e==="p")return Gp(r)}});function Hp(r){var t=Qp.exec(r);if(t){var e,n=((e=t[4].match(Yf))===null||e===void 0?void 0:e.map(function(i){return i.split(":")}))||[];return{cx:Xn(50,"%"),cy:Xn(50,"%"),steps:n.map(function(i){var a=(0,Q.Z)(i,2),s=a[0],o=a[1];return{offset:Xn(Number(s)*100,"%"),color:o}})}}return null}function Gp(r){var t=jf.exec(r);if(t){var e=t[1],n=t[2];switch(e){case"a":e="repeat";break;case"x":e="repeat-x";break;case"y":e="repeat-y";break;case"n":e="no-repeat";break;default:e="no-repeat"}return{image:n,repetition:e}}return null}function Yw(r){return!!r.type&&!!r.value}function Bo(r){return r&&!!r.image}function xc(r){return r&&!Pe(r.r)&&!Pe(r.g)&&!Pe(r.b)}var tl=Ln(function(r){if(Bo(r))return(0,D.Z)({repetition:"repeat"},r);if(Pe(r)&&(r=""),r==="transparent")return bc;if(r==="currentColor")r="black";else if(r==="none")return Wf;var t=_p(r);if(t)return t;var e=pc(r),n=[0,0,0,0];return e!==null&&(n[0]=e.r||0,n[1]=e.g||0,n[2]=e.b||0,n[3]=e.opacity),hA.apply(void 0,n)});function Kp(r,t){if(!(!xc(r)||!xc(t)))return[[Number(r.r),Number(r.g),Number(r.b),Number(r.alpha)],[Number(t.r),Number(t.g),Number(t.b),Number(t.alpha)],function(e){var n=e.slice();if(n[3])for(var i=0;i<3;i++)n[i]=Math.round(hr(n[i],0,255));return n[3]=hr(n[3],0,1),"rgba(".concat(n.join(","),")")}]}function el(r,t){if(Pe(t))return Xn(0,"px");if(t="".concat(t).trim().toLowerCase(),isFinite(Number(t))){if("px".search(r)>=0)return Xn(Number(t),"px");if("deg".search(r)>=0)return Xn(Number(t),"deg")}var e=[];t=t.replace(r,function(i){return e.push(i),"U".concat(i)});var n="U(".concat(r.source,")");return e.map(function(i){return Xn(Number(t.replace(new RegExp("U".concat(i),"g"),"").replace(new RegExp(n,"g"),"*0")),i)})[0]}var w=function(t){return el(new RegExp("px","g"),t)},p=Ln(w),b=function(t){return el(new RegExp("%","g"),t)};Ln(b);var B=function(t){return we(t)||isFinite(Number(t))?Xn(Number(t)||0,"px"):el(new RegExp("px|%|em|rem","g"),t)},G=Ln(B),Y=function(t){return el(new RegExp("deg|rad|grad|turn","g"),t)},it=Ln(Y);function vt(r,t,e,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,a="",s=r.value||0,o=t.value||0,A=zu(r.unit),l=r.convertTo(A),c=t.convertTo(A);return l&&c?(s=l.value,o=c.value,a=Ku(r.unit)):(Hn.isLength(r.unit)||Hn.isLength(t.unit))&&(s=It(r,i,e),o=It(t,i,e),a="px"),[s,o,function(u){return n&&(u=Math.max(u,0)),u+a}]}function ut(r){var t=0;return r.unit===ve.kDegrees?t=r.value:r.unit===ve.kRadians?t=Bi(Number(r.value)):r.unit===ve.kTurns?t=Nf(Number(r.value)):r.value&&(t=r.value),t}function Ft(r,t){var e;return Array.isArray(r)?e=r.map(function(n){return Number(n)}):gn(r)?e=r.split(" ").map(function(n){return Number(n)}):we(r)&&(e=[r]),t===2?e.length===1?[e[0],e[0]]:[e[0],e[1]]:t===4?e.length===1?[e[0],e[0],e[0],e[0]]:e.length===2?[e[0],e[1],e[0],e[1]]:e.length===3?[e[0],e[1],e[2],e[1]]:[e[0],e[1],e[2],e[3]]:t==="even"&&e.length%2===1?[].concat((0,k.Z)(e),(0,k.Z)(e)):e}function It(r,t,e){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(r.unit===ve.kPixels)return Number(r.value);if(r.unit===ve.kPercentage&&e){var i=e.nodeName===Zt.GROUP?e.getLocalBounds():e.getGeometryBounds();return(n?i.min[t]:0)+r.value/100*i.halfExtents[t]*2}return 0}var _t=function(t){return el(/deg|rad|grad|turn|px|%/g,t)},te=["blur","brightness","drop-shadow","contrast","grayscale","sepia","saturate","hue-rotate","invert"];function Oe(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";if(r=r.toLowerCase().trim(),r==="none")return[];for(var t=/\s*([\w-]+)\(([^)]*)\)/g,e=[],n,i=0;n=t.exec(r);){if(n.index!==i)return[];if(i=n.index+n[0].length,te.indexOf(n[1])>-1&&e.push({name:n[1],params:n[2].split(" ").map(function(a){return _t(a)||tl(a)})}),t.lastIndex===r.length)return e}return[]}function ge(r){return r.toString()}var be=function(t){return typeof t=="number"?Xn(t):/^\s*[-+]?(\d*\.)?\d+\s*$/.test(t)?Xn(Number(t)):Xn(0)},sn=Ln(be);Ln(function(r){return gn(r)?r.split(" ").map(sn):r.map(sn)});function Ue(r,t){return[r,t,ge]}function Ne(r,t){return function(e,n){return[e,n,function(i){return ge(hr(i,r,t))}]}}function Mn(r,t){if(r.length===t.length)return[r,t,function(e){return e}]}function ln(r){return r.parsedStyle.d.totalLength===0&&(r.parsedStyle.d.totalLength=Q0(r.parsedStyle.d.absolutePath)),r.parsedStyle.d.totalLength}function Xe(r){return r.parsedStyle.points.totalLength===0&&(r.parsedStyle.points.totalLength=Lu(r.parsedStyle.points.points)),r.parsedStyle.points.totalLength}function Fe(r){for(var t=0;t<r.length;t++){var e=r[t-1],n=r[t],i=n[0];if(i==="M"&&e){var a=e[0],s=[n[1],n[2]],o=void 0;a==="L"||a==="M"?o=[e[1],e[2]]:(a==="C"||a==="A"||a==="Q")&&(o=[e[e.length-2],e[e.length-1]]),o&&Ze(s,o)&&(r.splice(t,1),t--)}}}function bn(r){for(var t=!1,e=r.length,n=0;n<e;n++){var i=r[n],a=i[0];if(a==="C"||a==="A"||a==="Q"){t=!0;break}}return t}function xn(r){for(var t=[],e=[],n=[],i=0;i<r.length;i++){var a=r[i],s=a[0];s==="M"?(n.length&&(e.push(n),n=[]),n.push([a[1],a[2]])):s==="Z"?n.length&&(t.push(n),n=[]):n.push([a[1],a[2]])}return n.length>0&&e.push(n),{polygons:t,polylines:e}}function Ze(r,t){return r[0]===t[0]&&r[1]===t[1]}function Or(r,t){for(var e=[],n=[],i=[],a=0;a<r.length;a++){var s=r[a],o=s.currentPoint,A=s.params,l=s.prePoint,c=void 0;switch(s.command){case"Q":c=ni(l[0],l[1],A[1],A[2],A[3],A[4]);break;case"C":c=Bf(l[0],l[1],A[1],A[2],A[3],A[4],A[5],A[6]);break;case"A":var u=s.arcParams;c=np(u.cx,u.cy,u.rx,u.ry,u.xRotation,u.startAngle,u.endAngle);break;default:e.push(o[0]),n.push(o[1]);break}c&&(s.box=c,e.push(c.x,c.x+c.width),n.push(c.y,c.y+c.height)),t&&(s.command==="L"||s.command==="M")&&s.prePoint&&s.nextPoint&&i.push(s)}e=e.filter(function(I){return!Number.isNaN(I)&&I!==1/0&&I!==-1/0}),n=n.filter(function(I){return!Number.isNaN(I)&&I!==1/0&&I!==-1/0});var h=Xl(e),f=Xl(n),d=Jl(e),g=Jl(n);if(i.length===0)return{x:h,y:f,width:d-h,height:g-f};for(var v=0;v<i.length;v++){var y=i[v],E=y.currentPoint,C=void 0;E[0]===h?(C=ai(y,t),h-=C.xExtra):E[0]===d&&(C=ai(y,t),d+=C.xExtra),E[1]===f?(C=ai(y,t),f-=C.yExtra):E[1]===g&&(C=ai(y,t),g+=C.yExtra)}return{x:h,y:f,width:d-h,height:g-f}}function ai(r,t){var e=r.prePoint,n=r.currentPoint,i=r.nextPoint,a=Math.pow(n[0]-e[0],2)+Math.pow(n[1]-e[1],2),s=Math.pow(n[0]-i[0],2)+Math.pow(n[1]-i[1],2),o=Math.pow(e[0]-i[0],2)+Math.pow(e[1]-i[1],2),A=Math.acos((a+s-o)/(2*Math.sqrt(a)*Math.sqrt(s)));if(!A||Math.sin(A)===0||Xo(A,0))return{xExtra:0,yExtra:0};var l=Math.abs(Math.atan2(i[1]-n[1],i[0]-n[0])),c=Math.abs(Math.atan2(i[0]-n[0],i[1]-n[1]));l=l>Math.PI/2?Math.PI-l:l,c=c>Math.PI/2?Math.PI-c:c;var u={xExtra:Math.cos(A/2-l)*(t/2*(1/Math.sin(A/2)))-t/2||0,yExtra:Math.cos(c-A/2)*(t/2*(1/Math.sin(A/2)))-t/2||0};return u}function Ui(r,t){return[t[0]+(t[0]-r[0]),t[1]+(t[1]-r[1])]}var zn=function(t,e){var n=t.x*e.x+t.y*e.y,i=Math.sqrt((Math.pow(t.x,2)+Math.pow(t.y,2))*(Math.pow(e.x,2)+Math.pow(e.y,2))),a=t.x*e.y-t.y*e.x<0?-1:1,s=a*Math.acos(n/i);return s},Vr=function(t,e,n,i,a,s,o,A){e=Math.abs(e),n=Math.abs(n),i=lf(i,360);var l=Un(i);if(t.x===o.x&&t.y===o.y)return{x:t.x,y:t.y,ellipticalArcAngle:0};if(e===0||n===0)return{x:0,y:0,ellipticalArcAngle:0};var c=(t.x-o.x)/2,u=(t.y-o.y)/2,h={x:Math.cos(l)*c+Math.sin(l)*u,y:-Math.sin(l)*c+Math.cos(l)*u},f=Math.pow(h.x,2)/Math.pow(e,2)+Math.pow(h.y,2)/Math.pow(n,2);f>1&&(e*=Math.sqrt(f),n*=Math.sqrt(f));var d=Math.pow(e,2)*Math.pow(n,2)-Math.pow(e,2)*Math.pow(h.y,2)-Math.pow(n,2)*Math.pow(h.x,2),g=Math.pow(e,2)*Math.pow(h.y,2)+Math.pow(n,2)*Math.pow(h.x,2),v=d/g;v=v<0?0:v;var y=(a!==s?1:-1)*Math.sqrt(v),E={x:y*(e*h.y/n),y:y*(-(n*h.x)/e)},C={x:Math.cos(l)*E.x-Math.sin(l)*E.y+(t.x+o.x)/2,y:Math.sin(l)*E.x+Math.cos(l)*E.y+(t.y+o.y)/2},I={x:(h.x-E.x)/e,y:(h.y-E.y)/n},R=zn({x:1,y:0},I),K={x:(-h.x-E.x)/e,y:(-h.y-E.y)/n},W=zn(I,K);!s&&W>0?W-=2*Math.PI:s&&W<0&&(W+=2*Math.PI),W%=2*Math.PI;var V=R+W*A,J=e*Math.cos(V),et=n*Math.sin(V),at={x:Math.cos(l)*J-Math.sin(l)*et+C.x,y:Math.sin(l)*J+Math.cos(l)*et+C.y,ellipticalArcStartAngle:R,ellipticalArcEndAngle:R+W,ellipticalArcAngle:V,ellipticalArcCenter:C,resultantRx:e,resultantRy:n};return at};function Ws(r){for(var t=[],e=null,n=null,i=null,a=0,s=r.length,o=0;o<s;o++){var A=r[o];n=r[o+1];var l=A[0],c={command:l,prePoint:e,params:A,startTangent:null,endTangent:null,currentPoint:null,nextPoint:null,arcParams:null,box:null,cubicParams:null};switch(l){case"M":i=[A[1],A[2]],a=o;break;case"A":var u=Zs(e,A);c.arcParams=u;break}if(l==="Z")e=i,n=r[a+1];else{var h=A.length;e=[A[h-2],A[h-1]]}n&&n[0]==="Z"&&(n=r[a],t[a]&&(t[a].prePoint=e)),c.currentPoint=e,t[a]&&Ze(e,t[a].currentPoint)&&(t[a].prePoint=c.prePoint);var f=n?[n[n.length-2],n[n.length-1]]:null;c.nextPoint=f;var d=c.prePoint;if(["L","H","V"].includes(l))c.startTangent=[d[0]-e[0],d[1]-e[1]],c.endTangent=[e[0]-d[0],e[1]-d[1]];else if(l==="Q"){var g=[A[1],A[2]];c.startTangent=[d[0]-g[0],d[1]-g[1]],c.endTangent=[e[0]-g[0],e[1]-g[1]]}else if(l==="T"){var v=t[o-1],y=Ui(v.currentPoint,d);v.command==="Q"?(c.command="Q",c.startTangent=[d[0]-y[0],d[1]-y[1]],c.endTangent=[e[0]-y[0],e[1]-y[1]]):(c.command="TL",c.startTangent=[d[0]-e[0],d[1]-e[1]],c.endTangent=[e[0]-d[0],e[1]-d[1]])}else if(l==="C"){var E=[A[1],A[2]],C=[A[3],A[4]];c.startTangent=[d[0]-E[0],d[1]-E[1]],c.endTangent=[e[0]-C[0],e[1]-C[1]],c.startTangent[0]===0&&c.startTangent[1]===0&&(c.startTangent=[E[0]-C[0],E[1]-C[1]]),c.endTangent[0]===0&&c.endTangent[1]===0&&(c.endTangent=[C[0]-E[0],C[1]-E[1]])}else if(l==="S"){var I=t[o-1],R=Ui(I.currentPoint,d),K=[A[1],A[2]];I.command==="C"?(c.command="C",c.startTangent=[d[0]-R[0],d[1]-R[1]],c.endTangent=[e[0]-K[0],e[1]-K[1]]):(c.command="SQ",c.startTangent=[d[0]-K[0],d[1]-K[1]],c.endTangent=[e[0]-K[0],e[1]-K[1]])}else if(l==="A"){var W=bi(c,0),V=W.x,J=W.y,et=bi(c,1,!1),at=et.x,ct=et.y;c.startTangent=[V,J],c.endTangent=[at,ct]}t.push(c)}return t}function bi(r,t){var e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,n=r.arcParams,i=n.rx,a=i===void 0?0:i,s=n.ry,o=s===void 0?0:s,A=n.xRotation,l=n.arcFlag,c=n.sweepFlag,u=Vr({x:r.prePoint[0],y:r.prePoint[1]},a,o,A,!!l,!!c,{x:r.currentPoint[0],y:r.currentPoint[1]},t),h=Vr({x:r.prePoint[0],y:r.prePoint[1]},a,o,A,!!l,!!c,{x:r.currentPoint[0],y:r.currentPoint[1]},e?t+.005:t-.005),f=h.x-u.x,d=h.y-u.y,g=Math.sqrt(f*f+d*d);return{x:-f/g,y:-d/g}}function si(r){return Math.sqrt(r[0]*r[0]+r[1]*r[1])}function ps(r,t){return si(r)*si(t)?(r[0]*t[0]+r[1]*t[1])/(si(r)*si(t)):1}function Ta(r,t){return(r[0]*t[1]<r[1]*t[0]?-1:1)*Math.acos(ps(r,t))}function Zs(r,t){var e=t[1],n=t[2],i=lf(Un(t[3]),Math.PI*2),a=t[4],s=t[5],o=r[0],A=r[1],l=t[6],c=t[7],u=Math.cos(i)*(o-l)/2+Math.sin(i)*(A-c)/2,h=-1*Math.sin(i)*(o-l)/2+Math.cos(i)*(A-c)/2,f=u*u/(e*e)+h*h/(n*n);f>1&&(e*=Math.sqrt(f),n*=Math.sqrt(f));var d=e*e*(h*h)+n*n*(u*u),g=d?Math.sqrt((e*e*(n*n)-d)/d):1;a===s&&(g*=-1),isNaN(g)&&(g=0);var v=n?g*e*h/n:0,y=e?g*-n*u/e:0,E=(o+l)/2+Math.cos(i)*v-Math.sin(i)*y,C=(A+c)/2+Math.sin(i)*v+Math.cos(i)*y,I=[(u-v)/e,(h-y)/n],R=[(-1*u-v)/e,(-1*h-y)/n],K=Ta([1,0],I),W=Ta(I,R);return ps(I,R)<=-1&&(W=Math.PI),ps(I,R)>=1&&(W=0),s===0&&W>0&&(W-=2*Math.PI),s===1&&W<0&&(W+=2*Math.PI),{cx:E,cy:C,rx:Ze(r,[l,c])?0:e,ry:Ze(r,[l,c])?0:n,startAngle:K,endAngle:K+W,xRotation:i,arcFlag:a,sweepFlag:s}}function bo(r,t,e){return r.reduce(function(n,i){var a="";if(i[0]==="M"||i[0]==="L"){var s=vec3.fromValues(i[1],i[2],0);e&&vec3.transformMat4(s,s,e),a="".concat(i[0]).concat(s[0],",").concat(s[1])}else if(i[0]==="Z")a=i[0];else if(i[0]==="C"){var o=vec3.fromValues(i[1],i[2],0),A=vec3.fromValues(i[3],i[4],0),l=vec3.fromValues(i[5],i[6],0);e&&(vec3.transformMat4(o,o,e),vec3.transformMat4(A,A,e),vec3.transformMat4(l,l,e)),a="".concat(i[0]).concat(o[0],",").concat(o[1],",").concat(A[0],",").concat(A[1],",").concat(l[0],",").concat(l[1])}else if(i[0]==="A"){var c=vec3.fromValues(i[6],i[7],0);e&&vec3.transformMat4(c,c,e),a="".concat(i[0]).concat(i[1],",").concat(i[2],",").concat(i[3],",").concat(i[4],",").concat(i[5],",").concat(c[0],",").concat(c[1])}else if(i[0]==="Q"){var u=vec3.fromValues(i[1],i[2],0),h=vec3.fromValues(i[3],i[4],0);e&&(vec3.transformMat4(u,u,e),vec3.transformMat4(h,h,e)),a="".concat(i[0]).concat(i[1],",").concat(i[2],",").concat(i[3],",").concat(i[4],"}")}return n+=a},"")}function xo(r,t,e,n){return[["M",r,t],["L",e,n]]}function Ya(r,t,e,n){var i=(-1+Math.sqrt(2))/3*4,a=r*i,s=t*i,o=e-r,A=e+r,l=n-t,c=n+t;return[["M",o,n],["C",o,n-s,e-a,l,e,l],["C",e+a,l,A,n-s,A,n],["C",A,n+s,e+a,c,e,c],["C",e-a,c,o,n+s,o,n],["Z"]]}function Co(r,t){var e=r.map(function(n,i){return[i===0?"M":"L",n[0],n[1]]});return t&&e.push(["Z"]),e}function ms(r,t,e,n,i){if(i){var a=_slicedToArray(i,4),s=a[0],o=a[1],A=a[2],l=a[3],c=r>0?1:-1,u=t>0?1:-1,h=c+u!==0?1:0;return[["M",c*s+e,n],["L",r-c*o+e,n],o?["A",o,o,0,0,h,r+e,u*o+n]:null,["L",r+e,t-u*A+n],A?["A",A,A,0,0,h,r+e-c*A,t+n]:null,["L",e+c*l,t+n],l?["A",l,l,0,0,h,e,t+n-u*l]:null,["L",e,u*s+n],s?["A",s,s,0,0,h,c*s+e,n]:null,["Z"]].filter(function(f){return f})}return[["M",e,n],["L",e+r,n],["L",e+r,n+t],["L",e,n+t],["Z"]]}function nl(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:r.getLocalTransform(),e=[];switch(r.nodeName){case Zt.LINE:var n=r.parsedStyle,i=n.x1,a=i===void 0?0:i,s=n.y1,o=s===void 0?0:s,A=n.x2,l=A===void 0?0:A,c=n.y2,u=c===void 0?0:c;e=xo(a,o,l,u);break;case Zt.CIRCLE:{var h=r.parsedStyle,f=h.r,d=f===void 0?0:f,g=h.cx,v=g===void 0?0:g,y=h.cy,E=y===void 0?0:y;e=Ya(d,d,v,E);break}case Zt.ELLIPSE:{var C=r.parsedStyle,I=C.rx,R=I===void 0?0:I,K=C.ry,W=K===void 0?0:K,V=C.cx,J=V===void 0?0:V,et=C.cy,at=et===void 0?0:et;e=Ya(R,W,J,at);break}case Zt.POLYLINE:case Zt.POLYGON:var ct=r.parsedStyle.points;e=Co(ct.points,r.nodeName===Zt.POLYGON);break;case Zt.RECT:var pt=r.parsedStyle,wt=pt.width,Ct=wt===void 0?0:wt,Ht=pt.height,Rt=Ht===void 0?0:Ht,St=pt.x,Ot=St===void 0?0:St,Gt=pt.y,qt=Gt===void 0?0:Gt,ae=pt.radius,ue=ae&&ae.some(function(Ce){return Ce!==0});e=ms(Ct,Rt,Ot,qt,ue&&ae.map(function(Ce){return clamp(Ce,0,Math.min(Math.abs(Ct)/2,Math.abs(Rt)/2))}));break;case Zt.PATH:var pe=r.parsedStyle.d.absolutePath;e=_toConsumableArray(pe);break}if(e.length)return bo(e,r,t)}function Cc(r){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,a=r.map(function(s,o){var A=s[0],l=r[o+1],c=o===0&&(t!==0||e!==0),u=(o===r.length-1||l&&(l[0]==="M"||l[0]==="Z"))&&n!==0&&i!==0,h=c?[t,e]:[0,0],f=_slicedToArray(h,2),d=f[0],g=f[1],v=u?[n,i]:[0,0],y=_slicedToArray(v,2),E=y[0],C=y[1];switch(A){case"M":return"M ".concat(s[1]+d,",").concat(s[2]+g);case"L":return"L ".concat(s[1]+E,",").concat(s[2]+C);case"Q":return"Q ".concat(s[1]," ").concat(s[2],",").concat(s[3]+E," ").concat(s[4]+C);case"C":return"C ".concat(s[1]," ").concat(s[2],",").concat(s[3]," ").concat(s[4],",").concat(s[5]+E," ").concat(s[6]+C);case"A":return"A ".concat(s[1]," ").concat(s[2]," ").concat(s[3]," ").concat(s[4]," ").concat(s[5]," ").concat(s[6]," ").concat(s[7]).concat(u?" L ".concat(s[6]+n,",").concat(s[7]+i):"");case"Z":return"Z";default:return null}}).filter(function(s){return s!==null}).join(" ");return~a.indexOf("NaN")?"":a}var Xw=function(t){if(t===""||Array.isArray(t)&&t.length===0)return{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:{x:0,y:0,width:0,height:0}};var e;try{e=Yl(t)}catch(f){e=Yl(""),console.error("[g]: Invalid SVG Path definition: ".concat(t))}Fe(e);var n=bn(e),i=xn(e),a=i.polygons,s=i.polylines,o=Ws(e),A=Or(o,0),l=A.x,c=A.y,u=A.width,h=A.height;return{absolutePath:e,hasArc:n,segments:o,polygons:a,polylines:s,totalLength:0,rect:{x:Number.isFinite(l)?l:0,y:Number.isFinite(c)?c:0,width:Number.isFinite(u)?u:0,height:Number.isFinite(h)?h:0}}},RS=Ln(Xw);function Jw(r){return gn(r)?RS(r):Xw(r)}function _S(r,t,e){var n=r.curve,i=t.curve;(!n||n.length===0)&&(n=Bu(r.absolutePath,!1),r.curve=n),(!i||i.length===0)&&(i=Bu(t.absolutePath,!1),t.curve=i);var a=[n,i];n.length!==i.length&&(a=hf(n,i));var s=ff(a[0])!==ff(a[1])?K0(a[0]):z0(a[0]);return[s,df(a[1],s),function(o){return o}]}function HS(r,t){var e;return gn(r)?e=r.split(" ").map(function(n){var i=n.split(","),a=(0,Q.Z)(i,2),s=a[0],o=a[1];return[Number(s),Number(o)]}):e=r,{points:e,totalLength:0,segments:[]}}function GS(r,t){return[r.points,t.points,function(e){return e}]}var xr=null,Sc=/\s*(\w+)\(([^)]*)\)/g;function ca(r){return function(t){var e=0;return r.map(function(n){return n===xr?t[e++]:n})}}function rl(r){return r}var Wu={matrix:["NNNNNN",[xr,xr,0,0,xr,xr,0,0,0,0,1,0,xr,xr,0,1],rl],matrix3d:["NNNNNNNNNNNNNNNN",rl],rotate:["A"],rotateX:["A"],rotateY:["A"],rotateZ:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",ca([xr,xr,new Hn(1)]),rl],scaleX:["N",ca([xr,new Hn(1),new Hn(1)]),ca([xr,new Hn(1)])],scaleY:["N",ca([new Hn(1),xr,new Hn(1)]),ca([new Hn(1),xr])],scaleZ:["N",ca([new Hn(1),new Hn(1),xr])],scale3d:["NNN",rl],skew:["Aa",null,rl],skewX:["A",null,ca([xr,Eo])],skewY:["A",null,ca([Eo,xr])],translate:["Tt",ca([xr,xr,Ma]),rl],translateX:["T",ca([xr,Ma,Ma]),ca([xr,Ma])],translateY:["T",ca([Ma,xr,Ma]),ca([Ma,xr])],translateZ:["L",ca([Ma,Ma,xr])],translate3d:["TTL",rl]};function qw(r){for(var t=[],e=r.length,n=0;n<e;n++){var i=r[n],a=i[0],s=i.slice(1);a==="translate"||a==="skew"?s.length===1&&s.push(0):a==="scale"&&s.length===1&&s.push(s[0]);var o=Wu[a];if(!o)return[];var A=s.map(function(l){return Xn(l)});t.push({t:a,d:A})}return t}function $w(r){if(Array.isArray(r))return qw(r);if(r=(r||"none").trim(),r==="none")return[];var t=[],e,n=0;for(Sc.lastIndex=0;e=Sc.exec(r);){if(e.index!==n)return[];n=e.index+e[0].length;var i=e[1],a=Wu[i];if(!a)return[];var s=e[2].split(","),o=a[0];if(o.length<s.length)return[];for(var A=[],l=0;l<o.length;l++){var c=s[l],u=o[l],h=void 0;if(c?h={A:function(d){return d.trim()==="0"?Eo:it(d)},N:sn,T:G,L:p}[u.toUpperCase()](c):h={a:Eo,n:A[0],t:Ma}[u],h===void 0)return[];A.push(h)}if(t.push({t:i,d:A}),Sc.lastIndex===r.length)return t}return[]}function KS(r){if(Array.isArray(r))return qw(r);if(r=(r||"none").trim(),r==="none")return[];var t=[],e,n=0;for(Sc.lastIndex=0;e=Sc.exec(r);){if(e.index!==n)return[];n=e.index+e[0].length;var i=e[1],a=Wu[i];if(!a)return[];var s=e[2].split(","),o=a[0];if(o.length<s.length)return[];for(var A=[],l=0;l<o.length;l++){var c=s[l],u=o[l],h=void 0;if(c?h={A:function(d){return d.trim()==="0"?Eo:Y(d)},N:be,T:B,L:w}[u.toUpperCase()](c):h={a:Eo,n:A[0],t:Ma}[u],h===void 0)return[];A.push(h)}if(t.push({t:i,d:A}),Sc.lastIndex===r.length)return t}return[]}function zS(r){var t,e,n,i;switch(r.t){case"rotateX":return i=Un(ut(r.d[0])),[1,0,0,0,0,Math.cos(i),Math.sin(i),0,0,-Math.sin(i),Math.cos(i),0,0,0,0,1];case"rotateY":return i=Un(ut(r.d[0])),[Math.cos(i),0,-Math.sin(i),0,0,1,0,0,Math.sin(i),0,Math.cos(i),0,0,0,0,1];case"rotate":case"rotateZ":return i=Un(ut(r.d[0])),[Math.cos(i),Math.sin(i),0,0,-Math.sin(i),Math.cos(i),0,0,0,0,1,0,0,0,0,1];case"rotate3d":t=r.d[0].value,e=r.d[1].value,n=r.d[2].value,i=Un(ut(r.d[3]));var a=t*t+e*e+n*n;if(a===0)t=1,e=0,n=0;else if(a!==1){var s=Math.sqrt(a);t/=s,e/=s,n/=s}var o=Math.sin(i/2),A=o*Math.cos(i/2),l=o*o;return[1-2*(e*e+n*n)*l,2*(t*e*l+n*A),2*(t*n*l-e*A),0,2*(t*e*l-n*A),1-2*(t*t+n*n)*l,2*(e*n*l+t*A),0,2*(t*n*l+e*A),2*(e*n*l-t*A),1-2*(t*t+e*e)*l,0,0,0,0,1];case"scale":return[r.d[0].value,0,0,0,0,r.d[1].value,0,0,0,0,1,0,0,0,0,1];case"scaleX":return[r.d[0].value,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];case"scaleY":return[1,0,0,0,0,r.d[0].value,0,0,0,0,1,0,0,0,0,1];case"scaleZ":return[1,0,0,0,0,1,0,0,0,0,r.d[0].value,0,0,0,0,1];case"scale3d":return[r.d[0].value,0,0,0,0,r.d[1].value,0,0,0,0,r.d[2].value,0,0,0,0,1];case"skew":var c=Un(ut(r.d[0])),u=Un(ut(r.d[1]));return[1,Math.tan(u),0,0,Math.tan(c),1,0,0,0,0,1,0,0,0,0,1];case"skewX":return i=Un(ut(r.d[0])),[1,0,0,0,Math.tan(i),1,0,0,0,0,1,0,0,0,0,1];case"skewY":return i=Un(ut(r.d[0])),[1,Math.tan(i),0,0,0,1,0,0,0,0,1,0,0,0,0,1];case"translate":return t=It(r.d[0],0,null)||0,e=It(r.d[1],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,t,e,0,1];case"translateX":return t=It(r.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,t,0,0,1];case"translateY":return e=It(r.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,e,0,1];case"translateZ":return n=It(r.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,0,n,1];case"translate3d":return t=It(r.d[0],0,null)||0,e=It(r.d[1],0,null)||0,n=It(r.d[2],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,t,e,n,1];case"perspective":var h=It(r.d[0],0,null)||0,f=h?-1/h:0;return[1,0,0,0,0,1,0,0,0,0,1,f,0,0,0,1];case"matrix":return[r.d[0].value,r.d[1].value,0,0,r.d[2].value,r.d[3].value,0,0,0,0,1,0,r.d[4].value,r.d[5].value,0,1];case"matrix3d":return r.d.map(function(d){return d.value})}}function VS(r,t){return[r[0]*t[0]+r[4]*t[1]+r[8]*t[2]+r[12]*t[3],r[1]*t[0]+r[5]*t[1]+r[9]*t[2]+r[13]*t[3],r[2]*t[0]+r[6]*t[1]+r[10]*t[2]+r[14]*t[3],r[3]*t[0]+r[7]*t[1]+r[11]*t[2]+r[15]*t[3],r[0]*t[4]+r[4]*t[5]+r[8]*t[6]+r[12]*t[7],r[1]*t[4]+r[5]*t[5]+r[9]*t[6]+r[13]*t[7],r[2]*t[4]+r[6]*t[5]+r[10]*t[6]+r[14]*t[7],r[3]*t[4]+r[7]*t[5]+r[11]*t[6]+r[15]*t[7],r[0]*t[8]+r[4]*t[9]+r[8]*t[10]+r[12]*t[11],r[1]*t[8]+r[5]*t[9]+r[9]*t[10]+r[13]*t[11],r[2]*t[8]+r[6]*t[9]+r[10]*t[10]+r[14]*t[11],r[3]*t[8]+r[7]*t[9]+r[11]*t[10]+r[15]*t[11],r[0]*t[12]+r[4]*t[13]+r[8]*t[14]+r[12]*t[15],r[1]*t[12]+r[5]*t[13]+r[9]*t[14]+r[13]*t[15],r[2]*t[12]+r[6]*t[13]+r[10]*t[14]+r[14]*t[15],r[3]*t[12]+r[7]*t[13]+r[11]*t[14]+r[15]*t[15]]}function WS(r){return r.length===0?[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]:r.map(zS).reduce(VS)}function tE(r){var t=[0,0,0],e=[1,1,1],n=[0,0,0],i=[0,0,0,1],a=[0,0,0,1];return Qf(WS(r),t,e,n,i,a),[[t,e,n,a,i]]}var ZS=function(){function r(n,i){for(var a=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],s=0;s<4;s++)for(var o=0;o<4;o++)for(var A=0;A<4;A++)a[s][o]+=i[s][A]*n[A][o];return a}function t(n){return n[0][2]===0&&n[0][3]===0&&n[1][2]===0&&n[1][3]===0&&n[2][0]===0&&n[2][1]===0&&n[2][2]===1&&n[2][3]===0&&n[3][2]===0&&n[3][3]===1}function e(n,i,a,s,o){for(var A=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]],l=0;l<4;l++)A[l][3]=o[l];for(var c=0;c<3;c++)for(var u=0;u<3;u++)A[3][c]+=n[u]*A[u][c];var h=s[0],f=s[1],d=s[2],g=s[3],v=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];v[0][0]=1-2*(f*f+d*d),v[0][1]=2*(h*f-d*g),v[0][2]=2*(h*d+f*g),v[1][0]=2*(h*f+d*g),v[1][1]=1-2*(h*h+d*d),v[1][2]=2*(f*d-h*g),v[2][0]=2*(h*d-f*g),v[2][1]=2*(f*d+h*g),v[2][2]=1-2*(h*h+f*f),A=r(A,v);var y=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];a[2]&&(y[2][1]=a[2],A=r(A,y)),a[1]&&(y[2][1]=0,y[2][0]=a[0],A=r(A,y)),a[0]&&(y[2][0]=0,y[1][0]=a[0],A=r(A,y));for(var E=0;E<3;E++)for(var C=0;C<3;C++)A[E][C]*=i[E];return t(A)?[A[0][0],A[0][1],A[1][0],A[1][1],A[3][0],A[3][1]]:A[0].concat(A[1],A[2],A[3])}return e}();function jS(r){return r.toFixed(6).replace(".000000","")}function zp(r,t){var e,n;return r.decompositionPair!==t&&(r.decompositionPair=t,e=tE(r)),t.decompositionPair!==r&&(t.decompositionPair=r,n=tE(t)),e[0]===null||n[0]===null?[[!1],[!0],function(i){return i?t[0].d:r[0].d}]:(e[0].push(0),n[0].push(1),[e,n,function(i){var a=XS(e[0][3],n[0][3],i[5]),s=ZS(i[0],i[1],i[2],a,i[4]),o=s.map(jS).join(",");return o}])}function YS(r,t){for(var e=0,n=0;n<r.length;n++)e+=r[n]*t[n];return e}function XS(r,t,e){var n=YS(r,t);n=hr(n,-1,1);var i=[];if(n===1)i=r;else for(var a=Math.acos(n),s=Math.sin(e*a)*1/Math.sqrt(1-n*n),o=0;o<4;o++)i.push(r[o]*(Math.cos(e*a)-n*s)+t[o]*s);return i}function Vp(r){return r.replace(/[XY]/,"")}function Wp(r){return r.replace(/(X|Y|Z|3d)?$/,"3d")}var JS=function(t,e){return t==="perspective"&&e==="perspective"||(t==="matrix"||t==="matrix3d")&&(e==="matrix"||e==="matrix3d")};function qS(r,t,e){var n=!1;if(!r.length||!t.length){r.length||(n=!0,r=t,t=[]);for(var i=function(){var at=r[a],ct=at.t,pt=at.d,wt=ct.substring(0,5)==="scale"?1:0;t.push({t:ct,d:pt.map(function(Ct){return typeof Ct=="number"?Xn(wt):Xn(wt,Ct.unit)})})},a=0;a<r.length;a++)i()}var s=[],o=[],A=[];if(r.length!==t.length){var l=zp(r,t);s=[l[0]],o=[l[1]],A=[["matrix",[l[2]]]]}else for(var c=0;c<r.length;c++){var u=r[c].t,h=t[c].t,f=r[c].d,d=t[c].d,g=Wu[u],v=Wu[h],y=void 0;if(JS(u,h)){var E=zp([r[c]],[t[c]]);s.push(E[0]),o.push(E[1]),A.push(["matrix",[E[2]]]);continue}else if(u===h)y=u;else if(g[2]&&v[2]&&Vp(u)===Vp(h))y=Vp(u),f=g[2](f),d=v[2](d);else if(g[1]&&v[1]&&Wp(u)===Wp(h))y=Wp(u),f=g[1](f),d=v[1](d);else{var C=zp(r,t);s=[C[0]],o=[C[1]],A=[["matrix",[C[2]]]];break}for(var I=[],R=[],K=[],W=0;W<f.length;W++){var V=vt(f[W],d[W],e,!1,W);I[W]=V[0],R[W]=V[1],K.push(V[2])}s.push(I),o.push(R),A.push([y,K])}if(n){var J=s;s=o,o=J}return[s,o,function(et){return et.map(function(at,ct){var pt=at.map(function(wt,Ct){return A[ct][1][Ct](wt)}).join(",");return A[ct][0]==="matrix"&&pt.split(",").length===16&&(A[ct][0]="matrix3d"),A[ct][0]==="matrix3d"&&pt.split(",").length===6&&(A[ct][0]="matrix"),"".concat(A[ct][0],"(").concat(pt,")")}).join(" ")}]}var $S=Ln(function(r){if(gn(r)){if(r==="text-anchor")return[Xn(0,"px"),Xn(0,"px")];var t=r.split(" ");return t.length===1&&(t[0]==="top"||t[0]==="bottom"?(t[1]=t[0],t[0]="center"):t[1]="center"),t.length!==2?null:[G(eE(t[0])),G(eE(t[1]))]}return[Xn(r[0]||0,"px"),Xn(r[1]||0,"px")]});function eE(r){return r==="center"?"50%":r==="left"||r==="top"?"0%":r==="right"||r==="bottom"?"100%":r}var Zp=[{n:"display",k:["none"]},{n:"opacity",int:!0,inh:!0,d:"1",syntax:le.OPACITY_VALUE},{n:"fillOpacity",int:!0,inh:!0,d:"1",syntax:le.OPACITY_VALUE},{n:"strokeOpacity",int:!0,inh:!0,d:"1",syntax:le.OPACITY_VALUE},{n:"fill",int:!0,k:["none"],d:"none",syntax:le.PAINT},{n:"fillRule",k:["nonzero","evenodd"],d:"nonzero"},{n:"stroke",int:!0,k:["none"],d:"none",syntax:le.PAINT,l:!0},{n:"shadowType",k:["inner","outer","both"],d:"outer",l:!0},{n:"shadowColor",int:!0,syntax:le.COLOR},{n:"shadowOffsetX",int:!0,l:!0,d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"shadowOffsetY",int:!0,l:!0,d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"shadowBlur",int:!0,l:!0,d:"0",syntax:le.SHADOW_BLUR},{n:"lineWidth",int:!0,inh:!0,d:"1",l:!0,a:["strokeWidth"],syntax:le.LENGTH_PERCENTAGE},{n:"increasedLineWidthForHitTesting",inh:!0,d:"0",l:!0,syntax:le.LENGTH_PERCENTAGE},{n:"lineJoin",inh:!0,l:!0,a:["strokeLinejoin"],k:["miter","bevel","round"],d:"miter"},{n:"lineCap",inh:!0,l:!0,a:["strokeLinecap"],k:["butt","round","square"],d:"butt"},{n:"lineDash",int:!0,inh:!0,k:["none"],a:["strokeDasharray"],syntax:le.LENGTH_PERCENTAGE_12},{n:"lineDashOffset",int:!0,inh:!0,d:"0",a:["strokeDashoffset"],syntax:le.LENGTH_PERCENTAGE},{n:"offsetPath",syntax:le.DEFINED_PATH},{n:"offsetDistance",int:!0,syntax:le.OFFSET_DISTANCE},{n:"dx",int:!0,l:!0,d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"dy",int:!0,l:!0,d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"zIndex",ind:!0,int:!0,d:"0",k:["auto"],syntax:le.Z_INDEX},{n:"visibility",k:["visible","hidden"],ind:!0,inh:!0,int:!0,d:"visible"},{n:"pointerEvents",inh:!0,k:["none","auto","stroke","fill","painted","visible","visiblestroke","visiblefill","visiblepainted","all"],d:"auto"},{n:"filter",ind:!0,l:!0,k:["none"],d:"none",syntax:le.FILTER},{n:"clipPath",syntax:le.DEFINED_PATH},{n:"textPath",syntax:le.DEFINED_PATH},{n:"textPathSide",k:["left","right"],d:"left"},{n:"textPathStartOffset",l:!0,d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"transform",p:100,int:!0,k:["none"],d:"none",syntax:le.TRANSFORM},{n:"transformOrigin",p:100,d:"0 0",l:!0,syntax:le.TRANSFORM_ORIGIN},{n:"cx",int:!0,l:!0,d:"0",syntax:le.COORDINATE},{n:"cy",int:!0,l:!0,d:"0",syntax:le.COORDINATE},{n:"cz",int:!0,l:!0,d:"0",syntax:le.COORDINATE},{n:"r",int:!0,l:!0,d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"rx",int:!0,l:!0,d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"ry",int:!0,l:!0,d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"x",int:!0,l:!0,d:"0",syntax:le.COORDINATE},{n:"y",int:!0,l:!0,d:"0",syntax:le.COORDINATE},{n:"z",int:!0,l:!0,d:"0",syntax:le.COORDINATE},{n:"width",int:!0,l:!0,k:["auto","fit-content","min-content","max-content"],d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"height",int:!0,l:!0,k:["auto","fit-content","min-content","max-content"],d:"0",syntax:le.LENGTH_PERCENTAGE},{n:"radius",int:!0,l:!0,d:"0",syntax:le.LENGTH_PERCENTAGE_14},{n:"x1",int:!0,l:!0,syntax:le.COORDINATE},{n:"y1",int:!0,l:!0,syntax:le.COORDINATE},{n:"z1",int:!0,l:!0,syntax:le.COORDINATE},{n:"x2",int:!0,l:!0,syntax:le.COORDINATE},{n:"y2",int:!0,l:!0,syntax:le.COORDINATE},{n:"z2",int:!0,l:!0,syntax:le.COORDINATE},{n:"d",int:!0,l:!0,d:"",syntax:le.PATH,p:50},{n:"points",int:!0,l:!0,syntax:le.LIST_OF_POINTS,p:50},{n:"text",l:!0,d:"",syntax:le.TEXT,p:50},{n:"textTransform",l:!0,inh:!0,k:["capitalize","uppercase","lowercase","none"],d:"none",syntax:le.TEXT_TRANSFORM,p:51},{n:"font",l:!0},{n:"fontSize",int:!0,inh:!0,d:"16px",l:!0,syntax:le.LENGTH_PERCENTAGE},{n:"fontFamily",l:!0,inh:!0,d:"sans-serif"},{n:"fontStyle",l:!0,inh:!0,k:["normal","italic","oblique"],d:"normal"},{n:"fontWeight",l:!0,inh:!0,k:["normal","bold","bolder","lighter"],d:"normal"},{n:"fontVariant",l:!0,inh:!0,k:["normal","small-caps"],d:"normal"},{n:"lineHeight",l:!0,syntax:le.LENGTH,int:!0,d:"0"},{n:"letterSpacing",l:!0,syntax:le.LENGTH,int:!0,d:"0"},{n:"miterLimit",l:!0,syntax:le.NUMBER,d:function(t){return t===Zt.PATH||t===Zt.POLYGON||t===Zt.POLYLINE?"4":"10"}},{n:"wordWrap",l:!0},{n:"wordWrapWidth",l:!0},{n:"maxLines",l:!0},{n:"textOverflow",l:!0,d:"clip"},{n:"leading",l:!0},{n:"textBaseline",l:!0,inh:!0,k:["top","hanging","middle","alphabetic","ideographic","bottom"],d:"alphabetic"},{n:"textAlign",l:!0,inh:!0,k:["start","center","middle","end","left","right"],d:"start"},{n:"markerStart",syntax:le.MARKER},{n:"markerEnd",syntax:le.MARKER},{n:"markerMid",syntax:le.MARKER},{n:"markerStartOffset",syntax:le.LENGTH,l:!0,int:!0,d:"0"},{n:"markerEndOffset",syntax:le.LENGTH,l:!0,int:!0,d:"0"}],tM=new Set(Zp.filter(function(r){return!!r.l}).map(function(r){return r.n})),nE={},eM=function(){function r(t){var e=this;(0,N.Z)(this,r),this.runtime=t,Zp.forEach(function(n){e.registerMetadata(n)})}return(0,O.Z)(r,[{key:"registerMetadata",value:function(e){[e.n].concat((0,k.Z)(e.a||[])).forEach(function(n){nE[n]=e})}},{key:"getPropertySyntax",value:function(e){return this.runtime.CSSPropertySyntaxFactory[e]}},{key:"processProperties",value:function(e,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{skipUpdateAttribute:!1,skipParse:!1,forceUpdateGeometry:!1,usedAttributes:[],memoize:!0};Object.assign(e.attributes,n);var a=e.parsedStyle.clipPath,s=e.parsedStyle.offsetPath;nM(e,n);var o=!!i.forceUpdateGeometry;if(!o){for(var A in n)if(tM.has(A)){o=!0;break}}var l=rE(e);l.has("fill")&&n.fill&&(e.parsedStyle.fill=tl(n.fill)),l.has("stroke")&&n.stroke&&(e.parsedStyle.stroke=tl(n.stroke)),l.has("shadowColor")&&n.shadowColor&&(e.parsedStyle.shadowColor=tl(n.shadowColor)),l.has("filter")&&n.filter&&(e.parsedStyle.filter=Oe(n.filter)),l.has("radius")&&!Pe(n.radius)&&(e.parsedStyle.radius=Ft(n.radius,4)),l.has("lineDash")&&!Pe(n.lineDash)&&(e.parsedStyle.lineDash=Ft(n.lineDash,"even")),l.has("points")&&n.points&&(e.parsedStyle.points=HS(n.points)),l.has("d")&&n.d===""&&(e.parsedStyle.d=(0,D.Z)({},hs)),l.has("d")&&n.d&&(e.parsedStyle.d=Jw(n.d)),l.has("textTransform")&&n.textTransform&&this.runtime.CSSPropertySyntaxFactory[le.TEXT_TRANSFORM].calculator(null,null,{value:n.textTransform},e,null),l.has("clipPath")&&!Ye(n.clipPath)&&this.runtime.CSSPropertySyntaxFactory[le.DEFINED_PATH].calculator("clipPath",a,n.clipPath,e,this.runtime),l.has("offsetPath")&&n.offsetPath&&this.runtime.CSSPropertySyntaxFactory[le.DEFINED_PATH].calculator("offsetPath",s,n.offsetPath,e,this.runtime),l.has("transform")&&n.transform&&(e.parsedStyle.transform=$w(n.transform)),l.has("transformOrigin")&&n.transformOrigin&&(e.parsedStyle.transformOrigin=$S(n.transformOrigin)),l.has("markerStart")&&n.markerStart&&(e.parsedStyle.markerStart=this.runtime.CSSPropertySyntaxFactory[le.MARKER].calculator(null,n.markerStart,n.markerStart,null,null)),l.has("markerEnd")&&n.markerEnd&&(e.parsedStyle.markerEnd=this.runtime.CSSPropertySyntaxFactory[le.MARKER].calculator(null,n.markerEnd,n.markerEnd,null,null)),l.has("markerMid")&&n.markerMid&&(e.parsedStyle.markerMid=this.runtime.CSSPropertySyntaxFactory[le.MARKER].calculator("",n.markerMid,n.markerMid,null,null)),l.has("zIndex")&&!Pe(n.zIndex)&&this.runtime.CSSPropertySyntaxFactory[le.Z_INDEX].postProcessor(e),l.has("offsetDistance")&&!Pe(n.offsetDistance)&&this.runtime.CSSPropertySyntaxFactory[le.OFFSET_DISTANCE].postProcessor(e),l.has("transform")&&n.transform&&this.runtime.CSSPropertySyntaxFactory[le.TRANSFORM].postProcessor(e),l.has("transformOrigin")&&n.transformOrigin&&this.runtime.CSSPropertySyntaxFactory[le.TRANSFORM_ORIGIN].postProcessor(e),o&&(e.dirty(!0,!0),i.forceUpdateGeometry||this.runtime.sceneGraphService.dirtyToRoot(e))}},{key:"updateGeometry",value:function(e){var n=e.nodeName,i=this.runtime.geometryUpdaterFactory[n];if(i){var a=e.geometry;a.contentBounds||(a.contentBounds=new Yn),a.renderBounds||(a.renderBounds=new Yn);var s=e.parsedStyle,o=i.update(s,e),A=o.cx,l=A===void 0?0:A,c=o.cy,u=c===void 0?0:c,h=o.cz,f=h===void 0?0:h,d=o.hwidth,g=d===void 0?0:d,v=o.hheight,y=v===void 0?0:v,E=o.hdepth,C=E===void 0?0:E,I=[Math.abs(g),Math.abs(y),C],R=s.stroke,K=s.lineWidth,W=K===void 0?1:K,V=s.increasedLineWidthForHitTesting,J=V===void 0?0:V,et=s.shadowType,at=et===void 0?"outer":et,ct=s.shadowColor,pt=s.filter,wt=pt===void 0?[]:pt,Ct=s.transformOrigin,Ht=[l,u,f];a.contentBounds.update(Ht,I);var Rt=n===Zt.POLYLINE||n===Zt.POLYGON||n===Zt.PATH?Math.SQRT2:.5,St=R&&!R.isNone;if(St){var Ot=((W||0)+(J||0))*Rt;I[0]+=Ot,I[1]+=Ot}if(a.renderBounds.update(Ht,I),ct&&at&&at!=="inner"){var Gt=a.renderBounds,qt=Gt.min,ae=Gt.max,ue=s.shadowBlur,pe=s.shadowOffsetX,Ce=s.shadowOffsetY,Qe=ue||0,Re=pe||0,nn=Ce||0,mn=qt[0]-Qe+Re,on=ae[0]+Qe+Re,er=qt[1]-Qe+nn,kn=ae[1]+Qe+nn;qt[0]=Math.min(qt[0],mn),ae[0]=Math.max(ae[0],on),qt[1]=Math.min(qt[1],er),ae[1]=Math.max(ae[1],kn),a.renderBounds.setMinMax(qt,ae)}wt.forEach(function(Bn){var Ls=Bn.name,ui=Bn.params;if(Ls==="blur"){var Ki=ui[0].value;a.renderBounds.update(a.renderBounds.center,oe(a.renderBounds.halfExtents,a.renderBounds.halfExtents,[Ki,Ki,0]))}else if(Ls==="drop-shadow"){var un=ui[0].value,Tn=ui[1].value,fn=ui[2].value,Sn=a.renderBounds,Pn=Sn.min,ke=Sn.max,Fn=Pn[0]-fn+un,En=ke[0]+fn+un,cr=Pn[1]-fn+Tn,$e=ke[1]+fn+Tn;Pn[0]=Math.min(Pn[0],Fn),ke[0]=Math.max(ke[0],En),Pn[1]=Math.min(Pn[1],cr),ke[1]=Math.max(ke[1],$e),a.renderBounds.setMinMax(Pn,ke)}}),e.geometry.dirty=!1;var Cn=g<0,gr=y<0,va=(Cn?-1:1)*(Ct?It(Ct[0],0,e,!0):0),Gn=(gr?-1:1)*(Ct?It(Ct[1],1,e,!0):0);(va||Gn)&&e.setOrigin(va,Gn)}}},{key:"updateSizeAttenuation",value:function(e,n){e.style.isSizeAttenuation?(e.style.rawLineWidth||(e.style.rawLineWidth=e.style.lineWidth),e.style.lineWidth=(e.style.rawLineWidth||1)/n,e.nodeName===Zt.CIRCLE&&(e.style.rawR||(e.style.rawR=e.style.r),e.style.r=(e.style.rawR||1)/n)):(e.style.rawLineWidth&&(e.style.lineWidth=e.style.rawLineWidth,delete e.style.rawLineWidth),e.nodeName===Zt.CIRCLE&&e.style.rawR&&(e.style.r=e.style.rawR,delete e.style.rawR))}}])}();function nM(r,t){var e=rE(r);for(var n in t)e.has(n)&&(r.parsedStyle[n]=t[n])}function rE(r){return r.constructor.PARSED_STYLE_LIST}var rM=function(){function r(){(0,N.Z)(this,r),this.mixer=Ue}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i,a){return ut(i)}}])}(),iM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i,a,s){return i instanceof Qi&&(i=null),s.sceneGraphService.updateDisplayObjectDependency(e,n,i,a),e==="clipPath"&&a.forEach(function(o){o.childNodes.length===0&&s.sceneGraphService.dirtyToRoot(o)}),i}}])}(),aM=function(){function r(){(0,N.Z)(this,r),this.parser=tl,this.mixer=Kp}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i,a){return i instanceof Qi?i.value==="none"?Wf:bc:i}}])}(),sM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i){return i instanceof Qi?[]:i}}])}();function iE(r){var t=r.parsedStyle,e=t.fontSize;return Pe(e)?null:e}var jp=function(){function r(){(0,N.Z)(this,r),this.mixer=Ue}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i,a,s){if(we(i))return i;if(Hn.isRelativeUnit(i.unit)){if(i.unit===ve.kPercentage)return 0;if(i.unit===ve.kEms){if(a.parentNode){var o=iE(a.parentNode);if(o)return o*=i.value,o}return 0}if(i.unit===ve.kRems){var A;if(a!=null&&(A=a.ownerDocument)!==null&&A!==void 0&&A.documentElement){var l=iE(a.ownerDocument.documentElement);if(l)return l*=i.value,l}return 0}}else return i.value}}])}(),oM=function(){function r(){(0,N.Z)(this,r),this.mixer=Mn}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i){return i.map(function(a){return a.value})}}])}(),AM=function(){function r(){(0,N.Z)(this,r),this.mixer=Mn}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i){return i.map(function(a){return a.value})}}])}(),lM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i,a){var s;i instanceof Qi&&(i=null);var o=(s=i)===null||s===void 0?void 0:s.cloneNode(!0);return o&&(o.style.isMarker=!0),o}}])}(),cM=function(){function r(){(0,N.Z)(this,r),this.mixer=Ue}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i){return i.value}}])}(),uM=function(){function r(){(0,N.Z)(this,r),this.mixer=Ne(0,1)}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i){return i.value}},{key:"postProcessor",value:function(e){var n=e.parsedStyle,i=n.offsetPath,a=n.offsetDistance;if(i){var s=i.nodeName;if(s===Zt.LINE||s===Zt.PATH||s===Zt.POLYLINE){var o=i.getPoint(a);o&&e.setLocalPosition(o.x,o.y)}}}}])}(),hM=function(){function r(){(0,N.Z)(this,r),this.mixer=Ne(0,1)}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i){return i.value}}])}(),fM=function(){function r(){(0,N.Z)(this,r),this.parser=Jw,this.mixer=_S}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i){return i instanceof Qi&&i.value==="unset"?{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new cs(0,0,0,0)}:i}}])}(),dM=(0,O.Z)(function r(){(0,N.Z)(this,r),this.mixer=GS}),gM=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.mixer=Ne(0,1/0),e}return(0,L.Z)(t,r),(0,O.Z)(t)}(jp),vM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i,a){return i instanceof Qi?i.value==="unset"?"":i.value:"".concat(i)}},{key:"postProcessor",value:function(e){e.nodeValue="".concat(e.parsedStyle.text)||""}}])}(),pM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i,a){var s=a.getAttribute("text");if(s){var o=s;i.value==="capitalize"?o=s.charAt(0).toUpperCase()+s.slice(1):i.value==="lowercase"?o=s.toLowerCase():i.value==="uppercase"&&(o=s.toUpperCase()),a.parsedStyle.text=o}return i.value}}])}(),P6=function(t){return Object.fromEntries(Object.entries(t).filter(function(e){var n=_slicedToArray(e,2),i=n[1];return i!==void 0}))},Yp=new WeakMap;function mM(r,t,e){if(r){var n=typeof r=="string"?document.getElementById(r):r;Yp.has(n)&&Yp.get(n).destroy(e),Yp.set(n,t)}}var Xp=typeof window!="undefined"&&typeof window.document!="undefined";function yM(r){return!!r.getAttribute}function wM(r,t){for(var e=0,n=r.length;e<n;){var i=e+n>>>1;aE(r[i],t)<0?e=i+1:n=i}return e}function aE(r,t){var e=Number(r.parsedStyle.zIndex||0),n=Number(t.parsedStyle.zIndex||0);if(e===n){var i=r.parentNode;if(i){var a=i.childNodes||[];return a.indexOf(r)-a.indexOf(t)}}return e-n}function sE(r){var t=r;do{var e,n=(e=t.parsedStyle)===null||e===void 0?void 0:e.clipPath;if(n)return t;t=t.parentElement}while(t!==null);return null}var oE="px";function EM(r,t,e){Xp&&r.style&&(r.style.width=t+oE,r.style.height=e+oE)}function AE(r,t){if(Xp)return document.defaultView.getComputedStyle(r,null).getPropertyValue(t)}function BM(r){var t=AE(r,"width");return t==="auto"?r.offsetWidth:parseFloat(t)}function bM(r){var t=AE(r,"height");return t==="auto"?r.offsetHeight:parseFloat(t)}var xM=1,CM={touchstart:"pointerdown",touchend:"pointerup",touchendoutside:"pointerupoutside",touchmove:"pointermove",touchcancel:"pointercancel"},Jp=typeof performance=="object"&&performance.now?performance:Date;function Xf(r){return r.nodeName===Zt.FRAGMENT?!0:r.getRootNode().nodeName===Zt.FRAGMENT}function il(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"auto",t=arguments.length>1?arguments[1]:void 0,e=arguments.length>2?arguments[2]:void 0,n=!1,i=!1,a=!!t&&!t.isNone,s=!!e&&!e.isNone;return r==="visiblepainted"||r==="painted"||r==="auto"?(n=a,i=s):r==="visiblefill"||r==="fill"?n=!0:r==="visiblestroke"||r==="stroke"?i=!0:(r==="visible"||r==="all")&&(n=!0,i=!0),[n,i]}var SM=1,MM=function(){return SM++},js=typeof self=="object"&&self.self===self?self:typeof M.g=="object"&&M.g.global===M.g?M.g:{},TM=Date.now(),FM=function(){return js.performance&&typeof js.performance.now=="function"?js.performance.now():Date.now()-TM},Zu={},lE=Date.now(),OM=function(t){if(typeof t!="function")throw new TypeError("".concat(t," is not a function"));var e=Date.now(),n=e-lE,i=n>16?0:16-n,a=MM();return Zu[a]=t,Object.keys(Zu).length>1||setTimeout(function(){lE=e;var s=Zu;Zu={},Object.keys(s).forEach(function(o){return s[o](FM())})},i),a},IM=function(t){delete Zu[t]},LM=["","webkit","moz","ms","o"],cE=function(t){return typeof t!="string"?OM:t===""?js.requestAnimationFrame:js["".concat(t,"RequestAnimationFrame")]},NM=function(t){return typeof t!="string"?IM:t===""?js.cancelAnimationFrame:js["".concat(t,"CancelAnimationFrame")]||js["".concat(t,"CancelRequestAnimationFrame")]},kM=function(t,e){for(var n=0;t[n]!==void 0;){if(e(t[n]))return t[n];n+=1}},uE=kM(LM,function(r){return!!cE(r)}),qp=cE(uE),hE=NM(uE);js.requestAnimationFrame=qp,js.cancelAnimationFrame=hE;var QM=function(){function r(){(0,N.Z)(this,r),this.callbacks=[]}return(0,O.Z)(r,[{key:"getCallbacksNum",value:function(){return this.callbacks.length}},{key:"tapPromise",value:function(e,n){this.callbacks.push(n)}},{key:"promise",value:function(){for(var e=arguments.length,n=new Array(e),i=0;i<e;i++)n[i]=arguments[i];return Promise.all(this.callbacks.map(function(a){return a.apply(void 0,n)}))}}])}(),UM=function(){function r(){(0,N.Z)(this,r),this.callbacks=[]}return(0,O.Z)(r,[{key:"tapPromise",value:function(e,n){this.callbacks.push(n)}},{key:"promise",value:function(){var t=(0,Wa.Z)((0,ri.Z)().mark(function n(){var i,a,s,o,A=arguments;return(0,ri.Z)().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(!this.callbacks.length){l.next=6;break}return l.next=1,(i=this.callbacks)[0].apply(i,A);case 1:a=l.sent,s=1;case 2:if(!(s<this.callbacks.length)){l.next=5;break}return o=this.callbacks[s],l.next=3,o(a);case 3:a=l.sent;case 4:s++,l.next=2;break;case 5:return l.abrupt("return",a);case 6:return l.abrupt("return",null);case 7:case"end":return l.stop()}},n,this)}));function e(){return t.apply(this,arguments)}return e}()}])}(),ta=function(){function r(){(0,N.Z)(this,r),this.callbacks=[]}return(0,O.Z)(r,[{key:"tap",value:function(e,n){this.callbacks.push(n)}},{key:"call",value:function(){for(var e=arguments.length,n=new Array(e),i=0;i<e;i++)n[i]=arguments[i];var a=arguments;this.callbacks.forEach(function(s){s.apply(void 0,a)})}}])}(),$p=function(){function r(){(0,N.Z)(this,r),this.callbacks=[]}return(0,O.Z)(r,[{key:"tap",value:function(e,n){this.callbacks.push(n)}},{key:"call",value:function(){for(var e=arguments.length,n=new Array(e),i=0;i<e;i++)n[i]=arguments[i];if(this.callbacks.length){for(var a=arguments,s=this.callbacks[0].apply(void 0,a),o=1;o<this.callbacks.length;o++){var A=this.callbacks[o];s=A(s)}return s}return null}}])}(),PM=["serif","sans-serif","monospace","cursive","fantasy","system-ui"],DM=/([\"\'])[^\'\"]+\1/;function fE(r){var t=r.fontSize,e=t===void 0?16:t,n=r.fontFamily,i=n===void 0?"sans-serif":n,a=r.fontStyle,s=a===void 0?"normal":a,o=r.fontVariant,A=o===void 0?"normal":o,l=r.fontWeight,c=l===void 0?"normal":l;return{fontSize:e,fontFamily:i,fontStyle:s,fontVariant:A,fontWeight:c}}var dE=Ln(function(t){for(var e=fE(t),n=e.fontSize,i=e.fontFamily,a=e.fontStyle,s=e.fontVariant,o=e.fontWeight,A=we(n)&&"".concat(n,"px")||"16px",l=i.split(","),c=l.length-1;c>=0;c--){var u=l[c].trim();!DM.test(u)&&PM.indexOf(u)<0&&(u='"'.concat(u,'"')),l[c]=u}return"".concat(a," ").concat(s," ").concat(o," ").concat(A," ").concat(l.join(","))},function(r){var t=fE(r),e=t.fontSize,n=t.fontFamily,i=t.fontStyle,a=t.fontVariant,s=t.fontWeight;return"".concat(i,"_").concat(a,"_").concat(s,"_").concat(e,"_").concat(n)}),RM=1e-6,ju=function(t){return Math.max(t,RM)};function tm(r,t,e){return Ie(r),r[4]=Math.tan(t),r[1]=Math.tan(e),r}var Dr=ne(),_M=ne(),HM={scale:function(t){Rn(Dr,[t[0].value,t[1].value,1].map(function(e){return ju(e)}))},scaleX:function(t){Rn(Dr,[t[0].value,1,1].map(function(e){return ju(e)}))},scaleY:function(t){Rn(Dr,[1,t[0].value,1].map(function(e){return ju(e)}))},scaleZ:function(t){Rn(Dr,[1,1,t[0].value].map(function(e){return ju(e)}))},scale3d:function(t){Rn(Dr,[t[0].value,t[1].value,t[2].value].map(function(e){return ju(e)}))},translate:function(t){Fr(Dr,[t[0].value,t[1].value,0])},translateX:function(t){Fr(Dr,[t[0].value,0,0])},translateY:function(t){Fr(Dr,[0,t[0].value,0])},translateZ:function(t){Fr(Dr,[0,0,t[0].value])},translate3d:function(t){Fr(Dr,[t[0].value,t[1].value,t[2].value])},rotate:function(t){wr(Dr,Un(ut(t[0])))},rotateX:function(t){Ji(Dr,Un(ut(t[0])))},rotateY:function(t){dn(Dr,Un(ut(t[0])))},rotateZ:function(t){wr(Dr,Un(ut(t[0])))},rotate3d:function(t){Xi(Dr,Un(ut(t[3])),[t[0].value,t[1].value,t[2].value])},skew:function(t){tm(Dr,Un(t[0].value),Un(t[1].value))},skewX:function(t){tm(Dr,Un(t[0].value),0)},skewY:function(t){tm(Dr,0,Un(t[0].value))},matrix:function(t){Zn(Dr,t[0].value,t[1].value,0,0,t[2].value,t[3].value,0,0,0,0,1,0,t[4].value,t[5].value,0,1)},matrix3d:function(t){Zn.apply(F,[Dr].concat((0,k.Z)(t.map(function(e){return e.value}))))}},GM=Lt(1,1,1),KM=xt(),gE={translate:function(t,e){se.sceneGraphService.setLocalScale(t,GM,!1),se.sceneGraphService.setLocalEulerAngles(t,KM,void 0,void 0,!1),se.sceneGraphService.setLocalPosition(t,[e[0].value,e[1].value,0],!1),se.sceneGraphService.dirtyLocalTransform(t,t.transformable)}};function vE(r,t){if(r.length){if(r.length===1&&gE[r[0].t]){gE[r[0].t](t,r[0].d);return}for(var e=Ie(_M),n=0;n<r.length;n++){var i=r[n],a=i.t,s=i.d,o=HM[a];o&&(o(s),ho(e,e,Dr))}t.setLocalTransform(e)}else t.resetLocalTransform();return t.getLocalTransform()}var zM=function(){function r(){(0,N.Z)(this,r),this.parser=KS,this.mixer=qS}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i,a){return i instanceof Qi?[]:i}},{key:"postProcessor",value:function(e){vE(e.parsedStyle.transform,e)}}])}(),VM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"postProcessor",value:function(e){var n=e.parsedStyle.transformOrigin;n[0].unit===ve.kPixels&&n[1].unit===ve.kPixels?e.setOrigin(n[0].value,n[1].value):e.getGeometryBounds()}}])}(),WM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"calculator",value:function(e,n,i,a){return i.value}},{key:"postProcessor",value:function(e){if(e.parentNode){var n=e.parentNode,i=n.renderable,a=n.sortable;i&&n.dirty(),a&&(a.dirty=!0,a.dirtyReason=gc.Z_INDEX_CHANGED)}}}])}(),ZM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"update",value:function(e,n){var i=e.cx,a=i===void 0?0:i,s=e.cy,o=s===void 0?0:s,A=e.r,l=A===void 0?0:A;return{cx:a,cy:o,hwidth:l,hheight:l}}}])}(),jM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"update",value:function(e,n){var i=e.cx,a=i===void 0?0:i,s=e.cy,o=s===void 0?0:s,A=e.rx,l=A===void 0?0:A,c=e.ry,u=c===void 0?0:c;return{cx:a,cy:o,hwidth:l,hheight:u}}}])}(),YM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"update",value:function(e){var n=e.x1,i=e.y1,a=e.x2,s=e.y2,o=Math.min(n,a),A=Math.max(n,a),l=Math.min(i,s),c=Math.max(i,s),u=A-o,h=c-l,f=u/2,d=h/2;return{cx:o+f,cy:l+d,hwidth:f,hheight:d}}}])}(),XM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"update",value:function(e){var n=e.d,i=n.rect,a=i.x,s=i.y,o=i.width,A=i.height,l=o/2,c=A/2;return{cx:a+l,cy:s+c,hwidth:l,hheight:c}}}])}(),JM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"update",value:function(e){if(e.points&&Ni(e.points.points)){var n=e.points.points,i=Math.min.apply(Math,(0,k.Z)(n.map(function(h){return h[0]}))),a=Math.max.apply(Math,(0,k.Z)(n.map(function(h){return h[0]}))),s=Math.min.apply(Math,(0,k.Z)(n.map(function(h){return h[1]}))),o=Math.max.apply(Math,(0,k.Z)(n.map(function(h){return h[1]}))),A=a-i,l=o-s,c=A/2,u=l/2;return{cx:i+c,cy:s+u,hwidth:c,hheight:u}}return{cx:0,cy:0,hwidth:0,hheight:0}}}])}(),qM=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"update",value:function(e,n){var i=e.x,a=i===void 0?0:i,s=e.y,o=s===void 0?0:s,A=e.src,l=e.width,c=l===void 0?0:l,u=e.height,h=u===void 0?0:u,f=c,d=h;return A&&!gn(A)&&(f||(f=A.width,e.width=f),d||(d=A.height,e.height=d)),{cx:a+f/2,cy:o+d/2,hwidth:f/2,hheight:d/2}}}])}(),$M=function(){function r(t){(0,N.Z)(this,r),this.globalRuntime=t}return(0,O.Z)(r,[{key:"isReadyToMeasure",value:function(e,n){var i=e.text;return i}},{key:"update",value:function(e,n){var i,a=e.text,s=e.textAlign,o=s===void 0?"start":s,A=e.lineWidth,l=A===void 0?1:A,c=e.textBaseline,u=c===void 0?"alphabetic":c,h=e.dx,f=h===void 0?0:h,d=e.dy,g=d===void 0?0:d,v=e.x,y=v===void 0?0:v,E=e.y,C=E===void 0?0:E;if(!this.isReadyToMeasure(e,n))return e.metrics={font:"",width:0,height:0,lines:[],lineWidths:[],lineHeight:0,maxLineWidth:0,fontProperties:{ascent:0,descent:0,fontSize:0},lineMetrics:[]},{hwidth:0,hheight:0,cx:0,cy:0};var I=(n==null||(i=n.ownerDocument)===null||i===void 0||(i=i.defaultView)===null||i===void 0?void 0:i.getConfig())||{},R=I.offscreenCanvas,K=this.globalRuntime.textService.measureText(a,e,R);e.metrics=K;var W=K.width,V=K.height,J=W/2,et=V/2,at=y+J;o==="center"||o==="middle"?at+=l/2-J:(o==="right"||o==="end")&&(at+=l-J*2);var ct=C-et;return u==="middle"?ct+=et:u==="top"||u==="hanging"?ct+=et*2:u==="alphabetic"||(u==="bottom"||u==="ideographic")&&(ct+=0),f&&(at+=f),g&&(ct+=g),{cx:at,cy:ct,hwidth:J,hheight:et}}}])}(),tT=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"update",value:function(e,n){return{cx:0,cy:0,hwidth:0,hheight:0}}}])}(),eT=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"update",value:function(e,n){var i=e.x,a=i===void 0?0:i,s=e.y,o=s===void 0?0:s,A=e.width,l=A===void 0?0:A,c=e.height,u=c===void 0?0:c;return{cx:a+l/2,cy:o+u/2,hwidth:l/2,hheight:u/2}}}])}();function D6(r){return!!r.type}var Jf=function(){function r(t){(0,N.Z)(this,r),this.eventPhase=r.prototype.NONE,this.bubbles=!0,this.cancelBubble=!0,this.cancelable=!1,this.defaultPrevented=!1,this.propagationStopped=!1,this.propagationImmediatelyStopped=!1,this.layer=new ii,this.page=new ii,this.canvas=new ii,this.viewport=new ii,this.composed=!1,this.NONE=0,this.CAPTURING_PHASE=1,this.AT_TARGET=2,this.BUBBLING_PHASE=3,this.manager=t}return(0,O.Z)(r,[{key:"name",get:function(){return this.type}},{key:"layerX",get:function(){return this.layer.x}},{key:"layerY",get:function(){return this.layer.y}},{key:"pageX",get:function(){return this.page.x}},{key:"pageY",get:function(){return this.page.y}},{key:"x",get:function(){return this.canvas.x}},{key:"y",get:function(){return this.canvas.y}},{key:"canvasX",get:function(){return this.canvas.x}},{key:"canvasY",get:function(){return this.canvas.y}},{key:"viewportX",get:function(){return this.viewport.x}},{key:"viewportY",get:function(){return this.viewport.y}},{key:"composedPath",value:function(){return this.manager&&(!this.path||this.path[0]!==this.target)&&(this.path=this.target?this.manager.propagationPath(this.target):[]),this.path}},{key:"propagationPath",get:function(){return this.composedPath()}},{key:"preventDefault",value:function(){this.nativeEvent instanceof Event&&this.nativeEvent.cancelable&&this.nativeEvent.preventDefault(),this.defaultPrevented=!0}},{key:"stopImmediatePropagation",value:function(){this.propagationImmediatelyStopped=!0}},{key:"stopPropagation",value:function(){this.propagationStopped=!0}},{key:"initEvent",value:function(){}},{key:"initUIEvent",value:function(){}},{key:"clone",value:function(){throw new Error(On)}}])}(),pE=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.client=new ii,e.movement=new ii,e.offset=new ii,e.global=new ii,e.screen=new ii,e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"clientX",get:function(){return this.client.x}},{key:"clientY",get:function(){return this.client.y}},{key:"movementX",get:function(){return this.movement.x}},{key:"movementY",get:function(){return this.movement.y}},{key:"offsetX",get:function(){return this.offset.x}},{key:"offsetY",get:function(){return this.offset.y}},{key:"globalX",get:function(){return this.global.x}},{key:"globalY",get:function(){return this.global.y}},{key:"screenX",get:function(){return this.screen.x}},{key:"screenY",get:function(){return this.screen.y}},{key:"getModifierState",value:function(n){return"getModifierState"in this.nativeEvent&&this.nativeEvent.getModifierState(n)}},{key:"initMouseEvent",value:function(){throw new Error(On)}}])}(Jf),qf=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.width=0,e.height=0,e.isPrimary=!1,e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"getCoalescedEvents",value:function(){return this.type==="pointermove"||this.type==="mousemove"||this.type==="touchmove"?[this]:[]}},{key:"getPredictedEvents",value:function(){throw new Error("getPredictedEvents is not supported!")}},{key:"clone",value:function(){return this.manager.clonePointerEvent(this)}}])}(pE),em=function(r){function t(){return(0,N.Z)(this,t),(0,U.Z)(this,t,arguments)}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"clone",value:function(){return this.manager.cloneWheelEvent(this)}}])}(pE),Wr=function(r){function t(e,n){var i;return(0,N.Z)(this,t),i=(0,U.Z)(this,t,[null]),i.type=e,i.detail=n==null?void 0:n.detail,n&&!("detail"in n)&&(i.detail=n),Object.assign(i,n),i}return(0,L.Z)(t,r),(0,O.Z)(t)}(Jf),mE=function(){function r(){(0,N.Z)(this,r),this.emitter=new P}return(0,O.Z)(r,[{key:"on",value:function(e,n,i){return this.addEventListener(e,n,i),this}},{key:"addEventListener",value:function(e,n,i){var a=!1,s=!1;if(Jo(i))a=i;else if(i){var o=i.capture;a=o===void 0?!1:o;var A=i.once;s=A===void 0?!1:A}a&&(e+="capture"),n=jt(n)?n:n.handleEvent;var l=jt(n)?void 0:n;return s?this.emitter.once(e,n,l):this.emitter.on(e,n,l),this}},{key:"off",value:function(e,n,i){return e?this.removeEventListener(e,n,i):this.removeAllEventListeners(),this}},{key:"removeAllEventListeners",value:function(){var e;(e=this.emitter)===null||e===void 0||e.removeAllListeners()}},{key:"removeEventListener",value:function(e,n,i){var a;if(!this.emitter)return this;var s=Jo(i)?i:i==null?void 0:i.capture;s&&(e+="capture"),n=jt(n)?n:(a=n)===null||a===void 0?void 0:a.handleEvent;var o=jt(n)?void 0:n;return this.emitter.off(e,n,o),this}},{key:"emit",value:function(e,n){this.dispatchEvent(new Wr(e,n))}},{key:"dispatchEventToSelf",value:function(e){e.target||(e.target=this),e.currentTarget=this,this.emitter.emit(e.type,e)}},{key:"dispatchEvent",value:function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=arguments.length>2?arguments[2]:void 0;if(i)return this.dispatchEventToSelf(e),!0;var a;if(this.document)a=this;else if(this.defaultView)a=this.defaultView;else{var s;a=(s=this.ownerDocument)===null||s===void 0?void 0:s.defaultView}if(a){if(e.manager=a.getEventService(),!e.manager)return!1;e.defaultPrevented=!1,e.path?e.path.length=0:e.page=[],n||(e.target=this),e.manager.dispatchEvent(e,e.type,n)}else this.dispatchEventToSelf(e);return!e.defaultPrevented}}])}(),vr=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.shadow=!1,e.ownerDocument=null,e.isConnected=!1,e.baseURI="",e.childNodes=[],e.nodeType=0,e.nodeName="",e.nodeValue=null,e.mutations=void 0,e.parentNode=null,e.destroyed=!1,e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"textContent",get:function(){var n="";this.nodeName===Zt.TEXT&&(n+=this.style.text);var i=(0,Gs.Z)(this.childNodes),a;try{for(i.s();!(a=i.n()).done;){var s=a.value;s.nodeName===Zt.TEXT?n+=s.nodeValue:n+=s.textContent}}catch(o){i.e(o)}finally{i.f()}return n},set:function(n){var i=this;this.childNodes.slice().forEach(function(a){i.removeChild(a)}),this.nodeName===Zt.TEXT&&(this.style.text="".concat(n))}},{key:"getRootNode",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return this.parentNode?this.parentNode.getRootNode(n):n.composed&&this.host?this.host.getRootNode(n):this}},{key:"hasChildNodes",value:function(){return this.childNodes.length>0}},{key:"isDefaultNamespace",value:function(n){throw new Error(On)}},{key:"lookupNamespaceURI",value:function(n){throw new Error(On)}},{key:"lookupPrefix",value:function(n){throw new Error(On)}},{key:"normalize",value:function(){throw new Error(On)}},{key:"isEqualNode",value:function(n){return this===n}},{key:"isSameNode",value:function(n){return this.isEqualNode(n)}},{key:"parent",get:function(){return this.parentNode}},{key:"parentElement",get:function(){return null}},{key:"nextSibling",get:function(){return null}},{key:"previousSibling",get:function(){return null}},{key:"firstChild",get:function(){return this.childNodes.length>0?this.childNodes[0]:null}},{key:"lastChild",get:function(){return this.childNodes.length>0?this.childNodes[this.childNodes.length-1]:null}},{key:"compareDocumentPosition",value:function(n){if(n===this)return 0;for(var i=n,a=this,s=[i],o=[a];(A=i.parentNode)!==null&&A!==void 0?A:a.parentNode;){var A;i=i.parentNode?(s.push(i.parentNode),i.parentNode):i,a=a.parentNode?(o.push(a.parentNode),a.parentNode):a}if(i!==a)return t.DOCUMENT_POSITION_DISCONNECTED|t.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|t.DOCUMENT_POSITION_PRECEDING;var l=s.length>o.length?s:o,c=l===s?o:s;if(l[l.length-c.length]===c[0])return l===s?t.DOCUMENT_POSITION_CONTAINED_BY|t.DOCUMENT_POSITION_FOLLOWING:t.DOCUMENT_POSITION_CONTAINS|t.DOCUMENT_POSITION_PRECEDING;for(var u=l.length-c.length,h=c.length-1;h>=0;h--){var f=c[h],d=l[u+h];if(d!==f){var g=f.parentNode.childNodes;return g.indexOf(f)<g.indexOf(d)?c===s?t.DOCUMENT_POSITION_PRECEDING:t.DOCUMENT_POSITION_FOLLOWING:l===s?t.DOCUMENT_POSITION_PRECEDING:t.DOCUMENT_POSITION_FOLLOWING}}return t.DOCUMENT_POSITION_FOLLOWING}},{key:"contain",value:function(n){return this.contains(n)}},{key:"contains",value:function(n){for(var i=n;i&&this!==i;)i=i.parentNode;return!!i}},{key:"getAncestor",value:function(n){for(var i=this;n>0&&i;)i=i.parentNode,n--;return i}},{key:"forEach",value:function(n){for(var i=[this];i.length>0;){var a=i.pop(),s=n(a);if(s===!1)break;for(var o=a.childNodes.length-1;o>=0;o--)i.push(a.childNodes[o])}}}],[{key:"isNode",value:function(n){return!!n.childNodes}}])}(mE);vr.DOCUMENT_POSITION_DISCONNECTED=1,vr.DOCUMENT_POSITION_PRECEDING=2,vr.DOCUMENT_POSITION_FOLLOWING=4,vr.DOCUMENT_POSITION_CONTAINS=8,vr.DOCUMENT_POSITION_CONTAINED_BY=16,vr.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;var nT=2048,rT=function(){function r(t,e){var n=this;(0,N.Z)(this,r),this.nativeHTMLMap=new WeakMap,this.cursor="default",this.mappingTable={},this.mappingState={trackingData:{}},this.eventPool=new Map,this.tmpMatrix=ne(),this.tmpVec3=xt(),this.onPointerDown=function(i){var a=n.createPointerEvent(i);if(n.dispatchEvent(a,"pointerdown"),a.pointerType==="touch")n.dispatchEvent(a,"touchstart");else if(a.pointerType==="mouse"||a.pointerType==="pen"){var s=a.button===2;n.dispatchEvent(a,s?"rightdown":"mousedown")}var o=n.trackingData(i.pointerId);o.pressTargetsByButton[i.button]=a.composedPath(),n.freeEvent(a)},this.onPointerUp=function(i){var a=Jp.now(),s=n.createPointerEvent(i,void 0,void 0,n.context.config.alwaysTriggerPointerEventOnCanvas?n.rootTarget:void 0);if(n.dispatchEvent(s,"pointerup"),s.pointerType==="touch")n.dispatchEvent(s,"touchend");else if(s.pointerType==="mouse"||s.pointerType==="pen"){var o=s.button===2;n.dispatchEvent(s,o?"rightup":"mouseup")}var A=n.trackingData(i.pointerId),l=n.findMountedTarget(A.pressTargetsByButton[i.button]),c=l;if(l&&!s.composedPath().includes(l)){for(var u=l;u&&!s.composedPath().includes(u);){if(s.currentTarget=u,n.notifyTarget(s,"pointerupoutside"),s.pointerType==="touch")n.notifyTarget(s,"touchendoutside");else if(s.pointerType==="mouse"||s.pointerType==="pen"){var h=s.button===2;n.notifyTarget(s,h?"rightupoutside":"mouseupoutside")}vr.isNode(u)&&(u=u.parentNode)}delete A.pressTargetsByButton[i.button],c=u}if(c){var f,d=n.clonePointerEvent(s,"click");d.target=c,d.path=[],A.clicksByButton[i.button]||(A.clicksByButton[i.button]={clickCount:0,target:d.target,timeStamp:a});var g=n.context.renderingContext.root.ownerDocument.defaultView,v=A.clicksByButton[i.button];v.target===d.target&&a-v.timeStamp<g.getConfig().dblClickSpeed?++v.clickCount:v.clickCount=1,v.target=d.target,v.timeStamp=a,d.detail=v.clickCount,(f=s.detail)!==null&&f!==void 0&&f.preventClick||(!n.context.config.useNativeClickEvent&&(d.pointerType==="mouse"||d.pointerType==="touch")&&n.dispatchEvent(d,"click"),n.dispatchEvent(d,"pointertap")),n.freeEvent(d)}n.freeEvent(s)},this.onPointerMove=function(i){var a=n.createPointerEvent(i,void 0,void 0,n.context.config.alwaysTriggerPointerEventOnCanvas?n.rootTarget:void 0),s=a.pointerType==="mouse"||a.pointerType==="pen",o=n.trackingData(i.pointerId),A=n.findMountedTarget(o.overTargets);if(o.overTargets&&A!==a.target){var l=i.type==="mousemove"?"mouseout":"pointerout",c=n.createPointerEvent(i,l,A||void 0);if(n.dispatchEvent(c,"pointerout"),s&&n.dispatchEvent(c,"mouseout"),!a.composedPath().includes(A)){var u=n.createPointerEvent(i,"pointerleave",A||void 0);for(u.eventPhase=u.AT_TARGET;u.target&&!a.composedPath().includes(u.target);)u.currentTarget=u.target,n.notifyTarget(u),s&&n.notifyTarget(u,"mouseleave"),vr.isNode(u.target)&&(u.target=u.target.parentNode);n.freeEvent(u)}n.freeEvent(c)}if(A!==a.target){var h=i.type==="mousemove"?"mouseover":"pointerover",f=n.clonePointerEvent(a,h);n.dispatchEvent(f,"pointerover"),s&&n.dispatchEvent(f,"mouseover");for(var d=A&&vr.isNode(A)&&A.parentNode;d&&d!==(vr.isNode(n.rootTarget)&&n.rootTarget.parentNode)&&d!==a.target;)d=d.parentNode;var g=!d||d===(vr.isNode(n.rootTarget)&&n.rootTarget.parentNode);if(g){var v=n.clonePointerEvent(a,"pointerenter");for(v.eventPhase=v.AT_TARGET;v.target&&v.target!==A&&v.target!==(vr.isNode(n.rootTarget)&&n.rootTarget.parentNode);)v.currentTarget=v.target,n.notifyTarget(v),s&&n.notifyTarget(v,"mouseenter"),vr.isNode(v.target)&&(v.target=v.target.parentNode);n.freeEvent(v)}n.freeEvent(f)}n.dispatchEvent(a,"pointermove"),a.pointerType==="touch"&&n.dispatchEvent(a,"touchmove"),s&&(n.dispatchEvent(a,"mousemove"),n.cursor=n.getCursor(a.target)),o.overTargets=a.composedPath(),n.freeEvent(a)},this.onPointerOut=function(i){var a=n.trackingData(i.pointerId);if(a.overTargets){var s=i.pointerType==="mouse"||i.pointerType==="pen",o=n.findMountedTarget(a.overTargets),A=n.createPointerEvent(i,"pointerout",o||void 0);n.dispatchEvent(A),s&&n.dispatchEvent(A,"mouseout");var l=n.createPointerEvent(i,"pointerleave",o||void 0);for(l.eventPhase=l.AT_TARGET;l.target&&l.target!==(vr.isNode(n.rootTarget)&&n.rootTarget.parentNode);)l.currentTarget=l.target,n.notifyTarget(l),s&&n.notifyTarget(l,"mouseleave"),vr.isNode(l.target)&&(l.target=l.target.parentNode);a.overTargets=null,n.freeEvent(A),n.freeEvent(l)}n.cursor=null},this.onPointerOver=function(i){var a=n.trackingData(i.pointerId),s=n.createPointerEvent(i),o=s.pointerType==="mouse"||s.pointerType==="pen";n.dispatchEvent(s,"pointerover"),o&&n.dispatchEvent(s,"mouseover"),s.pointerType==="mouse"&&(n.cursor=n.getCursor(s.target));var A=n.clonePointerEvent(s,"pointerenter");for(A.eventPhase=A.AT_TARGET;A.target&&A.target!==(vr.isNode(n.rootTarget)&&n.rootTarget.parentNode);)A.currentTarget=A.target,n.notifyTarget(A),o&&n.notifyTarget(A,"mouseenter"),vr.isNode(A.target)&&(A.target=A.target.parentNode);a.overTargets=s.composedPath(),n.freeEvent(s),n.freeEvent(A)},this.onPointerUpOutside=function(i){var a=n.trackingData(i.pointerId),s=n.findMountedTarget(a.pressTargetsByButton[i.button]),o=n.createPointerEvent(i);if(s){for(var A=s;A;)o.currentTarget=A,n.notifyTarget(o,"pointerupoutside"),o.pointerType==="touch"||(o.pointerType==="mouse"||o.pointerType==="pen")&&n.notifyTarget(o,o.button===2?"rightupoutside":"mouseupoutside"),vr.isNode(A)&&(A=A.parentNode);delete a.pressTargetsByButton[i.button]}n.freeEvent(o)},this.onWheel=function(i){var a=n.createWheelEvent(i);n.dispatchEvent(a),n.freeEvent(a)},this.onClick=function(i){if(n.context.config.useNativeClickEvent){var a=n.createPointerEvent(i);n.dispatchEvent(a),n.freeEvent(a)}},this.onPointerCancel=function(i){var a=n.createPointerEvent(i,void 0,void 0,n.context.config.alwaysTriggerPointerEventOnCanvas?n.rootTarget:void 0);n.dispatchEvent(a),n.freeEvent(a)},this.globalRuntime=t,this.context=e}return(0,O.Z)(r,[{key:"init",value:function(){this.rootTarget=this.context.renderingContext.root.parentNode,this.addEventMapping("pointerdown",this.onPointerDown),this.addEventMapping("pointerup",this.onPointerUp),this.addEventMapping("pointermove",this.onPointerMove),this.addEventMapping("pointerout",this.onPointerOut),this.addEventMapping("pointerleave",this.onPointerOut),this.addEventMapping("pointercancel",this.onPointerCancel),this.addEventMapping("pointerover",this.onPointerOver),this.addEventMapping("pointerupoutside",this.onPointerUpOutside),this.addEventMapping("wheel",this.onWheel),this.addEventMapping("click",this.onClick)}},{key:"destroy",value:function(){this.mappingTable={},this.mappingState={},this.eventPool.clear()}},{key:"getScale",value:function(){var e=this.context.contextService.getBoundingClientRect(),n=1,i=1,a=this.context.contextService.getDomElement();if(a&&e){var s=a.offsetWidth,o=a.offsetHeight;s&&o&&(n=e.width/s,i=e.height/o)}return{scaleX:n,scaleY:i,bbox:e}}},{key:"client2Viewport",value:function(e){var n=this.getScale(),i=n.scaleX,a=n.scaleY,s=n.bbox;return new ii((e.x-((s==null?void 0:s.left)||0))/i,(e.y-((s==null?void 0:s.top)||0))/a)}},{key:"viewport2Client",value:function(e){var n=this.getScale(),i=n.scaleX,a=n.scaleY,s=n.bbox;return new ii((e.x+((s==null?void 0:s.left)||0))*i,(e.y+((s==null?void 0:s.top)||0))*a)}},{key:"viewport2Canvas",value:function(e){var n=e.x,i=e.y,a=this.rootTarget.defaultView,s=a.getCamera(),o=this.context.config,A=o.width,l=o.height,c=s.getPerspectiveInverse(),u=s.getWorldTransform(),h=de(this.tmpMatrix,u,c),f=$t(this.tmpVec3,n/A*2-1,(1-i/l)*2-1,0);return ye(f,f,h),new ii(f[0],f[1])}},{key:"canvas2Viewport",value:function(e){var n=this.rootTarget.defaultView,i=n.getCamera(),a=i.getPerspective(),s=i.getViewTransform(),o=de(this.tmpMatrix,a,s),A=$t(this.tmpVec3,e.x,e.y,0);ye(this.tmpVec3,this.tmpVec3,o);var l=this.context.config,c=l.width,u=l.height;return new ii((A[0]+1)/2*c,(1-(A[1]+1)/2)*u)}},{key:"setPickHandler",value:function(e){this.pickHandler=e}},{key:"addEventMapping",value:function(e,n){this.mappingTable[e]||(this.mappingTable[e]=[]),this.mappingTable[e].push({fn:n,priority:0}),this.mappingTable[e].sort(function(i,a){return i.priority-a.priority})}},{key:"mapEvent",value:function(e){if(this.rootTarget){var n=this.mappingTable[e.type];if(n)for(var i=0,a=n.length;i<a;i++)n[i].fn(e);else console.warn("[EventService]: Event mapping not defined for ".concat(e.type))}}},{key:"dispatchEvent",value:function(e,n,i){if(!i)e.propagationStopped=!1,e.propagationImmediatelyStopped=!1,this.propagate(e,n);else{e.eventPhase=e.AT_TARGET;var a=this.rootTarget.defaultView||null;e.currentTarget=a,this.notifyListeners(e,n)}}},{key:"propagate",value:function(e,n){if(e.target){var i=e.composedPath();e.eventPhase=e.CAPTURING_PHASE;for(var a=i.length-1;a>=1;a--)if(e.currentTarget=i[a],this.notifyTarget(e,n),e.propagationStopped||e.propagationImmediatelyStopped)return;if(e.eventPhase=e.AT_TARGET,e.currentTarget=e.target,this.notifyTarget(e,n),!(e.propagationStopped||e.propagationImmediatelyStopped)){var s=i.indexOf(e.currentTarget);e.eventPhase=e.BUBBLING_PHASE;for(var o=s+1;o<i.length;o++)if(e.currentTarget=i[o],this.notifyTarget(e,n),e.propagationStopped||e.propagationImmediatelyStopped)return}}}},{key:"propagationPath",value:function(e){var n=[e],i=this.rootTarget.defaultView||null;if(i&&i===e)return n.unshift(i.document),n;for(var a=0;a<nT&&e!==this.rootTarget;a++)vr.isNode(e)&&e.parentNode&&(n.push(e.parentNode),e=e.parentNode);return i&&n.push(i),n}},{key:"hitTest",value:function(e){var n=e.viewportX,i=e.viewportY,a=this.context.config,s=a.width,o=a.height,A=a.disableHitTesting;return n<0||i<0||n>s||i>o?null:!A&&this.pickHandler(e)||this.rootTarget||null}},{key:"isNativeEventFromCanvas",value:function(e,n){var i,a=n==null?void 0:n.target;if((i=a)!==null&&i!==void 0&&i.shadowRoot&&(a=n.composedPath()[0]),a){if(a===e)return!0;if(e&&e.contains)return e.contains(a)}return n!=null&&n.composedPath?n.composedPath().indexOf(e)>-1:!1}},{key:"getExistedHTML",value:function(e){if(e.nativeEvent.composedPath)for(var n=0,i=e.nativeEvent.composedPath();n<i.length;n++){var a=i[n],s=this.nativeHTMLMap.get(a);if(s)return s}return null}},{key:"pickTarget",value:function(e){return this.hitTest({clientX:e.clientX,clientY:e.clientY,viewportX:e.viewportX,viewportY:e.viewportY,x:e.canvasX,y:e.canvasY})}},{key:"createPointerEvent",value:function(e,n,i,a){var s=this.allocateEvent(qf);this.copyPointerData(e,s),this.copyMouseData(e,s),this.copyData(e,s),s.nativeEvent=e.nativeEvent,s.originalEvent=e;var o=this.getExistedHTML(s),A=this.context.contextService.getDomElement();return s.target=i!=null?i:o||this.isNativeEventFromCanvas(A,s.nativeEvent)&&this.pickTarget(s)||a,typeof n=="string"&&(s.type=n),s}},{key:"createWheelEvent",value:function(e){var n=this.allocateEvent(em);this.copyWheelData(e,n),this.copyMouseData(e,n),this.copyData(e,n),n.nativeEvent=e.nativeEvent,n.originalEvent=e;var i=this.getExistedHTML(n),a=this.context.contextService.getDomElement();return n.target=i||this.isNativeEventFromCanvas(a,n.nativeEvent)&&this.pickTarget(n),n}},{key:"trackingData",value:function(e){return this.mappingState.trackingData[e]||(this.mappingState.trackingData[e]={pressTargetsByButton:{},clicksByButton:{},overTarget:null}),this.mappingState.trackingData[e]}},{key:"cloneWheelEvent",value:function(e){var n=this.allocateEvent(em);return n.nativeEvent=e.nativeEvent,n.originalEvent=e.originalEvent,this.copyWheelData(e,n),this.copyMouseData(e,n),this.copyData(e,n),n.target=e.target,n.path=e.composedPath().slice(),n.type=e.type,n}},{key:"clonePointerEvent",value:function(e,n){var i=this.allocateEvent(qf);return i.nativeEvent=e.nativeEvent,i.originalEvent=e.originalEvent,this.copyPointerData(e,i),this.copyMouseData(e,i),this.copyData(e,i),i.target=e.target,i.path=e.composedPath().slice(),i.type=n!=null?n:i.type,i}},{key:"copyPointerData",value:function(e,n){n.pointerId=e.pointerId,n.width=e.width,n.height=e.height,n.isPrimary=e.isPrimary,n.pointerType=e.pointerType,n.pressure=e.pressure,n.tangentialPressure=e.tangentialPressure,n.tiltX=e.tiltX,n.tiltY=e.tiltY,n.twist=e.twist}},{key:"copyMouseData",value:function(e,n){n.altKey=e.altKey,n.button=e.button,n.buttons=e.buttons,n.ctrlKey=e.ctrlKey,n.metaKey=e.metaKey,n.shiftKey=e.shiftKey,n.client.copyFrom(e.client),n.movement.copyFrom(e.movement),n.canvas.copyFrom(e.canvas),n.screen.copyFrom(e.screen),n.global.copyFrom(e.global),n.offset.copyFrom(e.offset)}},{key:"copyWheelData",value:function(e,n){n.deltaMode=e.deltaMode,n.deltaX=e.deltaX,n.deltaY=e.deltaY,n.deltaZ=e.deltaZ}},{key:"copyData",value:function(e,n){n.isTrusted=e.isTrusted,n.timeStamp=Jp.now(),n.type=e.type,n.detail=e.detail,n.view=e.view,n.page.copyFrom(e.page),n.viewport.copyFrom(e.viewport)}},{key:"allocateEvent",value:function(e){this.eventPool.has(e)||this.eventPool.set(e,[]);var n=this.eventPool.get(e).pop()||new e(this);return n.eventPhase=n.NONE,n.currentTarget=null,n.path=[],n.target=null,n}},{key:"freeEvent",value:function(e){if(e.manager!==this)throw new Error("It is illegal to free an event not managed by this EventBoundary!");var n=e.constructor;this.eventPool.has(n)||this.eventPool.set(n,[]),this.eventPool.get(n).push(e)}},{key:"notifyTarget",value:function(e,n){n=n!=null?n:e.type;var i=e.eventPhase===e.CAPTURING_PHASE||e.eventPhase===e.AT_TARGET?"".concat(n,"capture"):n;this.notifyListeners(e,i),e.eventPhase===e.AT_TARGET&&this.notifyListeners(e,n)}},{key:"notifyListeners",value:function(e,n){var i=e.currentTarget.emitter,a=i._events[n];if(a)if("fn"in a)a.once&&i.removeListener(n,a.fn,void 0,!0),a.fn.call(e.currentTarget||a.context,e);else for(var s=0;s<a.length&&!e.propagationImmediatelyStopped;s++)a[s].once&&i.removeListener(n,a[s].fn,void 0,!0),a[s].fn.call(e.currentTarget||a[s].context,e)}},{key:"findMountedTarget",value:function(e){if(!e)return null;for(var n=e[e.length-1],i=e.length-2;i>=0;i--){var a=e[i];if(a===this.rootTarget||vr.isNode(a)&&a.parentNode===n)n=e[i];else break}return n}},{key:"getCursor",value:function(e){for(var n=e;n;){var i=yM(n)&&n.getAttribute("cursor");if(i)return i;n=vr.isNode(n)&&n.parentNode}}}])}(),nm=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"getOrCreateCanvas",value:function(e,n){if(this.canvas)return this.canvas;if(e||se.offscreenCanvas)this.canvas=e||se.offscreenCanvas,this.context=this.canvas.getContext("2d",(0,D.Z)({willReadFrequently:!0},n));else try{this.canvas=new window.OffscreenCanvas(0,0),this.context=this.canvas.getContext("2d",(0,D.Z)({willReadFrequently:!0},n)),(!this.context||!this.context.measureText)&&(this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d"))}catch(i){this.canvas=document.createElement("canvas"),this.context=this.canvas.getContext("2d",(0,D.Z)({willReadFrequently:!0},n))}return this.canvas.width=10,this.canvas.height=10,this.canvas}},{key:"getOrCreateContext",value:function(e,n){return this.context?this.context:(this.getOrCreateCanvas(e,n),this.context)}}],[{key:"createCanvas",value:function(){try{return new window.OffscreenCanvas(0,0)}catch(e){}try{return document.createElement("canvas")}catch(e){}return null}}])}(),Mc=function(r){return r[r.CAMERA_CHANGED=0]="CAMERA_CHANGED",r[r.DISPLAY_OBJECT_CHANGED=1]="DISPLAY_OBJECT_CHANGED",r[r.NONE=2]="NONE",r}({}),iT=function(){function r(t,e){(0,N.Z)(this,r),this.inited=!1,this.stats={total:0,rendered:0},this.zIndexCounter=0,this.hooks={init:new ta,initAsync:new QM,dirtycheck:new $p,cull:new $p,beginFrame:new ta,beforeRender:new ta,render:new ta,afterRender:new ta,endFrame:new ta,destroy:new ta,pick:new UM,pickSync:new $p,pointerDown:new ta,pointerUp:new ta,pointerMove:new ta,pointerOut:new ta,pointerOver:new ta,pointerWheel:new ta,pointerCancel:new ta,click:new ta},this.globalRuntime=t,this.context=e}return(0,O.Z)(r,[{key:"init",value:function(e){var n=this,i=(0,D.Z)((0,D.Z)({},this.globalRuntime),this.context);this.context.renderingPlugins.forEach(function(a){a.apply(i,n.globalRuntime)}),this.hooks.init.call(),this.hooks.initAsync.getCallbacksNum()===0?(this.inited=!0,e()):this.hooks.initAsync.promise().then(function(){n.inited=!0,e()}).catch(function(a){})}},{key:"getStats",value:function(){return this.stats}},{key:"disableDirtyRectangleRendering",value:function(){var e=this.context.config.renderer,n=e.getConfig(),i=n.enableDirtyRectangleRendering;return!i||this.context.renderingContext.renderReasons.has(Mc.CAMERA_CHANGED)}},{key:"render",value:function(e,n,i){var a=this,s=e.getConfig(),o=this.context.renderingContext;if(this.stats.total=0,this.stats.rendered=0,this.zIndexCounter=0,this.globalRuntime.sceneGraphService.syncHierarchy(o.root),this.globalRuntime.sceneGraphService.notifyMutationObservers(e),o.renderReasons.size&&this.inited){o.dirtyRectangleRenderingDisabled=this.disableDirtyRectangleRendering();var A=o.renderReasons.size===1&&o.renderReasons.has(Mc.CAMERA_CHANGED),l=!s.disableRenderHooks||!A;l&&this.renderDisplayObject(o.root,s,o),this.hooks.beginFrame.call(n),l&&o.renderListCurrentFrame.forEach(function(c){a.hooks.beforeRender.call(c),a.hooks.render.call(c),a.hooks.afterRender.call(c)}),this.hooks.endFrame.call(n),o.renderListCurrentFrame=[],o.renderReasons.clear(),i()}}},{key:"renderDisplayObject",value:function(e,n,i){var a=this,s=n.renderer.getConfig(),o=s.enableDirtyCheck,A=s.enableCulling;function l(g){var v=g.renderable,y=g.sortable,E=o?v.dirty||i.dirtyRectangleRenderingDisabled?g:null:g,C=null;E&&(C=A?a.hooks.cull.call(E,a.context.camera):E,C&&(a.stats.rendered+=1,i.renderListCurrentFrame.push(C))),g.dirty(!1),y.renderOrder=a.zIndexCounter,a.zIndexCounter+=1,a.stats.total+=1,y.dirty&&(a.sort(g,y),y.dirty=!1,y.dirtyChildren=[],y.dirtyReason=void 0)}for(var c=[e];c.length>0;){var u,h=c.pop();l(h);for(var f=((u=h.sortable)===null||u===void 0||(u=u.sorted)===null||u===void 0?void 0:u.length)>0?h.sortable.sorted:h.childNodes,d=f.length-1;d>=0;d--)c.push(f[d])}}},{key:"sort",value:function(e,n){var i,a;(n==null||(i=n.sorted)===null||i===void 0?void 0:i.length)>0&&n.dirtyReason!==gc.Z_INDEX_CHANGED?n.dirtyChildren.forEach(function(s){var o=n.sorted.indexOf(s);o>-1&&n.sorted.splice(o,1);var A=e.childNodes.indexOf(s);if(A>-1)if(n.sorted.length===0)n.sorted.push(s);else{var l=wM(n.sorted,s);n.sorted.splice(l,0,s)}}):n.sorted=e.childNodes.slice().sort(aE),((a=n.sorted)===null||a===void 0?void 0:a.length)>0&&e.childNodes.filter(function(s){return s.parsedStyle.zIndex}).length===0&&(n.sorted=[])}},{key:"destroy",value:function(){this.inited=!1,this.hooks.destroy.call()}},{key:"dirty",value:function(){this.context.renderingContext.renderReasons.add(Mc.DISPLAY_OBJECT_CHANGED)}}])}(),aT=/\[\s*(.*)=(.*)\s*\]/,sT=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"selectOne",value:function(e,n){var i=this;if(e.startsWith("."))return n.find(function(A){return((A==null?void 0:A.classList)||[]).indexOf(i.getIdOrClassname(e))>-1});if(e.startsWith("#"))return n.find(function(A){return A.id===i.getIdOrClassname(e)});if(e.startsWith("[")){var a=this.getAttribute(e),s=a.name,o=a.value;return s?n.find(function(A){return n!==A&&(s==="name"?A.name===o:i.attributeToString(A,s)===o)}):null}return n.find(function(A){return n!==A&&A.nodeName===e})}},{key:"selectAll",value:function(e,n){var i=this;if(e.startsWith("."))return n.findAll(function(A){return n!==A&&((A==null?void 0:A.classList)||[]).indexOf(i.getIdOrClassname(e))>-1});if(e.startsWith("#"))return n.findAll(function(A){return n!==A&&A.id===i.getIdOrClassname(e)});if(e.startsWith("[")){var a=this.getAttribute(e),s=a.name,o=a.value;return s?n.findAll(function(A){return n!==A&&(s==="name"?A.name===o:i.attributeToString(A,s)===o)}):[]}return n.findAll(function(A){return n!==A&&A.nodeName===e})}},{key:"is",value:function(e,n){if(e.startsWith("."))return n.className===this.getIdOrClassname(e);if(e.startsWith("#"))return n.id===this.getIdOrClassname(e);if(e.startsWith("[")){var i=this.getAttribute(e),a=i.name,s=i.value;return a==="name"?n.name===s:this.attributeToString(n,a)===s}return n.nodeName===e}},{key:"getIdOrClassname",value:function(e){return e.substring(1)}},{key:"getAttribute",value:function(e){var n=e.match(aT),i="",a="";return n&&n.length>2&&(i=n[1].replace(/"/g,""),a=n[2].replace(/"/g,"")),{name:i,value:a}}},{key:"attributeToString",value:function(e,n){if(!e.getAttribute)return"";var i=e.getAttribute(n);return Pe(i)?"":i.toString?i.toString():""}}])}(),yn=function(r){return r.ATTR_MODIFIED="DOMAttrModified",r.INSERTED="DOMNodeInserted",r.MOUNTED="DOMNodeInsertedIntoDocument",r.REMOVED="removed",r.UNMOUNTED="DOMNodeRemovedFromDocument",r.REPARENT="reparent",r.DESTROY="destroy",r.BOUNDS_CHANGED="bounds-changed",r.CULLED="culled",r}({}),Ys=function(r){function t(e,n,i,a,s,o,A,l){var c;return(0,N.Z)(this,t),c=(0,U.Z)(this,t,[null]),c.relatedNode=n,c.prevValue=i,c.newValue=a,c.attrName=s,c.attrChange=o,c.prevParsedValue=A,c.newParsedValue=l,c.type=e,c}return(0,L.Z)(t,r),(0,O.Z)(t)}(Jf);Ys.ADDITION=2,Ys.MODIFICATION=1,Ys.REMOVAL=3;var oT=new Ys(yn.REPARENT,null,"","","",0,"",""),AT=fu(),$f=xt(),lT=Lt(1,1,1),cT=ne(),uT=fu(),al=xt(),hT=ne(),sl=Er(),fT=xt(),dT=Er(),gT=xt(),Yu=xt(),ol=xt(),td=ne(),yE=Er(),wE=Er(),ed=Er(),vT=function(){function r(t){(0,N.Z)(this,r),this.displayObjectDependencyMap=new WeakMap,this.runtime=t}return(0,O.Z)(r,[{key:"matches",value:function(e,n){return this.runtime.sceneGraphSelector.is(e,n)}},{key:"querySelector",value:function(e,n){return this.runtime.sceneGraphSelector.selectOne(e,n)}},{key:"querySelectorAll",value:function(e,n){return this.runtime.sceneGraphSelector.selectAll(e,n)}},{key:"attach",value:function(e,n,i){var a,s=!1;e.parentNode&&(s=e.parentNode!==n,this.detach(e));var o=e.nodeName===Zt.FRAGMENT,A=Xf(n);e.parentNode=n;var l=o?e.childNodes:[e];we(i)?l.forEach(function(g){n.childNodes.splice(i,0,g),g.parentNode=n}):l.forEach(function(g){n.childNodes.push(g),g.parentNode=n});var c=n,u=c.sortable;if((u!=null&&(a=u.sorted)!==null&&a!==void 0&&a.length||u.dirty||e.parsedStyle.zIndex)&&(u.dirtyChildren.indexOf(e)===-1&&u.dirtyChildren.push(e),u.dirty=!0,u.dirtyReason=gc.ADDED),!A){if(o)this.dirtyFragment(e);else{var h=e.transformable;h&&this.dirtyWorldTransform(e,h)}if(s){var f,d=((f=n.ownerDocument)===null||f===void 0||(f=f.defaultView)===null||f===void 0||(f=f.getConfig())===null||f===void 0||(f=f.future)===null||f===void 0?void 0:f.experimentalCancelEventPropagation)===!0;e.dispatchEvent(oT,d,d)}}}},{key:"detach",value:function(e){var n,i;if(e.parentNode){var a=e.transformable,s=e.parentNode,o=s.sortable;(o!=null&&(n=o.sorted)!==null&&n!==void 0&&n.length||(i=e.style)!==null&&i!==void 0&&i.zIndex)&&(o.dirtyChildren.indexOf(e)===-1&&o.dirtyChildren.push(e),o.dirty=!0,o.dirtyReason=gc.REMOVED);var A=e.parentNode.childNodes.indexOf(e);A>-1&&e.parentNode.childNodes.splice(A,1),a&&this.dirtyWorldTransform(e,a),e.parentNode=null}}},{key:"getLocalPosition",value:function(e){return e.transformable.localPosition}},{key:"getLocalRotation",value:function(e){return e.transformable.localRotation}},{key:"getLocalScale",value:function(e){return e.transformable.localScale}},{key:"getLocalSkew",value:function(e){return e.transformable.localSkew}},{key:"getLocalTransform",value:function(e){var n=e.transformable;return zs(n),n.localTransform}},{key:"setLocalPosition",value:function(e,n){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,s=e.transformable;Yu[0]=n[0],Yu[1]=n[1],Yu[2]=(i=n[2])!==null&&i!==void 0?i:0,!Zi(s.localPosition,Yu)&&(Kt(s.localPosition,Yu),a&&this.dirtyLocalTransform(e,s))}},{key:"translateLocal",value:function(e,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=Lt(n,i,a));var s=e.transformable;Zi(n,$f)||(Kr(n,n,s.localRotation),oe(s.localPosition,s.localPosition,n),this.dirtyLocalTransform(e,s))}},{key:"setLocalRotation",value:function(e,n,i,a,s){var o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;typeof n=="number"&&(n=zA(sl,n,i,a,s));var A=e.transformable;KA(A.localRotation,n),o&&this.dirtyLocalTransform(e,A)}},{key:"rotateLocal",value:function(e,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=Lt(n,i,a));var s=e.transformable;Kn(wE,n[0],n[1],n[2]),hu(s.localRotation,s.localRotation,wE),this.dirtyLocalTransform(e,s)}},{key:"setLocalScale",value:function(e,n){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,s=e.transformable;$t(al,n[0],n[1],(i=n[2])!==null&&i!==void 0?i:s.localScale[2]),!Zi(al,s.localScale)&&(Kt(s.localScale,al),a&&this.dirtyLocalTransform(e,s))}},{key:"scaleLocal",value:function(e,n){var i,a=e.transformable;He(a.localScale,a.localScale,$t(al,n[0],n[1],(i=n[2])!==null&&i!==void 0?i:1)),this.dirtyLocalTransform(e,a)}},{key:"setLocalSkew",value:function(e,n,i){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;typeof n=="number"&&(n=l0(uT,n,i));var s=e.transformable;A0(s.localSkew,n),a&&this.dirtyLocalTransform(e,s)}},{key:"setLocalEulerAngles",value:function(e,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;typeof n=="number"&&(n=Lt(n,i,a));var o=e.transformable;Kn(o.localRotation,n[0],n[1],n[2]),s&&this.dirtyLocalTransform(e,o)}},{key:"setLocalTransform",value:function(e,n){var i=_n(fT,n),a=Wo(dT,n),s=ks(gT,n);this.setLocalScale(e,s,!1),this.setLocalPosition(e,i,!1),this.setLocalRotation(e,a,void 0,void 0,void 0,!1),this.dirtyLocalTransform(e,e.transformable)}},{key:"resetLocalTransform",value:function(e){this.setLocalScale(e,lT,!1),this.setLocalPosition(e,$f,!1),this.setLocalEulerAngles(e,$f,void 0,void 0,!1),this.setLocalSkew(e,AT,void 0,!1),this.dirtyLocalTransform(e,e.transformable)}},{key:"getPosition",value:function(e){var n=e.transformable;return _n(n.position,this.getWorldTransform(e,n))}},{key:"getRotation",value:function(e){var n=e.transformable;return Wo(n.rotation,this.getWorldTransform(e,n))}},{key:"getScale",value:function(e){var n=e.transformable;return ks(n.scaling,this.getWorldTransform(e,n))}},{key:"getOrigin",value:function(e){return e.getGeometryBounds(),e.transformable.origin}},{key:"getWorldTransform",value:function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.transformable;return!n.localDirtyFlag&&!n.dirtyFlag||(e.parentNode&&e.parentNode.transformable&&this.getWorldTransform(e.parentNode),this.internalUpdateTransform(e)),n.worldTransform}},{key:"setPosition",value:function(e,n){var i,a=e.transformable;if(ol[0]=n[0],ol[1]=n[1],ol[2]=(i=n[2])!==null&&i!==void 0?i:0,!Zi(this.getPosition(e),ol)){if(Kt(a.position,ol),e.parentNode===null||!e.parentNode.transformable)Kt(a.localPosition,ol);else{var s=e.parentNode.transformable;Ge(td,s.worldTransform),An(td,td),ye(a.localPosition,ol,td)}this.dirtyLocalTransform(e,a)}}},{key:"translate",value:function(e,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=$t(al,n,i,a)),!Zi(n,$f)&&(oe(al,this.getPosition(e),n),this.setPosition(e,al))}},{key:"setRotation",value:function(e,n,i,a,s){var o=e.transformable;if(typeof n=="number"&&(n=Jh(n,i,a,s)),e.parentNode===null||!e.parentNode.transformable)this.setLocalRotation(e,n);else{var A=this.getRotation(e.parentNode);KA(sl,A),HA(sl,sl),Qs(o.localRotation,sl,n),Zo(o.localRotation,o.localRotation),this.dirtyLocalTransform(e,o)}}},{key:"rotate",value:function(e,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=Lt(n,i,a));var s=e.transformable;if(e.parentNode===null||!e.parentNode.transformable)this.rotateLocal(e,n);else{var o=sl;Kn(o,n[0],n[1],n[2]);var A=this.getRotation(e),l=this.getRotation(e.parentNode);KA(ed,l),HA(ed,ed),Qs(o,ed,o),Qs(s.localRotation,o,A),Zo(s.localRotation,s.localRotation),this.dirtyLocalTransform(e,s)}}},{key:"setOrigin",value:function(e,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=[n,i,a]);var s=e.transformable;if(!(n[0]===s.origin[0]&&n[1]===s.origin[1]&&n[2]===s.origin[2])){var o=s.origin;o[0]=n[0],o[1]=n[1],o[2]=n[2]||0,this.dirtyLocalTransform(e,s)}}},{key:"setEulerAngles",value:function(e,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=Lt(n,i,a));var s=e.transformable;if(e.parentNode===null||!e.parentNode.transformable)this.setLocalEulerAngles(e,n);else{Kn(s.localRotation,n[0],n[1],n[2]);var o=this.getRotation(e.parentNode);KA(yE,HA(sl,o)),hu(s.localRotation,s.localRotation,yE),this.dirtyLocalTransform(e,s)}}},{key:"getGeometryBounds",value:function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=e,a=i.geometry;a.dirty&&se.styleValueRegistry.updateGeometry(e);var s=n?a.renderBounds:a.contentBounds||null;return s||new Yn}},{key:"getTransformedGeometryBounds",value:function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=arguments.length>2?arguments[2]:void 0,a=this.getGeometryBounds(e,n);if(!Yn.isEmpty(a)){var s=i||new Yn;return s.setFromTransformedAABB(a,this.getWorldTransform(e)),s}return null}},{key:"getBounds",value:function(e){var n=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=e,s=a.renderable;if(!s.boundsDirty&&!i&&s.bounds)return s.bounds;if(!s.renderBoundsDirty&&i&&s.renderBounds)return s.renderBounds;var o=i?s.renderBounds:s.bounds,A=this.getTransformedGeometryBounds(e,i,o),l=e.childNodes;if(l.forEach(function(h){var f=n.getBounds(h,i);f&&(A?A.add(f):(A=o||new Yn,A.update(f.center,f.halfExtents)))}),A||(A=new Yn),i){var c=sE(e);if(c){var u=c.parsedStyle.clipPath.getBounds(i);A?u&&(A=u.intersection(A)):A.update(u.center,u.halfExtents)}}return i?(s.renderBounds=A,s.renderBoundsDirty=!1):(s.bounds=A,s.boundsDirty=!1),A}},{key:"getLocalBounds",value:function(e){if(e.parentNode){var n=cT;e.parentNode.transformable&&(n=An(hT,this.getWorldTransform(e.parentNode)));var i=this.getBounds(e);if(!Yn.isEmpty(i)){var a=new Yn;return a.setFromTransformedAABB(i,n),a}}return this.getBounds(e)}},{key:"getBoundingClientRect",value:function(e){var n,i,a=this.getGeometryBounds(e);Yn.isEmpty(a)||(i=new Yn,i.setFromTransformedAABB(a,this.getWorldTransform(e)));var s=(n=e.ownerDocument)===null||n===void 0||(n=n.defaultView)===null||n===void 0?void 0:n.getContextService().getBoundingClientRect();if(i){var o=i.getMin(),A=(0,Q.Z)(o,2),l=A[0],c=A[1],u=i.getMax(),h=(0,Q.Z)(u,2),f=h[0],d=h[1];return new cs(l+((s==null?void 0:s.left)||0),c+((s==null?void 0:s.top)||0),f-l,d-c)}return new cs((s==null?void 0:s.left)||0,(s==null?void 0:s.top)||0,0,0)}},{key:"internalUpdateTransform",value:function(e){var n,i=(n=e.parentNode)===null||n===void 0?void 0:n.transformable;zs(e.transformable),sA(e.transformable,i)}},{key:"internalUpdateElement",value:function(e,n){var i,a,s,o,A=((i=e.ownerDocument)===null||i===void 0||(i=i.defaultView)===null||i===void 0||(i=i.getConfig())===null||i===void 0||(i=i.future)===null||i===void 0?void 0:i.experimentalAttributeUpdateOptimization)===!0,l=n[n.length-1],c=(l==null?void 0:l.transformDirty)||((a=e.transformable)===null||a===void 0?void 0:a.localDirtyFlag);if(e.transformable){var u;(u=e.transformable).dirtyFlag||(u.dirtyFlag=c)}if(this.internalUpdateTransform(e),c){var h;(h=e.dirty)===null||h===void 0||h.call(e,!0,!0)}var f=((s=e.renderable)===null||s===void 0?void 0:s.boundsDirty)||((o=e.renderable)===null||o===void 0?void 0:o.renderBoundsDirty);if((c||f)&&(l==null?void 0:l.shapeUpdated)===!1&&A)for(var d=n.length-1;d>=0;){var g,v,y=n[d];if(y.shapeUpdated)break;(g=(v=y.node).dirty)===null||g===void 0||g.call(v,!0,!0),y.shapeUpdated=!0,d-=1}return c}},{key:"syncHierarchy",value:function(e){for(var n,i,a=[e],s=e.parentNode?[{node:e.parentNode,transformDirty:((n=e.parentNode.transformable)===null||n===void 0?void 0:n.localDirtyFlag)||((i=e.parentNode.transformable)===null||i===void 0?void 0:i.dirtyFlag),shapeUpdated:!1}]:[];a.length>0;){for(var o=a.pop(),A=s[s.length-1];s.length>0&&o.parentNode!==A.node;)A=s.pop();var l=this.internalUpdateElement(o,s);if(o.childNodes.length>0){for(var c=o.childNodes.length-1;c>=0;c--)a.push(o.childNodes[c]);s.push({node:o,transformDirty:l,shapeUpdated:!1})}}}},{key:"dirtyLocalTransform",value:function(e,n){Xf(e)||n.localDirtyFlag||(n.localDirtyFlag=!0,n.dirtyFlag||this.dirtyWorldTransform(e,n))}},{key:"dirtyWorldTransform",value:function(e,n){this.dirtyWorldInternal(e,n),this.dirtyToRoot(e,!0)}},{key:"dirtyWorldInternal",value:function(e,n){var i,a=this,s=((i=e.ownerDocument)===null||i===void 0||(i=i.defaultView)===null||i===void 0||(i=i.getConfig())===null||i===void 0||(i=i.future)===null||i===void 0?void 0:i.experimentalAttributeUpdateOptimization)===!0;n.dirtyFlag||(n.dirtyFlag=!0,e.dirty(!0,!0),s||e.childNodes.forEach(function(o){var A=o.transformable;a.dirtyWorldInternal(o,A)}))}},{key:"dirtyToRoot",value:function(e){for(var n,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=e,s=((n=e.ownerDocument)===null||n===void 0||(n=n.defaultView)===null||n===void 0||(n=n.getConfig())===null||n===void 0||(n=n.future)===null||n===void 0?void 0:n.experimentalAttributeUpdateOptimization)===!0;a;){var o,A;if((o=(A=a).dirty)===null||o===void 0||o.call(A,!0,!0),s)break;a=a.parentNode}i&&e.forEach(function(u){var h;(h=u.dirty)===null||h===void 0||h.call(u,!0,!0)}),this.informDependentDisplayObjects(e);var l=e.mutations||[],c=l.find(function(u){return u.type==="attributes"&&u._boundsChangeData});c?c._boundsChangeData={affectChildren:c._boundsChangeData.affectChildren||i}:(c={type:"attributes",target:e,_boundsChangeData:{affectChildren:i}},l.push(c)),e.mutations=l}},{key:"dirtyFragment",value:function(e){var n,i,a=e.transformable;a&&(a.dirtyFlag=!0,a.localDirtyFlag=!0),(n=(i=e).dirty)===null||n===void 0||n.call(i,!0,!0);for(var s=e.childNodes.length,o=0;o<s;o++)this.dirtyFragment(e.childNodes[o])}},{key:"notifyMutationObservers",value:function(e){var n=new Set;if(e.getRoot().forEach(function(a){(a.mutations||[]).forEach(function(s){s.type==="attributes"&&s._boundsChangeData&&(s._boundsChangeData.affectChildren?a.forEach(function(o){var A=(0,D.Z)({},s);A.target=o,n.add(A)}):n.add(s))}),a.mutations=void 0}),n.size>0){var i=new Wr(yn.BOUNDS_CHANGED,{detail:Array.from(n)});e.dispatchEvent(i,!0,!0)}}},{key:"updateDisplayObjectDependency",value:function(e,n,i,a){if(n&&n!==i){var s=this.displayObjectDependencyMap.get(n);if(s&&s[e]){var o=s[e].indexOf(a);s[e].splice(o,1)}}if(i){var A=this.displayObjectDependencyMap.get(i);A||(this.displayObjectDependencyMap.set(i,{}),A=this.displayObjectDependencyMap.get(i)),A[e]||(A[e]=[]),A[e].push(a)}}},{key:"informDependentDisplayObjects",value:function(e){var n,i=this,a=this.displayObjectDependencyMap.get(e);if(a){var s=(n=e.ownerDocument)===null||n===void 0||(n=n.defaultView)===null||n===void 0||(n=n.getConfig())===null||n===void 0||(n=n.future)===null||n===void 0?void 0:n.experimentalCancelEventPropagation;Object.keys(a).forEach(function(o){a[o].forEach(function(A){i.dirtyToRoot(A,!0),A.dispatchEvent(new Ys(yn.ATTR_MODIFIED,A,i,i,o,Ys.MODIFICATION,i,i),s,s),A.isCustomElement&&A.isConnected&&A.attributeChangedCallback&&A.attributeChangedCallback(o,i,i)})})}}}])}(),EE=function(){function r(t){if((0,N.Z)(this,r),t<=0)throw new Error("LRU capacity must be a positive number.");this.capacity=t,this.cache=new Map}return(0,O.Z)(r,[{key:"get",value:function(e){if(this.cache.has(e)){var n=this.cache.get(e);return this.cache.delete(e),this.cache.set(e,n),n}}},{key:"put",value:function(e,n){if(this.cache.has(e)&&this.cache.delete(e),this.cache.set(e,n),this.cache.size>this.capacity){var i=this.cache.keys().next().value;this.cache.delete(i)}}},{key:"len",value:function(){return this.cache.size}},{key:"clear",value:function(){this.cache.clear()}}])}(),Al={MetricsString:"|\xC9q\xC5",BaselineSymbol:"M",BaselineMultiplier:1.4,HeightMultiplier:2,Newlines:[10,13],BreakingSpaces:[9,32,8192,8193,8194,8195,8196,8197,8198,8200,8201,8202,8287,12288]},BE=/[a-zA-Z0-9\u00C0-\u00D6\u00D8-\u00f6\u00f8-\u00ff!"#$%&'()*+,-./:;]/,pT=/[!%),.:;?\]}¢°·'""†‡›℃∶、。〃〆〕〗〞﹚﹜!"%'),.:;?!]}~]/,mT=/[$(£¥·'"〈《「『【〔〖〝﹙﹛$(.[{£¥]/,yT=/[!),.:;?\]}¢·–—'"•"、。〆〞〕〉》」︰︱︲︳﹐﹑﹒﹔﹕﹖﹘﹚﹜!),.:;?︶︸︺︼︾﹀﹂﹗]|}、]/,wT=/[([{£¥'"‵〈《「『〔〝︴﹙﹛({︵︷︹︻︽︿﹁﹃﹏]/,ET=/[)\]}〕〉》」』】〙〗〟'"⦆»ヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻‐゠–〜?!‼⁇⁈⁉・、:;,。.]/,BT=/[([{〔〈《「『【〘〖〝'"⦅«—...‥〳〴〵]/,bT=/[!%),.:;?\]}¢°'"†‡℃〆〈《「『〕!%),.:;?]}]/,xT=/[$([{£¥'"々〇〉》」〔$([{⦆¥₩#]/,CT=new RegExp("".concat(pT.source,"|").concat(yT.source,"|").concat(ET.source,"|").concat(bT.source)),ST=new RegExp("".concat(mT.source,"|").concat(wT.source,"|").concat(BT.source,"|").concat(xT.source)),MT=function(){function r(t){var e=this;(0,N.Z)(this,r),this.fontMetricsCache={},this.shouldBreakByKinsokuShorui=function(n,i){return e.isBreakingSpace(i)?!1:!!(n&&(ST.exec(i)||CT.exec(n)))},this.trimByKinsokuShorui=function(n){var i=(0,k.Z)(n),a=i[i.length-2];if(!a)return n;var s=a[a.length-1];return i[i.length-2]=a.slice(0,-1),i[i.length-1]=s+i[i.length-1],i},this.runtime=t,this.charWidthCache=new EE(100)}return(0,O.Z)(r,[{key:"measureFont",value:function(e,n){if(this.fontMetricsCache[e])return this.fontMetricsCache[e];var i={ascent:0,descent:0,fontSize:0},a=this.runtime.offscreenCanvasCreator.getOrCreateCanvas(n),s=this.runtime.offscreenCanvasCreator.getOrCreateContext(n,{willReadFrequently:!0});s.font=e;var o=Al.MetricsString+Al.BaselineSymbol,A=Math.ceil(s.measureText(o).width),l=Math.ceil(s.measureText(Al.BaselineSymbol).width),c=Al.HeightMultiplier*l;l=l*Al.BaselineMultiplier|0,a.width=A,a.height=c,s.fillStyle="#f00",s.fillRect(0,0,A,c),s.font=e,s.textBaseline="alphabetic",s.fillStyle="#000",s.fillText(o,0,l);var u=s.getImageData(0,0,A||1,c||1).data,h=u.length,f=A*4,d=0,g=0,v=!1;for(d=0;d<l;++d){for(var y=0;y<f;y+=4)if(u[g+y]!==255){v=!0;break}if(!v)g+=f;else break}for(i.ascent=l-d,g=h-f,v=!1,d=c;d>l;--d){for(var E=0;E<f;E+=4)if(u[g+E]!==255){v=!0;break}if(!v)g-=f;else break}return i.descent=d-l,i.fontSize=i.ascent+i.descent,this.fontMetricsCache[e]=i,i}},{key:"measureText",value:function(e,n,i){var a=n.fontSize,s=a===void 0?16:a,o=n.wordWrap,A=o===void 0?!1:o,l=n.lineHeight,c=n.lineWidth,u=c===void 0?1:c,h=n.textBaseline,f=h===void 0?"alphabetic":h,d=n.textAlign,g=d===void 0?"start":d,v=n.letterSpacing,y=v===void 0?0:v,E=n.textPath;n.textPathSide,n.textPathStartOffset;var C=n.leading,I=C===void 0?0:C,R=dE(n),K=this.measureFont(R,i);K.fontSize===0&&(K.fontSize=s,K.ascent=s);var W=this.runtime.offscreenCanvasCreator.getOrCreateContext(i);W.font=R,n.isOverflowing=!1;var V=A?this.wordWrap(e,n,i):e,J=V.split(/(?:\r\n|\r|\n)/),et=new Array(J.length),at=0;if(E){E.getTotalLength();for(var ct=0;ct<J.length;ct++)W.measureText(J[ct]).width+(J[ct].length-1)*y}else{for(var pt=0;pt<J.length;pt++){var wt=W.measureText(J[pt]).width+(J[pt].length-1)*y;et[pt]=wt,at=Math.max(at,wt)}var Ct=at+u,Ht=l||K.fontSize+u,Rt=Math.max(Ht,K.fontSize+u)+(J.length-1)*(Ht+I);Ht+=I;var St=0;return f==="middle"?St=-Rt/2:f==="bottom"||f==="alphabetic"||f==="ideographic"?St=-Rt:(f==="top"||f==="hanging")&&(St=0),{font:R,width:Ct,height:Rt,lines:J,lineWidths:et,lineHeight:Ht,maxLineWidth:at,fontProperties:K,lineMetrics:et.map(function(Ot,Gt){var qt=0;return g==="center"||g==="middle"?qt-=Ot/2:(g==="right"||g==="end")&&(qt-=Ot),new cs(qt-u/2,St+Gt*Ht,Ot+u,Ht)})}}}},{key:"wordWrap",value:function(e,n,i){var a=this,s=Array.from(e);if(s.length===0)return"";var o=this,A=n.wordWrapWidth,l=A===void 0?0:A,c=n.letterSpacing,u=c===void 0?0:c,h=n.maxLines,f=h===void 0?1/0:h,d=n.textOverflow,g=this.runtime.offscreenCanvasCreator.getOrCreateContext(i),v=l+u,y="";d==="ellipsis"?y="...":d&&d!=="clip"&&(y=d);var E=[""],C=0,I=0,R=-1,K=dE(n),W=this.charWidthCache.get(K);W||(W=new EE(500),this.charWidthCache.put(K,W));var V=function(Ot){return a.getFromCache(Ot,u,W,g)},J=V(y);function et(St,Ot,Gt,qt){for(;V(St)<qt&&Ot<s.length-1&&!o.isNewline(s[Ot+1]);)Ot+=1,St+=s[Ot];for(;V(St)>qt&&Ot>=Gt;)Ot-=1,St=St.slice(0,-1);return{lineTxt:St,txtLastCharIndex:Ot}}function at(St,Ot){if(!(J<=0||J>v)){if(!E[St]){E[St]=y;return}var Gt=et(E[St],Ot,R+1,v-J);E[St]=Gt.lineTxt+y}}for(var ct=0;ct<s.length;ct++){var pt=s[ct],wt=s[ct-1],Ct=s[ct+1],Ht=V(pt);if(this.isNewline(pt)){if(C+1>=f){ct<s.length-1&&at(C,ct-1),n.isOverflowing=!0;break}R=ct-1,C+=1,I=0,E[C]="";continue}if(Ht>v){at(C,ct-1),n.isOverflowing=!0;break}if(I>0&&I+Ht>v){var Rt=et(E[C],ct-1,R+1,v);if(Rt.txtLastCharIndex!==ct-1){if(E[C]=Rt.lineTxt,Rt.txtLastCharIndex===s.length-1)break;ct=Rt.txtLastCharIndex+1,pt=s[ct],wt=s[ct-1],Ct=s[ct+1],Ht=V(pt)}if(C+1>=f){at(C,ct-1),n.isOverflowing=!0;break}if(R=ct-1,C+=1,I=0,E[C]="",this.isBreakingSpace(pt))continue;this.canBreakInLastChar(pt)||(E=this.trimToBreakable(E),I=this.sumTextWidthByCache(E[C]||"",V)),this.shouldBreakByKinsokuShorui(pt,Ct)&&(E=this.trimByKinsokuShorui(E),I+=V(wt||""))}I+=Ht,E[C]+=pt}return E.join(`
|
|
|
`)}},{key:"isBreakingSpace",value:function(e){return typeof e!="string"?!1:Al.BreakingSpaces.indexOf(e.charCodeAt(0))>=0}},{key:"isNewline",value:function(e){return typeof e!="string"?!1:Al.Newlines.indexOf(e.charCodeAt(0))>=0}},{key:"trimToBreakable",value:function(e){var n=(0,k.Z)(e),i=n[n.length-2],a=this.findBreakableIndex(i);if(a===-1||!i)return n;var s=i.slice(a,a+1),o=this.isBreakingSpace(s),A=a+1,l=a+(o?0:1);return n[n.length-1]+=i.slice(A,i.length),n[n.length-2]=i.slice(0,l),n}},{key:"canBreakInLastChar",value:function(e){return!(e&&BE.test(e))}},{key:"sumTextWidthByCache",value:function(e,n){return e.split("").reduce(function(i,a){return i+n(a)},0)}},{key:"findBreakableIndex",value:function(e){for(var n=e.length-1;n>=0;n--)if(!BE.test(e[n]))return n;return-1}},{key:"getFromCache",value:function(e,n,i,a){var s=i.get(e);if(typeof s!="number"){var o=e.length*n,A=a.measureText(e);s=A.width+o,i.put(e,s)}return s}},{key:"clearCache",value:function(){this.fontMetricsCache={},this.charWidthCache.clear()}}])}(),se={},TT=function(r){var t=new qM,e=new JM;return r={},(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(r,Zt.FRAGMENT,null),Zt.CIRCLE,new ZM),Zt.ELLIPSE,new jM),Zt.RECT,t),Zt.IMAGE,t),Zt.GROUP,new tT),Zt.LINE,new YM),Zt.TEXT,new $M(se)),Zt.POLYLINE,e),Zt.POLYGON,e),(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(r,Zt.PATH,new XM),Zt.HTML,new eT),Zt.MESH,null)}(),FT=function(r){var t=new aM,e=new jp;return r={},(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(r,le.PERCENTAGE,null),le.NUMBER,new cM),le.ANGLE,new rM),le.DEFINED_PATH,new iM),le.PAINT,t),le.COLOR,t),le.FILTER,new sM),le.LENGTH,e),le.LENGTH_PERCENTAGE,e),le.LENGTH_PERCENTAGE_12,new oM),(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(r,le.LENGTH_PERCENTAGE_14,new AM),le.COORDINATE,new jp),le.OFFSET_DISTANCE,new uM),le.OPACITY_VALUE,new hM),le.PATH,new fM),le.LIST_OF_POINTS,new dM),le.SHADOW_BLUR,new gM),le.TEXT,new vM),le.TEXT_TRANSFORM,new pM),le.TRANSFORM,new zM),(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(r,le.TRANSFORM_ORIGIN,new VM),le.Z_INDEX,new WM),le.MARKER,new lM)}(),OT=function(){return typeof globalThis!="undefined"?globalThis:typeof self!="undefined"?self:typeof window!="undefined"?window:typeof M.g!="undefined"?M.g:{}};se.CameraContribution=Ru,se.AnimationTimeline=null,se.EasingFunction=null,se.offscreenCanvasCreator=new nm,se.sceneGraphSelector=new sT,se.sceneGraphService=new vT(se),se.textService=new MT(se),se.geometryUpdaterFactory=TT,se.CSSPropertySyntaxFactory=FT,se.styleValueRegistry=new eM(se),se.layoutRegistry=null,se.globalThis=OT(),se.enableStyleSyntax=!0,se.enableSizeAttenuation=!1;var bE=0;function R6(){bE=0}var rm=new Ys(yn.INSERTED,null,"","","",0,"",""),im=new Ys(yn.REMOVED,null,"","","",0,"",""),xE=new Wr(yn.DESTROY),IT=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.entity=bE++,e.transformable={dirtyFlag:!1,localDirtyFlag:!1,localPosition:[0,0,0],localRotation:[0,0,0,1],localScale:[1,1,1],localTransform:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],localSkew:[0,0],position:[0,0,0],rotation:[0,0,0,1],scaling:[1,1,1],worldTransform:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],origin:[0,0,0]},e.renderable={bounds:void 0,boundsDirty:!0,renderBounds:void 0,renderBoundsDirty:!0,dirtyRenderBounds:void 0,dirty:!1},e.geometry={contentBounds:void 0,renderBounds:void 0,dirty:!0},e.cullable={strategy:vp.Standard,visibilityPlaneMask:-1,visible:!0,enable:!0},e.sortable={dirty:!1,sorted:void 0,renderOrder:0,dirtyChildren:[],dirtyReason:void 0},e.namespaceURI="g",e.scrollLeft=0,e.scrollTop=0,e.clientTop=0,e.clientLeft=0,e.style={},e.computedStyle={},e.parsedStyle={},e.attributes={},e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"dirty",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,i=arguments.length>1?arguments[1]:void 0;this.renderable.dirty=n,i!==void 0&&(this.renderable.boundsDirty=i,this.renderable.renderBoundsDirty=i,this.geometry.dirty=i)}},{key:"className",get:function(){return this.getAttribute("class")||""},set:function(n){this.setAttribute("class",n)}},{key:"classList",get:function(){return this.className.split(" ").filter(function(n){return n!==""})}},{key:"tagName",get:function(){return this.nodeName}},{key:"children",get:function(){return this.childNodes}},{key:"childElementCount",get:function(){return this.childNodes.length}},{key:"firstElementChild",get:function(){return this.firstChild}},{key:"lastElementChild",get:function(){return this.lastChild}},{key:"parentElement",get:function(){return this.parentNode}},{key:"nextSibling",get:function(){if(this.parentNode){var n=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[n+1]||null}return null}},{key:"previousSibling",get:function(){if(this.parentNode){var n=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[n-1]||null}return null}},{key:"cloneNode",value:function(n){throw new Error(On)}},{key:"appendChild",value:function(n,i){var a;if(n.destroyed)throw new Error(Of);return se.sceneGraphService.attach(n,this,i),(a=this.ownerDocument)!==null&&a!==void 0&&a.defaultView&&(!Xf(this)&&n.nodeName===Zt.FRAGMENT?this.ownerDocument.defaultView.mountFragment(n):this.ownerDocument.defaultView.mountChildren(n)),this.isMutationObserved&&(rm.relatedNode=this,n.dispatchEvent(rm)),n}},{key:"insertBefore",value:function(n,i){if(!i)this.appendChild(n);else{n.parentElement&&n.parentElement.removeChild(n);var a=this.childNodes.indexOf(i);a===-1?this.appendChild(n):this.appendChild(n,a)}return n}},{key:"replaceChild",value:function(n,i){var a=this.childNodes.indexOf(i);return this.removeChild(i),this.appendChild(n,a),i}},{key:"removeChild",value:function(n){var i,a,s=((i=this.ownerDocument)===null||i===void 0||(i=i.defaultView)===null||i===void 0||(i=i.getConfig().future)===null||i===void 0?void 0:i.experimentalCancelEventPropagation)===!0;return im.relatedNode=this,n.dispatchEvent(im,s,s),(a=n.ownerDocument)!==null&&a!==void 0&&a.defaultView&&n.ownerDocument.defaultView.unmountChildren(n),se.sceneGraphService.detach(n),n}},{key:"removeChildren",value:function(){for(var n=this.childNodes.length-1;n>=0;n--){var i=this.childNodes[n];this.removeChild(i)}}},{key:"destroyChildren",value:function(){for(var n=this.childNodes.length-1;n>=0;n--){var i=this.childNodes[n];i.childNodes.length>0&&i.destroyChildren(),i.destroy()}}},{key:"matches",value:function(n){return se.sceneGraphService.matches(n,this)}},{key:"getElementById",value:function(n){return se.sceneGraphService.querySelector("#".concat(n),this)}},{key:"getElementsByName",value:function(n){return se.sceneGraphService.querySelectorAll('[name="'.concat(n,'"]'),this)}},{key:"getElementsByClassName",value:function(n){return se.sceneGraphService.querySelectorAll(".".concat(n),this)}},{key:"getElementsByTagName",value:function(n){return se.sceneGraphService.querySelectorAll(n,this)}},{key:"querySelector",value:function(n){return se.sceneGraphService.querySelector(n,this)}},{key:"querySelectorAll",value:function(n){return se.sceneGraphService.querySelectorAll(n,this)}},{key:"closest",value:function(n){var i=this;do{if(se.sceneGraphService.matches(n,i))return i;i=i.parentElement}while(i!==null);return null}},{key:"find",value:function(n){var i=this,a=null;return this.forEach(function(s){return s!==i&&n(s)?(a=s,!1):!0}),a}},{key:"findAll",value:function(n){var i=this,a=[];return this.forEach(function(s){s!==i&&n(s)&&a.push(s)}),a}},{key:"after",value:function(){var n=this;if(this.parentNode){for(var i=this.parentNode.childNodes.indexOf(this),a=arguments.length,s=new Array(a),o=0;o<a;o++)s[o]=arguments[o];s.forEach(function(A,l){var c;return(c=n.parentNode)===null||c===void 0?void 0:c.appendChild(A,i+l+1)})}}},{key:"before",value:function(){if(this.parentNode){for(var n,i=this.parentNode.childNodes.indexOf(this),a=arguments.length,s=new Array(a),o=0;o<a;o++)s[o]=arguments[o];var A=s[0],l=(0,ec.Z)(s).slice(1);this.parentNode.appendChild(A,i),(n=A).after.apply(n,(0,k.Z)(l))}}},{key:"replaceWith",value:function(){this.after.apply(this,arguments),this.remove()}},{key:"append",value:function(){for(var n=this,i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];a.forEach(function(o){return n.appendChild(o)})}},{key:"prepend",value:function(){for(var n=this,i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];a.forEach(function(o,A){return n.appendChild(o,A)})}},{key:"replaceChildren",value:function(){for(;this.childNodes.length&&this.firstChild;)this.removeChild(this.firstChild);this.append.apply(this,arguments)}},{key:"remove",value:function(){return this.parentNode?this.parentNode.removeChild(this):this}},{key:"destroy",value:function(){var n,i=((n=this.ownerDocument)===null||n===void 0||(n=n.defaultView)===null||n===void 0||(n=n.getConfig().future)===null||n===void 0?void 0:n.experimentalCancelEventPropagation)===!0;this.destroyChildren(),this.dispatchEvent(xE,i,i),this.remove(),this.emitter.removeAllListeners(),this.destroyed=!0}},{key:"getGeometryBounds",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return se.sceneGraphService.getGeometryBounds(this,n)}},{key:"getTransformedGeometryBounds",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return se.sceneGraphService.getTransformedGeometryBounds(this,n)}},{key:"getBounds",value:function(){return se.sceneGraphService.getBounds(this)}},{key:"getRenderBounds",value:function(){return se.sceneGraphService.getBounds(this,!0)}},{key:"getLocalBounds",value:function(){return se.sceneGraphService.getLocalBounds(this)}},{key:"getBoundingClientRect",value:function(){return se.sceneGraphService.getBoundingClientRect(this)}},{key:"getClientRects",value:function(){return[this.getBoundingClientRect()]}},{key:"computedStyleMap",value:function(){return new Map(Object.entries(this.computedStyle))}},{key:"getAttributeNames",value:function(){return Object.keys(this.attributes)}},{key:"getAttribute",value:function(n){if(typeof n!="symbol"){var i=this.attributes[n];return i}}},{key:"hasAttribute",value:function(n){return this.getAttributeNames().includes(n)}},{key:"hasAttributes",value:function(){return!!this.getAttributeNames().length}},{key:"removeAttribute",value:function(n){this.setAttribute(n,null),delete this.attributes[n]}},{key:"setAttribute",value:function(n,i){this.attributes[n]=i}},{key:"getAttributeNS",value:function(n,i){throw new Error(On)}},{key:"getAttributeNode",value:function(n){throw new Error(On)}},{key:"getAttributeNodeNS",value:function(n,i){throw new Error(On)}},{key:"hasAttributeNS",value:function(n,i){throw new Error(On)}},{key:"removeAttributeNS",value:function(n,i){throw new Error(On)}},{key:"removeAttributeNode",value:function(n){throw new Error(On)}},{key:"setAttributeNS",value:function(n,i,a){throw new Error(On)}},{key:"setAttributeNode",value:function(n){throw new Error(On)}},{key:"setAttributeNodeNS",value:function(n){throw new Error(On)}},{key:"toggleAttribute",value:function(n,i){throw new Error(On)}}])}(vr);function Nn(r){return!!(r!=null&&r.nodeName)}var LT=se.globalThis.Proxy?se.globalThis.Proxy:function(){},Xs=new Ys(yn.ATTR_MODIFIED,null,null,null,null,Ys.MODIFICATION,null,null),Xu=xt(),NT=Er(),ir=function(r){function t(e){var n;return(0,N.Z)(this,t),n=(0,U.Z)(this,t),n.isCustomElement=!1,n.isMutationObserved=!1,n.activeAnimations=[],n.config=e,n.id=e.id||"",n.name=e.name||"",(e.className||e.class)&&(n.className=e.className||e.class),n.nodeName=e.type||Zt.GROUP,e.initialParsedStyle&&Object.assign(n.parsedStyle,e.initialParsedStyle),n.initAttributes(e.style),se.enableStyleSyntax&&(n.style=new LT({setProperty:function(a,s){n.setAttribute(a,s)},getPropertyValue:function(a){return n.getAttribute(a)},removeProperty:function(a){n.removeAttribute(a)},item:function(){return""}},{get:function(a,s){return a[s]!==void 0?a[s]:n.getAttribute(s)},set:function(a,s,o){return n.setAttribute(s,o),!0}})),n}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"destroy",value:function(){_s(t,"destroy",this,3)([]),this.getAnimations().forEach(function(n){n.cancel()})}},{key:"cloneNode",value:function(n,i){var a=(0,D.Z)({},this.attributes);for(var s in a){var o=a[s];Nn(o)&&s!=="clipPath"&&s!=="offsetPath"&&s!=="textPath"&&(a[s]=o.cloneNode(n)),i&&(a[s]=i(s,o))}var A=new this.constructor((0,D.Z)((0,D.Z)({},this.config),{},{style:a}));return A.setLocalTransform(this.getLocalTransform()),n&&this.children.forEach(function(l){if(!l.style.isMarker){var c=l.cloneNode(n);A.appendChild(c)}}),A}},{key:"initAttributes",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i={forceUpdateGeometry:!0};se.styleValueRegistry.processProperties(this,n,i),this.dirty()}},{key:"setAttribute",value:function(n,i){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;Ye(i)||(a||i!==this.attributes[n])&&(this.internalSetAttribute(n,i,{memoize:s}),_s(t,"setAttribute",this,3)([n,i]))}},{key:"setAttributes",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=i.skipDispatchAttrModifiedEvent,s=a===void 0?!1:a,o,A;if(s||(o=(0,D.Z)({},this.attributes),A=(0,D.Z)({},this.parsedStyle)),se.styleValueRegistry.processProperties(this,n,i),this.dirty(),!s)for(var l in n)this.dispatchAttrModifiedEvent(l,o[l],n[l],A[l])}},{key:"internalSetAttribute",value:function(n,i){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=this.attributes[n],o=this.parsedStyle[n];se.styleValueRegistry.processProperties(this,(0,Ee.Z)({},n,i),a),this.dirty(),this.dispatchAttrModifiedEvent(n,s,i,o)}},{key:"dispatchAttrModifiedEvent",value:function(n,i,a,s){var o=this.parsedStyle[n];if(this.isConnected)if(Xs.relatedNode=this,Xs.prevValue=i,Xs.newValue=a,Xs.attrName=n,Xs.prevParsedValue=s,Xs.newParsedValue=o,this.isMutationObserved)this.dispatchEvent(Xs);else{var A,l=((A=this.ownerDocument.defaultView.getConfig().future)===null||A===void 0?void 0:A.experimentalCancelEventPropagation)===!0;Xs.target=this,this.ownerDocument.defaultView.dispatchEvent(Xs,!0,l)}if(this.isCustomElement&&this.isConnected||!this.isCustomElement){var c,u;(c=(u=this).attributeChangedCallback)===null||c===void 0||c.call(u,n,i,a,s,o)}}},{key:"getBBox",value:function(){var n=this.getBounds(),i=n.getMin(),a=(0,Q.Z)(i,2),s=a[0],o=a[1],A=n.getMax(),l=(0,Q.Z)(A,2),c=l[0],u=l[1];return new cs(s,o,c-s,u-o)}},{key:"setOrigin",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return se.sceneGraphService.setOrigin(this,vi(n,i,a,!1)),this}},{key:"getOrigin",value:function(){return se.sceneGraphService.getOrigin(this)}},{key:"setPosition",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return se.sceneGraphService.setPosition(this,vi(n,i,a,!1)),this}},{key:"setLocalPosition",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return se.sceneGraphService.setLocalPosition(this,vi(n,i,a,!1)),this}},{key:"translate",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return se.sceneGraphService.translate(this,vi(n,i,a,!1)),this}},{key:"translateLocal",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return se.sceneGraphService.translateLocal(this,vi(n,i,a,!1)),this}},{key:"getPosition",value:function(){return se.sceneGraphService.getPosition(this)}},{key:"getLocalPosition",value:function(){return se.sceneGraphService.getLocalPosition(this)}},{key:"scale",value:function(n,i,a){return this.scaleLocal(n,i,a)}},{key:"scaleLocal",value:function(n,i,a){return typeof n=="number"&&(i=i||n,a=a||n,n=vi(n,i,a,!1)),se.sceneGraphService.scaleLocal(this,n),this}},{key:"setLocalScale",value:function(n,i,a){return typeof n=="number"&&(i=i||n,a=a||n,n=vi(n,i,a,!1)),se.sceneGraphService.setLocalScale(this,n),this}},{key:"getLocalScale",value:function(){return se.sceneGraphService.getLocalScale(this)}},{key:"getScale",value:function(){return se.sceneGraphService.getScale(this)}},{key:"getEulerAngles",value:function(){var n=Pu(Xu,se.sceneGraphService.getWorldTransform(this)),i=(0,Q.Z)(n,3),a=i[2];return Bi(a)}},{key:"getLocalEulerAngles",value:function(){var n=Pu(Xu,se.sceneGraphService.getLocalRotation(this)),i=(0,Q.Z)(n,3),a=i[2];return Bi(a)}},{key:"setEulerAngles",value:function(n){return se.sceneGraphService.setEulerAngles(this,0,0,n),this}},{key:"setLocalEulerAngles",value:function(n){return se.sceneGraphService.setLocalEulerAngles(this,0,0,n),this}},{key:"rotateLocal",value:function(n,i,a){return Pe(i)&&Pe(a)?se.sceneGraphService.rotateLocal(this,0,0,n):se.sceneGraphService.rotateLocal(this,n,i,a),this}},{key:"rotate",value:function(n,i,a){return Pe(i)&&Pe(a)?se.sceneGraphService.rotate(this,0,0,n):se.sceneGraphService.rotate(this,n,i,a),this}},{key:"setRotation",value:function(n,i,a,s){return se.sceneGraphService.setRotation(this,n,i,a,s),this}},{key:"setLocalRotation",value:function(n,i,a,s){return se.sceneGraphService.setLocalRotation(this,n,i,a,s),this}},{key:"setLocalSkew",value:function(n,i){return se.sceneGraphService.setLocalSkew(this,n,i),this}},{key:"getRotation",value:function(){return se.sceneGraphService.getRotation(this)}},{key:"getLocalRotation",value:function(){return se.sceneGraphService.getLocalRotation(this)}},{key:"getLocalSkew",value:function(){return se.sceneGraphService.getLocalSkew(this)}},{key:"getLocalTransform",value:function(){return se.sceneGraphService.getLocalTransform(this)}},{key:"getWorldTransform",value:function(){return se.sceneGraphService.getWorldTransform(this)}},{key:"setLocalTransform",value:function(n){return se.sceneGraphService.setLocalTransform(this,n),this}},{key:"resetLocalTransform",value:function(){se.sceneGraphService.resetLocalTransform(this)}},{key:"getAnimations",value:function(){return this.activeAnimations}},{key:"animate",value:function(n,i){var a,s=(a=this.ownerDocument)===null||a===void 0?void 0:a.timeline;return s?s.play(this,n,i):null}},{key:"isVisible",value:function(){var n;return((n=this.parsedStyle)===null||n===void 0?void 0:n.visibility)!=="hidden"}},{key:"interactive",get:function(){return this.isInteractive()},set:function(n){this.style.pointerEvents=n?"auto":"none"}},{key:"isInteractive",value:function(){var n;return((n=this.parsedStyle)===null||n===void 0?void 0:n.pointerEvents)!=="none"}},{key:"isCulled",value:function(){return!!(this.cullable&&this.cullable.enable&&!this.cullable.visible)}},{key:"toFront",value:function(){return this.parentNode&&(this.style.zIndex=Math.max.apply(Math,(0,k.Z)(this.parentNode.children.map(function(n){return Number(n.style.zIndex)})))+1),this}},{key:"toBack",value:function(){return this.parentNode&&(this.style.zIndex=Math.min.apply(Math,(0,k.Z)(this.parentNode.children.map(function(n){return Number(n.style.zIndex)})))-1),this}},{key:"getConfig",value:function(){return this.config}},{key:"attr",value:function(){for(var n=this,i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];var o=a[0],A=a[1];return o?Br(o)?(Object.keys(o).forEach(function(l){n.setAttribute(l,o[l])}),this):a.length===2?(this.setAttribute(o,A),this):this.attributes[o]:this.attributes}},{key:"getMatrix",value:function(n){var i=n||this.getWorldTransform(),a=_n(Xu,i),s=(0,Q.Z)(a,2),o=s[0],A=s[1],l=ks(Xu,i),c=(0,Q.Z)(l,2),u=c[0],h=c[1],f=Wo(NT,i),d=Pu(Xu,f),g=(0,Q.Z)(d,3),v=g[0],y=g[2];return fp(v||y,o,A,u,h)}},{key:"getLocalMatrix",value:function(){return this.getMatrix(this.getLocalTransform())}},{key:"setMatrix",value:function(n){var i=kf(n),a=(0,Q.Z)(i,5),s=a[0],o=a[1],A=a[2],l=a[3],c=a[4];this.setEulerAngles(c).setPosition(s,o).setLocalScale(A,l)}},{key:"setLocalMatrix",value:function(n){var i=kf(n),a=(0,Q.Z)(i,5),s=a[0],o=a[1],A=a[2],l=a[3],c=a[4];this.setLocalEulerAngles(c).setLocalPosition(s,o).setLocalScale(A,l)}},{key:"show",value:function(){this.forEach(function(n){n.style.visibility="visible"})}},{key:"hide",value:function(){this.forEach(function(n){n.style.visibility="hidden"})}},{key:"getCount",value:function(){return this.childElementCount}},{key:"getParent",value:function(){return this.parentElement}},{key:"getChildren",value:function(){return this.children}},{key:"getFirst",value:function(){return this.firstElementChild}},{key:"getLast",value:function(){return this.lastElementChild}},{key:"getChildByIndex",value:function(n){return this.children[n]||null}},{key:"add",value:function(n,i){return this.appendChild(n,i)}},{key:"set",value:function(n,i){this.config[n]=i}},{key:"get",value:function(n){return this.config[n]}},{key:"moveTo",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(n,i,a),this}},{key:"move",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(n,i,a),this}},{key:"setZIndex",value:function(n){return this.style.zIndex=n,this}}])}(IT);ir.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","display","draggable","droppable","fill","fillOpacity","fillRule","filter","increasedLineWidthForHitTesting","lineCap","lineDash","lineDashOffset","lineJoin","lineWidth","miterLimit","hitArea","offsetDistance","offsetPath","offsetX","offsetY","opacity","pointerEvents","shadowColor","shadowType","shadowBlur","shadowOffsetX","shadowOffsetY","stroke","strokeOpacity","strokeWidth","strokeLinecap","strokeLineJoin","strokeDasharray","strokeDashoffset","transform","transformOrigin","textTransform","visibility","zIndex"]);var Js=function(r){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,N.Z)(this,t),(0,U.Z)(this,t,[(0,D.Z)({type:Zt.CIRCLE},e)])}return(0,L.Z)(t,r),(0,O.Z)(t)}(ir);Js.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ir.PARSED_STYLE_LIST),["cx","cy","cz","r","isBillboard","isSizeAttenuation"]));var kT=["style"],Ju=function(r){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=(0,Za.Z)(n,kT);return(0,N.Z)(this,t),e=(0,U.Z)(this,t,[(0,D.Z)({style:i},a)]),e.isCustomElement=!0,e}return(0,L.Z)(t,r),(0,O.Z)(t)}(ir);Ju.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var qu=function(r){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,N.Z)(this,t),(0,U.Z)(this,t,[(0,D.Z)({type:Zt.ELLIPSE},e)])}return(0,L.Z)(t,r),(0,O.Z)(t)}(ir);qu.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ir.PARSED_STYLE_LIST),["cx","cy","cz","rx","ry","isBillboard","isSizeAttenuation"]));var QT=function(r){function t(){return(0,N.Z)(this,t),(0,U.Z)(this,t,[{type:Zt.FRAGMENT}])}return(0,L.Z)(t,r),(0,O.Z)(t)}(ir);QT.PARSED_STYLE_LIST=new Set(["class","className"]);var oi=function(r){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,N.Z)(this,t),(0,U.Z)(this,t,[(0,D.Z)({type:Zt.GROUP},e)])}return(0,L.Z)(t,r),(0,O.Z)(t)}(ir);oi.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var UT=["style"],ll=function(r){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=(0,Za.Z)(n,UT);return(0,N.Z)(this,t),e=(0,U.Z)(this,t,[(0,D.Z)({type:Zt.HTML,style:i},a)]),e.cullable.enable=!1,e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"getDomElement",value:function(){return this.parsedStyle.$el}},{key:"getClientRects",value:function(){return[this.getBoundingClientRect()]}},{key:"getLocalBounds",value:function(){if(this.parentNode){var n=An(ne(),this.parentNode.getWorldTransform()),i=this.getBounds();if(!Yn.isEmpty(i)){var a=new Yn;return a.setFromTransformedAABB(i,n),a}}return this.getBounds()}}])}(ir);ll.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ir.PARSED_STYLE_LIST),["x","y","$el","innerHTML","width","height"]));var $u=function(r){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,N.Z)(this,t),(0,U.Z)(this,t,[(0,D.Z)({type:Zt.IMAGE},e)])}return(0,L.Z)(t,r),(0,O.Z)(t)}(ir);$u.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ir.PARSED_STYLE_LIST),["x","y","z","src","width","height","isBillboard","billboardRotation","isSizeAttenuation","keepAspectRatio"]));var PT=["style"],cl=function(r){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=(0,Za.Z)(n,PT);(0,N.Z)(this,t),e=(0,U.Z)(this,t,[(0,D.Z)({type:Zt.LINE,style:(0,D.Z)({x1:0,y1:0,x2:0,y2:0,z1:0,z2:0},i)},a)]),e.markerStartAngle=0,e.markerEndAngle=0;var s=e.parsedStyle,o=s.markerStart,A=s.markerEnd;return o&&Nn(o)&&(e.markerStartAngle=o.getLocalEulerAngles(),e.appendChild(o)),A&&Nn(A)&&(e.markerEndAngle=A.getLocalEulerAngles(),e.appendChild(A)),e.transformMarker(!0),e.transformMarker(!1),e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"attributeChangedCallback",value:function(n,i,a,s,o){n==="x1"||n==="y1"||n==="x2"||n==="y2"||n==="markerStartOffset"||n==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):n==="markerStart"?(s&&Nn(s)&&(this.markerStartAngle=0,s.remove()),o&&Nn(o)&&(this.markerStartAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!0))):n==="markerEnd"&&(s&&Nn(s)&&(this.markerEndAngle=0,s.remove()),o&&Nn(o)&&(this.markerEndAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!1)))}},{key:"transformMarker",value:function(n){var i=this.parsedStyle,a=i.markerStart,s=i.markerEnd,o=i.markerStartOffset,A=i.markerEndOffset,l=i.x1,c=i.x2,u=i.y1,h=i.y2,f=n?a:s;if(!(!f||!Nn(f))){var d=0,g,v,y,E,C,I;n?(y=l,E=u,g=c-l,v=h-u,C=o||0,I=this.markerStartAngle):(y=c,E=h,g=l-c,v=u-h,C=A||0,I=this.markerEndAngle),d=Math.atan2(v,g),f.setLocalEulerAngles(d*180/Math.PI+I),f.setLocalPosition(y+Math.cos(d)*C,E+Math.sin(d)*C)}}},{key:"getPoint",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=this.parsedStyle,s=a.x1,o=a.y1,A=a.x2,l=a.y2,c=ba(s,o,A,l,n),u=c.x,h=c.y,f=ye(xt(),Lt(u,h,0),i?this.getWorldTransform():this.getLocalTransform());return new ii(f[0],f[1])}},{key:"getPointAtLength",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(n/this.getTotalLength(),i)}},{key:"getTotalLength",value:function(){var n=this.parsedStyle,i=n.x1,a=n.y1,s=n.x2,o=n.y2;return wf(i,a,s,o)}}])}(ir);cl.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ir.PARSED_STYLE_LIST),["x1","y1","x2","y2","z1","z2","isBillboard","isSizeAttenuation","markerStart","markerEnd","markerStartOffset","markerEndOffset"]));var DT=["style"],Pi=function(r){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=(0,Za.Z)(n,DT);(0,N.Z)(this,t),e=(0,U.Z)(this,t,[(0,D.Z)({type:Zt.PATH,style:i,initialParsedStyle:{miterLimit:4,d:(0,D.Z)({},hs)}},a)]),e.markerStartAngle=0,e.markerEndAngle=0,e.markerMidList=[];var s=e.parsedStyle,o=s.markerStart,A=s.markerEnd,l=s.markerMid;return o&&Nn(o)&&(e.markerStartAngle=o.getLocalEulerAngles(),e.appendChild(o)),l&&Nn(l)&&e.placeMarkerMid(l),A&&Nn(A)&&(e.markerEndAngle=A.getLocalEulerAngles(),e.appendChild(A)),e.transformMarker(!0),e.transformMarker(!1),e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"attributeChangedCallback",value:function(n,i,a,s,o){n==="d"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):n==="markerStartOffset"||n==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):n==="markerStart"?(s&&Nn(s)&&(this.markerStartAngle=0,s.remove()),o&&Nn(o)&&(this.markerStartAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!0))):n==="markerEnd"?(s&&Nn(s)&&(this.markerEndAngle=0,s.remove()),o&&Nn(o)&&(this.markerEndAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!1))):n==="markerMid"&&this.placeMarkerMid(o)}},{key:"transformMarker",value:function(n){var i=this.parsedStyle,a=i.markerStart,s=i.markerEnd,o=i.markerStartOffset,A=i.markerEndOffset,l=n?a:s;if(!(!l||!Nn(l))){var c=0,u,h,f,d,g,v;if(n){var y=this.getStartTangent(),E=(0,Q.Z)(y,2),C=E[0],I=E[1];f=I[0],d=I[1],u=C[0]-I[0],h=C[1]-I[1],g=o||0,v=this.markerStartAngle}else{var R=this.getEndTangent(),K=(0,Q.Z)(R,2),W=K[0],V=K[1];f=V[0],d=V[1],u=W[0]-V[0],h=W[1]-V[1],g=A||0,v=this.markerEndAngle}c=Math.atan2(h,u),l.setLocalEulerAngles(c*180/Math.PI+v),l.setLocalPosition(f+Math.cos(c)*g,d+Math.sin(c)*g)}}},{key:"placeMarkerMid",value:function(n){var i=this.parsedStyle.d.segments;if(this.markerMidList.forEach(function(c){c.remove()}),n&&Nn(n))for(var a=1;a<i.length-1;a++){var s=(0,Q.Z)(i[a].currentPoint,2),o=s[0],A=s[1],l=a===1?n:n.cloneNode(!0);this.markerMidList.push(l),this.appendChild(l),l.setLocalPosition(o,A)}}},{key:"getTotalLength",value:function(){return ln(this)}},{key:"getPointAtLength",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=this.parsedStyle.d.absolutePath,s=X0(a,n),o=s.x,A=s.y,l=ye(xt(),Lt(o,A,0),i?this.getWorldTransform():this.getLocalTransform());return new ii(l[0],l[1])}},{key:"getPoint",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPointAtLength(n*ln(this),i)}},{key:"getStartTangent",value:function(){var n=this.parsedStyle.d.segments,i=[];if(n.length>1){var a=n[0].currentPoint,s=n[1].currentPoint,o=n[1].startTangent;i=[],o?(i.push([a[0]-o[0],a[1]-o[1]]),i.push([a[0],a[1]])):(i.push([s[0],s[1]]),i.push([a[0],a[1]]))}return i}},{key:"getEndTangent",value:function(){var n=this.parsedStyle.d.segments,i=n.length,a=[];if(i>1){var s=n[i-2].currentPoint,o=n[i-1].currentPoint,A=n[i-1].endTangent;a=[],A?(a.push([o[0]-A[0],o[1]-A[1]]),a.push([o[0],o[1]])):(a.push([s[0],s[1]]),a.push([o[0],o[1]]))}return a}}])}(ir);Pi.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ir.PARSED_STYLE_LIST),["d","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard","isSizeAttenuation"]));var RT=["style"],ul=function(r){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=(0,Za.Z)(n,RT);(0,N.Z)(this,t),e=(0,U.Z)(this,t,[(0,D.Z)({type:Zt.POLYGON,style:i,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!0}},a)]),e.markerStartAngle=0,e.markerEndAngle=0,e.markerMidList=[];var s=e.parsedStyle,o=s.markerStart,A=s.markerEnd,l=s.markerMid;return o&&Nn(o)&&(e.markerStartAngle=o.getLocalEulerAngles(),e.appendChild(o)),l&&Nn(l)&&e.placeMarkerMid(l),A&&Nn(A)&&(e.markerEndAngle=A.getLocalEulerAngles(),e.appendChild(A)),e.transformMarker(!0),e.transformMarker(!1),e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"attributeChangedCallback",value:function(n,i,a,s,o){n==="points"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):n==="markerStartOffset"||n==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):n==="markerStart"?(s&&Nn(s)&&(this.markerStartAngle=0,s.remove()),o&&Nn(o)&&(this.markerStartAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!0))):n==="markerEnd"?(s&&Nn(s)&&(this.markerEndAngle=0,s.remove()),o&&Nn(o)&&(this.markerEndAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!1))):n==="markerMid"&&this.placeMarkerMid(o)}},{key:"transformMarker",value:function(n){var i=this.parsedStyle,a=i.markerStart,s=i.markerEnd,o=i.markerStartOffset,A=i.markerEndOffset,l=i.points,c=l||{},u=c.points,h=n?a:s;if(!(!h||!Nn(h)||!u)){var f=0,d,g,v,y,E,C;if(v=u[0][0],y=u[0][1],n)d=u[1][0]-u[0][0],g=u[1][1]-u[0][1],E=o||0,C=this.markerStartAngle;else{var I=u.length;this.parsedStyle.isClosed?(d=u[I-1][0]-u[0][0],g=u[I-1][1]-u[0][1]):(v=u[I-1][0],y=u[I-1][1],d=u[I-2][0]-u[I-1][0],g=u[I-2][1]-u[I-1][1]),E=A||0,C=this.markerEndAngle}f=Math.atan2(g,d),h.setLocalEulerAngles(f*180/Math.PI+C),h.setLocalPosition(v+Math.cos(f)*E,y+Math.sin(f)*E)}}},{key:"placeMarkerMid",value:function(n){var i=this.parsedStyle.points,a=i||{},s=a.points;if(this.markerMidList.forEach(function(u){u.remove()}),this.markerMidList=[],n&&Nn(n)&&s)for(var o=1;o<(this.parsedStyle.isClosed?s.length:s.length-1);o++){var A=s[o][0],l=s[o][1],c=o===1?n:n.cloneNode(!0);this.markerMidList.push(c),this.appendChild(c),c.setLocalPosition(A,l)}}}])}(ir);ul.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ir.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isClosed","isBillboard","isSizeAttenuation"]));var _T=["style"],nd=function(r){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=e.style,i=(0,Za.Z)(e,_T);return(0,N.Z)(this,t),(0,U.Z)(this,t,[(0,D.Z)({type:Zt.POLYLINE,style:n,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!1}},i)])}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"getTotalLength",value:function(){return Xe(this)}},{key:"getPointAtLength",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(n/this.getTotalLength(),i)}},{key:"getPoint",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=this.parsedStyle.points.points;if(this.parsedStyle.points.segments.length===0){var s=[],o=0,A,l,c=this.getTotalLength();a.forEach(function(y,E){a[E+1]&&(A=[0,0],A[0]=o/c,l=wf(y[0],y[1],a[E+1][0],a[E+1][1]),o+=l,A[1]=o/c,s.push(A))}),this.parsedStyle.points.segments=s}var u=0,h=0;this.parsedStyle.points.segments.forEach(function(y,E){n>=y[0]&&n<=y[1]&&(u=(n-y[0])/(y[1]-y[0]),h=E)});var f=ba(a[h][0],a[h][1],a[h+1][0],a[h+1][1],u),d=f.x,g=f.y,v=ye(xt(),Lt(d,g,0),i?this.getWorldTransform():this.getLocalTransform());return new ii(v[0],v[1])}},{key:"getStartTangent",value:function(){var n=this.parsedStyle.points.points,i=[];return i.push([n[1][0],n[1][1]]),i.push([n[0][0],n[0][1]]),i}},{key:"getEndTangent",value:function(){var n=this.parsedStyle.points.points,i=n.length-1,a=[];return a.push([n[i-1][0],n[i-1][1]]),a.push([n[i][0],n[i][1]]),a}}])}(ul);nd.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ul.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard"]));var xi=function(r){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,N.Z)(this,t),(0,U.Z)(this,t,[(0,D.Z)({type:Zt.RECT},e)])}return(0,L.Z)(t,r),(0,O.Z)(t)}(ir);xi.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ir.PARSED_STYLE_LIST),["x","y","z","width","height","isBillboard","isSizeAttenuation","radius"]));var HT=["style"],hl=function(r){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=e.style,i=(0,Za.Z)(e,HT);return(0,N.Z)(this,t),(0,U.Z)(this,t,[(0,D.Z)({type:Zt.TEXT,style:(0,D.Z)({fill:"black"},n)},i)])}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"getComputedTextLength",value:function(){var n;return this.getGeometryBounds(),((n=this.parsedStyle.metrics)===null||n===void 0?void 0:n.maxLineWidth)||0}},{key:"getLineBoundingRects",value:function(){var n;return this.getGeometryBounds(),((n=this.parsedStyle.metrics)===null||n===void 0?void 0:n.lineMetrics)||[]}},{key:"isOverflowing",value:function(){return this.getGeometryBounds(),!!this.parsedStyle.isOverflowing}}])}(ir);hl.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(ir.PARSED_STYLE_LIST),["x","y","z","isBillboard","billboardRotation","isSizeAttenuation","text","textAlign","textBaseline","fontStyle","fontSize","fontFamily","fontWeight","fontVariant","lineHeight","letterSpacing","leading","wordWrap","wordWrapWidth","maxLines","textOverflow","isOverflowing","textPath","textDecorationLine","textDecorationColor","textDecorationStyle","textDecorationThickness","textPathSide","textPathStartOffset","metrics","dx","dy"]));var GT=function(){function r(){(0,N.Z)(this,r),this.registry={},this.define(Zt.CIRCLE,Js),this.define(Zt.ELLIPSE,qu),this.define(Zt.RECT,xi),this.define(Zt.IMAGE,$u),this.define(Zt.LINE,cl),this.define(Zt.GROUP,oi),this.define(Zt.PATH,Pi),this.define(Zt.POLYGON,ul),this.define(Zt.POLYLINE,nd),this.define(Zt.TEXT,hl),this.define(Zt.HTML,ll)}return(0,O.Z)(r,[{key:"define",value:function(e,n){this.registry[e]=n}},{key:"get",value:function(e){return this.registry[e]}}])}(),KT={number:function(t){return new Hn(t)},percent:function(t){return new Hn(t,"%")},px:function(t){return new Hn(t,"px")},em:function(t){return new Hn(t,"em")},rem:function(t){return new Hn(t,"rem")},deg:function(t){return new Hn(t,"deg")},grad:function(t){return new Hn(t,"grad")},rad:function(t){return new Hn(t,"rad")},turn:function(t){return new Hn(t,"turn")},s:function(t){return new Hn(t,"s")},ms:function(t){return new Hn(t,"ms")},registerProperty:function(t){var e=t.name,n=t.inherits,i=t.interpolable,a=t.initialValue,s=t.syntax;se.styleValueRegistry.registerMetadata({n:e,inh:n,int:i,d:a,syntax:s})},registerLayout:function(t,e){se.layoutRegistry.registerLayout(t,e)}},CE=function(r){function t(){var e;(0,N.Z)(this,t),e=(0,U.Z)(this,t),e.defaultView=null,e.ownerDocument=null,e.nodeName="document";try{e.timeline=new se.AnimationTimeline(e)}catch(i){}var n={};return Zp.forEach(function(i){var a=i.n,s=i.inh,o=i.d;s&&o&&(n[a]=jt(o)?o(Zt.GROUP):o)}),e.documentElement=new oi({id:"g-root",style:n}),e.documentElement.ownerDocument=e,e.documentElement.parentNode=e,e.childNodes=[e.documentElement],e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"children",get:function(){return this.childNodes}},{key:"childElementCount",get:function(){return this.childNodes.length}},{key:"firstElementChild",get:function(){return this.firstChild}},{key:"lastElementChild",get:function(){return this.lastChild}},{key:"createElement",value:function(n,i){if(n==="svg")return this.documentElement;var a=this.defaultView.customElements.get(n);a||(console.warn("Unsupported tagName: ",n),a=n==="tspan"?hl:oi);var s=new a(i);return s.ownerDocument=this,s}},{key:"createElementNS",value:function(n,i,a){return this.createElement(i,a)}},{key:"cloneNode",value:function(n){throw new Error(On)}},{key:"destroy",value:function(){try{this.documentElement.destroyChildren(),this.timeline.destroy()}catch(n){}}},{key:"elementsFromBBox",value:function(n,i,a,s){var o=[],A=function(c){if(!(!c.isInteractive()||c.isCulled())){var u=c.parsedStyle.pointerEvents,h=u===void 0?"auto":u,f=["auto","visiblepainted","visiblefill","visiblestroke","visible"].includes(h);if(!f||c.isVisible()){var d=c.getTransformedGeometryBounds(!0);d&&!Yn.isEmpty(d)&&d.max[0]>=n&&d.min[0]<=a&&d.max[1]>=i&&d.min[1]<=s&&o.push(c)}c.childNodes&&c.childNodes.forEach(function(g){g instanceof ir&&A(g)})}};return A(this.documentElement),o.sort(function(l,c){return c.sortable.renderOrder-l.sortable.renderOrder}),o}},{key:"elementFromPointSync",value:function(n,i){var a=this.defaultView.canvas2Viewport({x:n,y:i}),s=a.x,o=a.y,A=this.defaultView.getConfig(),l=A.width,c=A.height;if(s<0||o<0||s>l||o>c)return null;var u=this.defaultView.viewport2Client({x:s,y:o}),h=u.x,f=u.y,d=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!0,position:{x:n,y:i,viewportX:s,viewportY:o,clientX:h,clientY:f},picked:[]}),g=d.picked;return g&&g[0]||this.documentElement}},{key:"elementFromPoint",value:function(){var e=(0,Wa.Z)((0,ri.Z)().mark(function i(a,s){var o,A,l,c,u,h,f,d,g,v,y;return(0,ri.Z)().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:if(o=this.defaultView.canvas2Viewport({x:a,y:s}),A=o.x,l=o.y,c=this.defaultView.getConfig(),u=c.width,h=c.height,!(A<0||l<0||A>u||l>h)){E.next=1;break}return E.abrupt("return",null);case 1:return f=this.defaultView.viewport2Client({x:A,y:l}),d=f.x,g=f.y,E.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!0,position:{x:a,y:s,viewportX:A,viewportY:l,clientX:d,clientY:g},picked:[]});case 2:return v=E.sent,y=v.picked,E.abrupt("return",y&&y[0]||this.documentElement);case 3:case"end":return E.stop()}},i,this)}));function n(i,a){return e.apply(this,arguments)}return n}()},{key:"elementsFromPointSync",value:function(n,i){var a=this.defaultView.canvas2Viewport({x:n,y:i}),s=a.x,o=a.y,A=this.defaultView.getConfig(),l=A.width,c=A.height;if(s<0||o<0||s>l||o>c)return[];var u=this.defaultView.viewport2Client({x:s,y:o}),h=u.x,f=u.y,d=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!1,position:{x:n,y:i,viewportX:s,viewportY:o,clientX:h,clientY:f},picked:[]}),g=d.picked;return g[g.length-1]!==this.documentElement&&g.push(this.documentElement),g}},{key:"elementsFromPoint",value:function(){var e=(0,Wa.Z)((0,ri.Z)().mark(function i(a,s){var o,A,l,c,u,h,f,d,g,v,y;return(0,ri.Z)().wrap(function(E){for(;;)switch(E.prev=E.next){case 0:if(o=this.defaultView.canvas2Viewport({x:a,y:s}),A=o.x,l=o.y,c=this.defaultView.getConfig(),u=c.width,h=c.height,!(A<0||l<0||A>u||l>h)){E.next=1;break}return E.abrupt("return",[]);case 1:return f=this.defaultView.viewport2Client({x:A,y:l}),d=f.x,g=f.y,E.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!1,position:{x:a,y:s,viewportX:A,viewportY:l,clientX:d,clientY:g},picked:[]});case 2:return v=E.sent,y=v.picked,y[y.length-1]!==this.documentElement&&y.push(this.documentElement),E.abrupt("return",y);case 3:case"end":return E.stop()}},i,this)}));function n(i,a){return e.apply(this,arguments)}return n}()},{key:"appendChild",value:function(n,i){throw new Error(eA)}},{key:"insertBefore",value:function(n,i){throw new Error(eA)}},{key:"removeChild",value:function(n,i){throw new Error(eA)}},{key:"replaceChild",value:function(n,i,a){throw new Error(eA)}},{key:"append",value:function(){throw new Error(eA)}},{key:"prepend",value:function(){throw new Error(eA)}},{key:"getElementById",value:function(n){return this.documentElement.getElementById(n)}},{key:"getElementsByName",value:function(n){return this.documentElement.getElementsByName(n)}},{key:"getElementsByTagName",value:function(n){return this.documentElement.getElementsByTagName(n)}},{key:"getElementsByClassName",value:function(n){return this.documentElement.getElementsByClassName(n)}},{key:"querySelector",value:function(n){return this.documentElement.querySelector(n)}},{key:"querySelectorAll",value:function(n){return this.documentElement.querySelectorAll(n)}},{key:"find",value:function(n){return this.documentElement.find(n)}},{key:"findAll",value:function(n){return this.documentElement.findAll(n)}}])}(vr),SE=function(){function r(t){(0,N.Z)(this,r),this.strategies=t}return(0,O.Z)(r,[{key:"apply",value:function(e){var n=e.config,i=e.camera,a=e.renderingService,s=e.renderingContext,o=this.strategies;a.hooks.cull.tap(r.tag,function(A){if(A){var l,c=A.cullable;if(o.length===0?c.visible=s.unculledEntities.indexOf(A.entity)>-1:c.visible=o.every(function(h){return h.isVisible(i,A)}),!A.isCulled()&&A.isVisible())return A;var u=((l=n.future)===null||l===void 0?void 0:l.experimentalCancelEventPropagation)===!0;return A.dispatchEvent(new Wr(yn.CULLED),u,u),null}return A}),a.hooks.afterRender.tap(r.tag,function(A){A.cullable.visibilityPlaneMask=-1})}}])}();SE.tag="Culling";var ME=function(){function r(){var t=this;(0,N.Z)(this,r),this.autoPreventDefault=!1,this.rootPointerEvent=new qf(null),this.rootWheelEvent=new em(null),this.onPointerMove=function(e){var n,i=(n=t.context.renderingContext.root)===null||n===void 0||(n=n.ownerDocument)===null||n===void 0?void 0:n.defaultView;if(!(i.supportsTouchEvents&&e.pointerType==="touch")){var a=t.normalizeToPointerEvent(e,i),s=(0,Gs.Z)(a),o;try{for(s.s();!(o=s.n()).done;){var A=o.value,l=t.bootstrapEvent(t.rootPointerEvent,A,i,e);t.context.eventService.mapEvent(l)}}catch(c){s.e(c)}finally{s.f()}t.setCursor(t.context.eventService.cursor)}},this.onClick=function(e){var n,i=(n=t.context.renderingContext.root)===null||n===void 0||(n=n.ownerDocument)===null||n===void 0?void 0:n.defaultView,a=t.normalizeToPointerEvent(e,i),s=(0,Gs.Z)(a),o;try{for(s.s();!(o=s.n()).done;){var A=o.value,l=t.bootstrapEvent(t.rootPointerEvent,A,i,e);t.context.eventService.mapEvent(l)}}catch(c){s.e(c)}finally{s.f()}t.setCursor(t.context.eventService.cursor)}}return(0,O.Z)(r,[{key:"apply",value:function(e){var n=this;this.context=e;var i=e.renderingService,a=this.context.renderingContext.root.ownerDocument.defaultView;this.context.eventService.setPickHandler(function(s){var o=n.context.renderingService.hooks.pickSync.call({position:s,picked:[],topmost:!0}),A=o.picked;return A[0]||null}),i.hooks.pointerWheel.tap(r.tag,function(s){var o=n.normalizeWheelEvent(s);n.context.eventService.mapEvent(o)}),i.hooks.pointerDown.tap(r.tag,function(s){if(!(a.supportsTouchEvents&&s.pointerType==="touch")){var o=n.normalizeToPointerEvent(s,a);if(n.autoPreventDefault&&o[0].isNormalized){var A=s.cancelable||!("cancelable"in s);A&&s.preventDefault()}var l=(0,Gs.Z)(o),c;try{for(l.s();!(c=l.n()).done;){var u=c.value,h=n.bootstrapEvent(n.rootPointerEvent,u,a,s);n.context.eventService.mapEvent(h)}}catch(f){l.e(f)}finally{l.f()}n.setCursor(n.context.eventService.cursor)}}),i.hooks.pointerUp.tap(r.tag,function(s){if(!(a.supportsTouchEvents&&s.pointerType==="touch")){var o=n.context.contextService.getDomElement(),A=n.context.eventService.isNativeEventFromCanvas(o,s),l=A?"":"outside",c=n.normalizeToPointerEvent(s,a),u=(0,Gs.Z)(c),h;try{for(u.s();!(h=u.n()).done;){var f=h.value,d=n.bootstrapEvent(n.rootPointerEvent,f,a,s);d.type+=l,n.context.eventService.mapEvent(d)}}catch(g){u.e(g)}finally{u.f()}n.setCursor(n.context.eventService.cursor)}}),i.hooks.pointerMove.tap(r.tag,this.onPointerMove),i.hooks.pointerOver.tap(r.tag,this.onPointerMove),i.hooks.pointerOut.tap(r.tag,this.onPointerMove),i.hooks.click.tap(r.tag,this.onClick),i.hooks.pointerCancel.tap(r.tag,function(s){var o=n.normalizeToPointerEvent(s,a),A=(0,Gs.Z)(o),l;try{for(A.s();!(l=A.n()).done;){var c=l.value,u=n.bootstrapEvent(n.rootPointerEvent,c,a,s);n.context.eventService.mapEvent(u)}}catch(h){A.e(h)}finally{A.f()}n.setCursor(n.context.eventService.cursor)})}},{key:"bootstrapEvent",value:function(e,n,i,a){e.view=i,e.originalEvent=null,e.nativeEvent=a,e.pointerId=n.pointerId,e.width=n.width,e.height=n.height,e.isPrimary=n.isPrimary,e.pointerType=n.pointerType,e.pressure=n.pressure,e.tangentialPressure=n.tangentialPressure,e.tiltX=n.tiltX,e.tiltY=n.tiltY,e.twist=n.twist,this.transferMouseData(e,n);var s=this.context.eventService.client2Viewport({x:n.clientX,y:n.clientY}),o=s.x,A=s.y;e.viewport.x=o,e.viewport.y=A;var l=this.context.eventService.viewport2Canvas(e.viewport),c=l.x,u=l.y;return e.canvas.x=c,e.canvas.y=u,e.global.copyFrom(e.canvas),e.offset.copyFrom(e.canvas),e.isTrusted=a.isTrusted,e.type==="pointerleave"&&(e.type="pointerout"),e.type.startsWith("mouse")&&(e.type=e.type.replace("mouse","pointer")),e.type.startsWith("touch")&&(e.type=CM[e.type]||e.type),e}},{key:"normalizeWheelEvent",value:function(e){var n=this.rootWheelEvent;this.transferMouseData(n,e),n.deltaMode=e.deltaMode,n.deltaX=e.deltaX,n.deltaY=e.deltaY,n.deltaZ=e.deltaZ;var i=this.context.eventService.client2Viewport({x:e.clientX,y:e.clientY}),a=i.x,s=i.y;n.viewport.x=a,n.viewport.y=s;var o=this.context.eventService.viewport2Canvas(n.viewport),A=o.x,l=o.y;return n.canvas.x=A,n.canvas.y=l,n.global.copyFrom(n.canvas),n.offset.copyFrom(n.canvas),n.nativeEvent=e,n.type=e.type,n}},{key:"transferMouseData",value:function(e,n){e.isTrusted=n.isTrusted,e.srcElement=n.srcElement,e.timeStamp=Jp.now(),e.type=n.type,e.altKey=n.altKey,e.metaKey=n.metaKey,e.shiftKey=n.shiftKey,e.ctrlKey=n.ctrlKey,e.button=n.button,e.buttons=n.buttons,e.client.x=n.clientX,e.client.y=n.clientY,e.movement.x=n.movementX,e.movement.y=n.movementY,e.page.x=n.pageX,e.page.y=n.pageY,e.screen.x=n.screenX,e.screen.y=n.screenY,e.relatedTarget=null}},{key:"setCursor",value:function(e){this.context.contextService.applyCursorStyle(e||this.context.config.cursor||"default")}},{key:"normalizeToPointerEvent",value:function(e,n){var i=[];if(n.isTouchEvent(e))for(var a=0;a<e.changedTouches.length;a++){var s=e.changedTouches[a];Ye(s.button)&&(s.button=0),Ye(s.buttons)&&(s.buttons=1),Ye(s.isPrimary)&&(s.isPrimary=e.touches.length===1&&e.type==="touchstart"),Ye(s.width)&&(s.width=s.radiusX||1),Ye(s.height)&&(s.height=s.radiusY||1),Ye(s.tiltX)&&(s.tiltX=0),Ye(s.tiltY)&&(s.tiltY=0),Ye(s.pointerType)&&(s.pointerType="touch"),Ye(s.pointerId)&&(s.pointerId=s.identifier||0),Ye(s.pressure)&&(s.pressure=s.force||.5),Ye(s.twist)&&(s.twist=0),Ye(s.tangentialPressure)&&(s.tangentialPressure=0),s.isNormalized=!0,s.type=e.type,i.push(s)}else if(n.isMouseEvent(e)){var o=e;Ye(o.isPrimary)&&(o.isPrimary=!0),Ye(o.width)&&(o.width=1),Ye(o.height)&&(o.height=1),Ye(o.tiltX)&&(o.tiltX=0),Ye(o.tiltY)&&(o.tiltY=0),Ye(o.pointerType)&&(o.pointerType="mouse"),Ye(o.pointerId)&&(o.pointerId=xM),Ye(o.pressure)&&(o.pressure=.5),Ye(o.twist)&&(o.twist=0),Ye(o.tangentialPressure)&&(o.tangentialPressure=0),o.isNormalized=!0,i.push(o)}else i.push(e);return i}}])}();ME.tag="Event";var zT=[Zt.CIRCLE,Zt.ELLIPSE,Zt.IMAGE,Zt.RECT,Zt.LINE,Zt.POLYLINE,Zt.POLYGON,Zt.TEXT,Zt.PATH,Zt.HTML],VT=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"isVisible",value:function(e,n){var i,a=n.cullable;if(!a.enable)return!0;var s=n.getRenderBounds();if(Yn.isEmpty(s))return!1;var o=e.getFrustum(),A=(i=n.parentNode)===null||i===void 0||(i=i.cullable)===null||i===void 0?void 0:i.visibilityPlaneMask;return a.visibilityPlaneMask=this.computeVisibilityWithPlaneMask(n,s,A||tA.INDETERMINATE,o.planes),a.visible=a.visibilityPlaneMask!==tA.OUTSIDE,a.visible}},{key:"computeVisibilityWithPlaneMask",value:function(e,n,i,a){if(i===tA.OUTSIDE||i===tA.INSIDE)return i;for(var s=tA.INSIDE,o=zT.indexOf(e.nodeName)>-1,A=0,l=a.length;A<l;++A){var c=1<<A;if(i&c&&!(o&&(A===4||A===5))){var u=a[A],h=u.normal,f=u.distance;if(_e(h,n.getPositiveFarPoint(a[A]))+f<0)return tA.OUTSIDE;_e(h,n.getNegativeFarPoint(a[A]))+f<0&&(s|=c)}}return s}}])}(),TE=function(){function r(){(0,N.Z)(this,r),this.mutationRecords=[],this.isFirstTimeRendering=!0,this.isFirstTimeRenderingFinished=!1}return(0,O.Z)(r,[{key:"apply",value:function(e){var n=this,i,a=e.renderingService,s=e.renderingContext,o=s.root.ownerDocument.defaultView,A=function(d){a.dirty()},l=function(d){var g,v=d.detail;(g=n.mutationRecords).push.apply(g,(0,k.Z)(v)),a.dirty()},c=function(d){var g=d.target;se.enableSizeAttenuation&&se.styleValueRegistry.updateSizeAttenuation(g,o.getCamera().getZoom())},u=function(d){var g=d.target;se.sceneGraphService.dirtyToRoot(g),a.dirty()};a.hooks.init.tap(r.tag,function(){o.addEventListener(yn.MOUNTED,c),o.addEventListener(yn.UNMOUNTED,u),o.addEventListener(yn.ATTR_MODIFIED,A),o.addEventListener(yn.BOUNDS_CHANGED,l)}),a.hooks.destroy.tap(r.tag,function(){o.removeEventListener(yn.MOUNTED,c),o.removeEventListener(yn.UNMOUNTED,u),o.removeEventListener(yn.ATTR_MODIFIED,A),o.removeEventListener(yn.BOUNDS_CHANGED,l),n.mutationRecords=[]});var h=(i=se.globalThis.requestIdleCallback)!==null&&i!==void 0?i:qp.bind(se.globalThis);a.hooks.endFrame.tap(r.tag,function(){n.isFirstTimeRendering&&(n.isFirstTimeRendering=!1,h(function(){n.isFirstTimeRenderingFinished=!0})),n.mutationRecords=[]})}}])}();TE.tag="Prepare";function _6(r){return!!r.document}var Fa=function(r){return r.READY="ready",r.BEFORE_RENDER="beforerender",r.RERENDER="rerender",r.AFTER_RENDER="afterrender",r.BEFORE_DESTROY="beforedestroy",r.AFTER_DESTROY="afterdestroy",r.RESIZE="resize",r.DIRTY_RECTANGLE="dirtyrectangle",r.RENDERER_CHANGED="rendererchanged",r}({}),FE=500,WT=.1,ZT=1e3,rd=new Wr(yn.MOUNTED),id=new Wr(yn.UNMOUNTED),am=new Wr(Fa.BEFORE_RENDER),OE=new Wr(Fa.RERENDER),sm=new Wr(Fa.AFTER_RENDER),om=function(r){function t(e){var n;(0,N.Z)(this,t),n=(0,U.Z)(this,t),n.Element=ir,n.inited=!1,n.context={};var i=e.container,a=e.canvas,s=e.renderer,o=e.width,A=e.height,l=e.background,c=e.cursor,u=e.supportsMutipleCanvasesInOneContainer,h=e.cleanUpOnDestroy,f=h===void 0?!0:h,d=e.offscreenCanvas,g=e.devicePixelRatio,v=e.requestAnimationFrame,y=e.cancelAnimationFrame,E=e.createImage,C=e.supportsTouchEvents,I=e.supportsPointerEvents,R=e.isTouchEvent,K=e.isMouseEvent,W=e.dblClickSpeed,V=o,J=A,et=g||Xp&&window.devicePixelRatio||1;return et=et>=1?Math.ceil(et):1,a&&(V=o||BM(a)||a.width/et,J=A||bM(a)||a.height/et),n.customElements=new GT,n.devicePixelRatio=et,n.requestAnimationFrame=v!=null?v:qp.bind(se.globalThis),n.cancelAnimationFrame=y!=null?y:hE.bind(se.globalThis),n.createImage=E!=null?E:function(){return new window.Image},n.supportsTouchEvents=C!=null?C:"ontouchstart"in se.globalThis,n.supportsPointerEvents=I!=null?I:!!se.globalThis.PointerEvent,n.isTouchEvent=R!=null?R:function(at){return n.supportsTouchEvents&&at instanceof se.globalThis.TouchEvent},n.isMouseEvent=K!=null?K:function(at){return!se.globalThis.MouseEvent||at instanceof se.globalThis.MouseEvent&&(!n.supportsPointerEvents||!(at instanceof se.globalThis.PointerEvent))},d&&(se.offscreenCanvas=d),n.document=new CE,n.document.defaultView=n,u||mM(i,n,f),n.initRenderingContext((0,D.Z)((0,D.Z)({},e),{},{width:V,height:J,background:l!=null?l:"transparent",cursor:c!=null?c:"default",cleanUpOnDestroy:f,devicePixelRatio:et,requestAnimationFrame:n.requestAnimationFrame,cancelAnimationFrame:n.cancelAnimationFrame,createImage:n.createImage,supportsTouchEvents:n.supportsTouchEvents,supportsPointerEvents:n.supportsPointerEvents,isTouchEvent:n.isTouchEvent,isMouseEvent:n.isMouseEvent,dblClickSpeed:W!=null?W:200})),n.initDefaultCamera(V,J,s.clipSpaceNearZ),n.initRenderer(s,!0),n}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"initRenderingContext",value:function(n){this.context.config=n,this.context.renderingContext={root:this.document.documentElement,unculledEntities:[],renderListCurrentFrame:[],renderReasons:new Set,force:!1,dirty:!1}}},{key:"initDefaultCamera",value:function(n,i,a){var s=this,o=new se.CameraContribution;o.clipSpaceNearZ=a,o.setType(In.EXPLORING,dc.DEFAULT).setPosition(n/2,i/2,FE).setFocalPoint(n/2,i/2,0).setOrthographic(n/-2,n/2,i/2,i/-2,WT,ZT),o.canvas=this,o.eventEmitter.on(Pf.UPDATED,function(){s.context.renderingContext.renderReasons.add(Mc.CAMERA_CHANGED),se.enableSizeAttenuation&&s.getConfig().renderer.getConfig().enableSizeAttenuation&&s.updateSizeAttenuation()}),this.context.camera=o}},{key:"updateSizeAttenuation",value:function(){var n=this.getCamera().getZoom();this.document.documentElement.forEach(function(i){se.styleValueRegistry.updateSizeAttenuation(i,n)})}},{key:"getConfig",value:function(){return this.context.config}},{key:"getRoot",value:function(){return this.document.documentElement}},{key:"getCamera",value:function(){return this.context.camera}},{key:"getContextService",value:function(){return this.context.contextService}},{key:"getEventService",value:function(){return this.context.eventService}},{key:"getRenderingService",value:function(){return this.context.renderingService}},{key:"getRenderingContext",value:function(){return this.context.renderingContext}},{key:"getStats",value:function(){return this.getRenderingService().getStats()}},{key:"ready",get:function(){var n=this;return this.readyPromise||(this.readyPromise=new Promise(function(i){n.resolveReadyPromise=function(){i(n)}}),this.inited&&this.resolveReadyPromise()),this.readyPromise}},{key:"destroy",value:function(){var n,i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,a=arguments.length>1?arguments[1]:void 0;Ln.clearCache();var s=((n=this.getConfig().future)===null||n===void 0?void 0:n.experimentalCancelEventPropagation)===!0;a||this.dispatchEvent(new Wr(Fa.BEFORE_DESTROY),s,s),this.frameId&&this.cancelAnimationFrame(this.frameId);var o=this.getRoot();i&&(this.unmountChildren(o),this.document.destroy(),this.getEventService().destroy()),this.getRenderingService().destroy(),this.getContextService().destroy(),a||this.dispatchEvent(new Wr(Fa.AFTER_DESTROY),s,s);var A=function(c){c.currentTarget=null,c.manager=null,c.target=null,c.relatedNode=null};A(rd),A(id),A(am),A(OE),A(sm),A(Xs),A(rm),A(im),A(xE),se.textService.clearCache()}},{key:"changeSize",value:function(n,i){this.resize(n,i)}},{key:"resize",value:function(n,i){var a,s=this.context.config;s.width=n,s.height=i,this.getContextService().resize(n,i);var o=this.context.camera,A=o.getProjectionMode();o.setPosition(n/2,i/2,FE).setFocalPoint(n/2,i/2,0),A===$i.ORTHOGRAPHIC?o.setOrthographic(n/-2,n/2,i/2,i/-2,o.getNear(),o.getFar()):o.setAspect(n/i);var l=((a=s.future)===null||a===void 0?void 0:a.experimentalCancelEventPropagation)===!0;this.dispatchEvent(new Wr(Fa.RESIZE,{width:n,height:i}),l,l)}},{key:"appendChild",value:function(n,i){return this.document.documentElement.appendChild(n,i)}},{key:"insertBefore",value:function(n,i){return this.document.documentElement.insertBefore(n,i)}},{key:"removeChild",value:function(n){return this.document.documentElement.removeChild(n)}},{key:"removeChildren",value:function(){this.document.documentElement.removeChildren()}},{key:"destroyChildren",value:function(){this.document.documentElement.destroyChildren()}},{key:"render",value:function(n){var i,a=this;n&&(am.detail=n,sm.detail=n);var s=((i=this.getConfig().future)===null||i===void 0?void 0:i.experimentalCancelEventPropagation)===!0;this.dispatchEvent(am,s,s);var o=this.getRenderingService();o.render(this,n,function(){a.dispatchEvent(OE,s,s)}),this.dispatchEvent(sm,s,s)}},{key:"run",value:function(){var n=this,i=function(s,o){n.render(o),n.frameId=n.requestAnimationFrame(i)};i()}},{key:"initRenderer",value:function(n){var i=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!n)throw new Error("Renderer is required.");this.inited=!1,this.readyPromise=void 0,this.context.renderingPlugins=[],this.context.renderingPlugins.push(new ME,new TE,new SE([new VT])),this.loadRendererContainerModule(n),this.context.contextService=new this.context.ContextService((0,D.Z)((0,D.Z)({},se),this.context)),this.context.renderingService=new iT(se,this.context),this.context.eventService=new rT(se,this.context),this.context.eventService.init(),this.context.contextService.init?(this.context.contextService.init(),this.initRenderingService(n,a,!0)):this.context.contextService.initAsync().then(function(){i.initRenderingService(n,a)}).catch(function(s){console.error(s)})}},{key:"initRenderingService",value:function(n){var i=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.context.renderingService.init(function(){var o;i.inited=!0;var A=((o=i.getConfig().future)===null||o===void 0?void 0:o.experimentalCancelEventPropagation)===!0;a?s?i.requestAnimationFrame(function(){i.dispatchEvent(new Wr(Fa.READY),A,A)}):i.dispatchEvent(new Wr(Fa.READY),A,A):i.dispatchEvent(new Wr(Fa.RENDERER_CHANGED),A,A),i.readyPromise&&i.resolveReadyPromise(),a||i.getRoot().forEach(function(l){var c,u;(c=(u=l).dirty)===null||c===void 0||c.call(u,!0,!0)}),i.mountChildren(i.getRoot()),n.getConfig().enableAutoRendering&&i.run()})}},{key:"loadRendererContainerModule",value:function(n){var i=this,a=n.getPlugins();a.forEach(function(s){s.context=i.context,s.init(se)})}},{key:"setRenderer",value:function(n){var i=this.getConfig();if(i.renderer!==n){var a=i.renderer;i.renderer=n,this.destroy(!1,!0),(0,k.Z)((a==null?void 0:a.getPlugins())||[]).reverse().forEach(function(s){s.destroy(se)}),this.initRenderer(n)}}},{key:"setCursor",value:function(n){var i=this.getConfig();i.cursor=n,this.getContextService().applyCursorStyle(n)}},{key:"unmountChildren",value:function(n){var i=this;if(n.childNodes.forEach(function(o){i.unmountChildren(o)}),this.inited){if(n.isMutationObserved)n.dispatchEvent(id);else{var a,s=((a=this.getConfig().future)===null||a===void 0?void 0:a.experimentalCancelEventPropagation)===!0;id.target=n,this.dispatchEvent(id,!0,s)}n!==this.document.documentElement&&(n.ownerDocument=null),n.isConnected=!1}n.isCustomElement&&n.disconnectedCallback&&n.disconnectedCallback()}},{key:"mountChildren",value:function(n){var i=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Xf(n);if(this.inited){if(!n.isConnected&&(n.ownerDocument=this.document,n.isConnected=!0,!a))if(n.isMutationObserved)n.dispatchEvent(rd);else{var s,o=((s=this.getConfig().future)===null||s===void 0?void 0:s.experimentalCancelEventPropagation)===!0;rd.target=n,this.dispatchEvent(rd,!0,o)}}else console.warn("[g]: You are trying to call `canvas.appendChild` before canvas' initialization finished. You can either await `canvas.ready` or listen to `CanvasEvent.READY` manually.","appended child: ",n.nodeName);n.childNodes.forEach(function(A){i.mountChildren(A,a)}),n.isCustomElement&&n.connectedCallback&&n.connectedCallback()}},{key:"mountFragment",value:function(n){this.mountChildren(n,!1)}},{key:"client2Viewport",value:function(n){return this.getEventService().client2Viewport(n)}},{key:"viewport2Client",value:function(n){return this.getEventService().viewport2Client(n)}},{key:"viewport2Canvas",value:function(n){return this.getEventService().viewport2Canvas(n)}},{key:"canvas2Viewport",value:function(n){return this.getEventService().canvas2Viewport(n)}},{key:"getPointByClient",value:function(n,i){return this.client2Viewport({x:n,y:i})}},{key:"getClientByPoint",value:function(n,i){return this.viewport2Client({x:n,y:i})}}])}(mE),H6=0,IE=new WeakMap,LE=null,G6=null,K6=null,ad,So;function z6(r,t){return ad=new LE(r,t)}function V6(r){return So||(So=LE.copy(ad),So.oldValue=r,So)}function W6(){ad=So=void 0}function jT(r){return r===So||r===ad}function Z6(r,t){return r===t?r:So&&jT(r)?So:null}function YT(r){r.nodes.forEach(function(t){var e=IE.get(t);e&&e.forEach(function(n){n.observer===r&&n.removeTransientObservers()})})}function j6(r,t){for(var e=r;e;e=e.parentNode){var n=IE.get(e);if(n)for(var i=0;i<n.length;i++){var a=n[i],s=a.options;if(!(e!==r&&!s.subtree)){var o=t(s);o&&a.enqueue(o)}}}}var Am=!1,lm=null;function Y6(r){lm.push(r),Am||(Am=!0,typeof se.globalThis!="undefined"?se.globalThis.setTimeout(cm):cm())}function cm(){Am=!1;var r=lm;lm=[],r.sort(function(e,n){return e.uid-n.uid});var t=!1;r.forEach(function(e){var n=e.takeRecords();YT(e),n.length&&(e.callback(n,e),t=!0)}),t&&cm()}var XT=function(){function r(){(0,N.Z)(this,r),this.cacheStore=new Map}return(0,O.Z)(r,[{key:"onRefAdded",value:function(e){}},{key:"has",value:function(e){return this.cacheStore.has(e)}},{key:"put",value:function(e,n,i){return this.cacheStore.has(e)?!1:(this.cacheStore.set(e,{value:n,counter:new Set([i.entity])}),this.onRefAdded(i),!0)}},{key:"get",value:function(e,n){var i=this.cacheStore.get(e);return i?(i.counter.has(n.entity)||(i.counter.add(n.entity),this.onRefAdded(n)),i.value):null}},{key:"update",value:function(e,n,i){var a=this.cacheStore.get(e);return a?(a.value=(0,D.Z)((0,D.Z)({},a.value),n),a.counter.has(i.entity)||(a.counter.add(i.entity),this.onRefAdded(i)),!0):!1}},{key:"release",value:function(e,n){var i=this.cacheStore.get(e);return i?(i.counter.delete(n.entity),i.counter.size<=0&&this.cacheStore.delete(e),!0):!1}},{key:"releaseRef",value:function(e){var n=this;Array.from(this.cacheStore.keys()).forEach(function(i){n.release(i,e)})}},{key:"getSize",value:function(){return this.cacheStore.size}},{key:"clear",value:function(){this.cacheStore.clear()}}])}(),um=[],hm=[],fm=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,null,[{key:"stop",value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:r.api;r.rafId&&(e.cancelAnimationFrame(r.rafId),r.rafId=null)}},{key:"executeTask",value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:r.api;um.length<=0&&hm.length<=0||(hm.forEach(function(n){return n()}),hm=um.splice(0,r.TASK_NUM_PER_FRAME),r.rafId=e.requestAnimationFrame(function(){r.executeTask(e)}))}},{key:"sliceImage",value:function(e,n,i,a){for(var s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:r.api,A=e.naturalWidth||e.width,l=e.naturalHeight||e.height,c=n-s,u=i-s,h=Math.ceil(A/c),f=Math.ceil(l/u),d={tileSize:[n,i],gridSize:[f,h],tiles:Array(f).fill(null).map(function(){return Array(h).fill(null)})},g=function(E){for(var C=function(K){um.push(function(){var W=K*c,V=E*u,J=[Math.min(n,A-W),Math.min(i,l-V)],et=J[0],at=J[1],ct=o.createCanvas();ct.width=n,ct.height=i;var pt=ct.getContext("2d");pt.drawImage(e,W,V,et,at,0,0,et,at),d.tiles[E][K]={x:W,y:V,tileX:K,tileY:E,data:ct},a()})},I=0;I<h;I++)C(I)},v=0;v<f;v++)g(v);return r.stop(),r.executeTask(),d}}])}();fm.TASK_NUM_PER_FRAME=10;var Oa=new XT;Oa.onRefAdded=function(t){var e=this;t.addEventListener(yn.DESTROY,function(){e.releaseRef(t)},{once:!0})};var dm=function(){function r(t,e){(0,N.Z)(this,r),this.gradientCache={},this.patternCache={},this.context=t,this.runtime=e}return(0,O.Z)(r,[{key:"getImageSync",value:function(e,n,i){var a=gn(e)?e:e.src;if(Oa.has(a)){var s=Oa.get(a,n);if(s.img.complete)return i==null||i(s),s}return this.getOrCreateImage(e,n).then(function(o){i==null||i(o)}).catch(function(o){console.error(o)}),null}},{key:"getOrCreateImage",value:function(e,n){var i=this,a=gn(e)?e:e.src;if(!gn(e)&&!Oa.has(a)){var s={img:e,size:[e.naturalWidth||e.width,e.naturalHeight||e.height],tileSize:sd(e)};Oa.put(a,s,n)}if(Oa.has(a)){var o=Oa.get(a,n);return o.img.complete?Promise.resolve(o):new Promise(function(A,l){o.img.addEventListener("load",function(){o.size=[o.img.naturalWidth||o.img.width,o.img.naturalHeight||o.img.height],o.tileSize=sd(o.img),A(o)}),o.img.addEventListener("error",function(c){l(c)})})}return new Promise(function(A,l){var c=i.context.config.createImage();if(c){var u={img:c,size:[0,0],tileSize:sd(c)};Oa.put(a,u,n),c.onload=function(){u.size=[c.naturalWidth||c.width,c.naturalHeight||c.height],u.tileSize=sd(u.img),A(u)},c.onerror=function(h){l(h)},c.crossOrigin="Anonymous",c.src=a}})}},{key:"createDownSampledImage",value:function(){var t=(0,Wa.Z)((0,ri.Z)().mark(function n(i,a){var s,o,A,l,c,u,h,f,d,g,v,y,E,C;return(0,ri.Z)().wrap(function(I){for(;;)switch(I.prev=I.next){case 0:return I.next=1,this.getOrCreateImage(i,a);case 1:if(s=I.sent,typeof s.downSamplingRate=="undefined"){I.next=2;break}return I.abrupt("return",s);case 2:if(o=this.context.config.enableLargeImageOptimization,A=typeof o=="boolean"?{}:o,l=A.maxDownSampledImageSize,c=l===void 0?2048:l,u=A.downSamplingRateThreshold,h=u===void 0?.5:u,f=this.runtime.globalThis.createImageBitmap,d=(0,Q.Z)(s.size,2),g=d[0],v=d[1],y=s.img,E=Math.min((c+c)/(g+v),Math.max(.01,Math.min(h,.5))),C=(0,D.Z)((0,D.Z)({},s),{},{downSamplingRate:E}),Oa.update(s.img.src,C,a),!f){I.next=7;break}return I.prev=3,I.next=4,f(s.img,{resizeWidth:g*E,resizeHeight:v*E});case 4:y=I.sent,I.next=6;break;case 5:I.prev=5,I.catch(3),E=1;case 6:I.next=8;break;case 7:E=1;case 8:return C=(0,D.Z)((0,D.Z)({},this.getImageSync(i,a)),{},{downSampled:y,downSamplingRate:E}),Oa.update(s.img.src,C,a),I.abrupt("return",C);case 9:case"end":return I.stop()}},n,this,[[3,5]])}));function e(n,i){return t.apply(this,arguments)}return e}()},{key:"createImageTiles",value:function(){var t=(0,Wa.Z)((0,ri.Z)().mark(function n(i,a,s,o){var A,l,c,u,h;return(0,ri.Z)().wrap(function(f){for(;;)switch(f.prev=f.next){case 0:return f.next=1,this.getOrCreateImage(i,o);case 1:return A=f.sent,l=o.ownerDocument.defaultView,c=l.requestAnimationFrame,u=l.cancelAnimationFrame,fm.api={requestAnimationFrame:c,cancelAnimationFrame:u,createCanvas:function(){return nm.createCanvas()}},h=(0,D.Z)((0,D.Z)({},A),fm.sliceImage(A.img,A.tileSize[0],A.tileSize[0],s)),Oa.update(A.img.src,h,o),f.abrupt("return",h);case 2:case"end":return f.stop()}},n,this)}));function e(n,i,a,s){return t.apply(this,arguments)}return e}()},{key:"releaseImage",value:function(e,n){Oa.release(gn(e)?e:e.src,n)}},{key:"releaseImageRef",value:function(e){Oa.releaseRef(e)}},{key:"getOrCreatePatternSync",value:function(e,n,i,a,s,o,A){var l=this.generatePatternKey(n);if(l&&this.patternCache[l])return this.patternCache[l];var c=n.image,u=n.repetition,h=n.transform,f,d=!1;if(gn(c)){var g=this.getImageSync(c,e,A);f=g==null?void 0:g.img}else a?(f=a,d=!0):f=c;var v=f&&i.createPattern(f,u);if(v){var y;h?y=vE($w(h),new ir({})):y=Ie(ne()),d&&Jn(y,y,[1/s,1/s,1]),v.setTransform({a:y[0],b:y[1],c:y[4],d:y[5],e:y[12]+o[0],f:y[13]+o[1]})}return l&&v&&(this.patternCache[l]=v),v}},{key:"getOrCreateGradient",value:function(e,n){var i=this.generateGradientKey(e),a=e.type,s=e.steps,o=e.min,A=e.width,l=e.height,c=e.angle,u=e.cx,h=e.cy,f=e.size;if(this.gradientCache[i])return this.gradientCache[i];var d=null;if(a===vs.LinearGradient){var g=Np(o,A,l,c),v=g.x1,y=g.y1,E=g.x2,C=g.y2;d=n.createLinearGradient(v,y,E,C)}else if(a===vs.RadialGradient){var I=kp(o,A,l,u,h,f),R=I.x,K=I.y,W=I.r;d=n.createRadialGradient(R,K,0,R,K,W)}return d&&(s.forEach(function(V){var J=V.offset,et=V.color;if(J.unit===ve.kPercentage){var at;(at=d)===null||at===void 0||at.addColorStop(J.value/100,et.toString())}}),this.gradientCache[i]=d),this.gradientCache[i]}},{key:"generateGradientKey",value:function(e){var n=e.type,i=e.min,a=e.width,s=e.height,o=e.steps,A=e.angle,l=e.cx,c=e.cy,u=e.size;return"gradient-".concat(n,"-").concat((A==null?void 0:A.toString())||0,"-").concat((l==null?void 0:l.toString())||0,"-").concat((c==null?void 0:c.toString())||0,"-").concat((u==null?void 0:u.toString())||0,"-").concat(i[0],"-").concat(i[1],"-").concat(a,"-").concat(s,"-").concat(o.map(function(h){var f=h.offset,d=h.color;return"".concat(f).concat(d)}).join("-"))}},{key:"generatePatternKey",value:function(e){var n=e.image,i=e.repetition;if(gn(n))return"pattern-".concat(n,"-").concat(i);if(n.nodeName==="rect")return"pattern-".concat(n.entity,"-").concat(i)}}])}();dm.isSupportTile=!!nm.createCanvas();function sd(r){if(!r.complete)return[0,0];var t=r.naturalWidth||r.width,e=r.naturalHeight||r.height,n=256;return[256,512].forEach(function(i){var a=Math.ceil(e/i),s=Math.ceil(t/i);a*s<1e3&&(n=i)}),[n,n]}var NE=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"apply",value:function(e){var n=e.renderingService,i=e.renderingContext,a=e.imagePool,s=i.root.ownerDocument.defaultView,o=function(u,h,f){var d=u.parsedStyle,g=d.width,v=d.height;g&&!v?u.setAttribute("height",f/h*g):!g&&v&&u.setAttribute("width",h/f*v)},A=function(u){var h=u.target,f=h.nodeName,d=h.attributes;if(f===Zt.IMAGE){var g=d.src,v=d.keepAspectRatio;a.getImageSync(g,h,function(y){var E=y.img,C=E.width,I=E.height;v&&o(h,C,I),h.dirty(),n.dirty()})}},l=function(u){var h=u.target,f=u.attrName,d=u.prevValue,g=u.newValue;h.nodeName!==Zt.IMAGE||f!=="src"||(d!==g&&a.releaseImage(d,h),gn(g)&&a.getOrCreateImage(g,h).then(function(v){var y=v.img,E=y.width,C=y.height;h.attributes.keepAspectRatio&&o(h,E,C),h.dirty(),n.dirty()}).catch(function(){}))};n.hooks.init.tap(r.tag,function(){s.addEventListener(yn.MOUNTED,A),s.addEventListener(yn.ATTR_MODIFIED,l)}),n.hooks.destroy.tap(r.tag,function(){s.removeEventListener(yn.MOUNTED,A),s.removeEventListener(yn.ATTR_MODIFIED,l)})}}])}();NE.tag="LoadImage";var JT=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.name="image-loader",e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"init",value:function(n){this.context.imagePool=new dm(this.context,n),this.addRenderingPlugin(new NE)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])}(ls),qT=Object.freeze({__proto__:null,ImagePool:dm,Plugin:JT}),$T="g-canvas-camera",kE=function(){function r(){(0,N.Z)(this,r),this.displayObjectHTMLElementMap=new WeakMap}return(0,O.Z)(r,[{key:"joinTransformMatrix",value:function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0,0,0];return"matrix(".concat([e[0],e[1],e[4],e[5],e[12]+n[0],e[13]+n[1]].join(","),")")}},{key:"apply",value:function(e,n){var i=this,a=e.camera,s=e.renderingContext,o=e.renderingService;this.context=e;var A=s.root.ownerDocument.defaultView,l=A.context.eventService.nativeHTMLMap,c=function(y,E){E.style.transform=i.joinTransformMatrix(y.getWorldTransform(),y.getOrigin())},u=function(y){var E=y.target;if(E.nodeName===Zt.HTML){i.$camera||(i.$camera=i.createCamera(a));var C=i.getOrCreateEl(E);i.$camera.appendChild(C),Object.keys(E.attributes).forEach(function(I){i.updateAttribute(I,E)}),c(E,C),l.set(C,E)}},h=function(y){var E=y.target;if(E.nodeName===Zt.HTML&&i.$camera){var C=i.getOrCreateEl(E);C&&(C.remove(),l.delete(C))}},f=function(y){var E=y.target;if(E.nodeName===Zt.HTML){var C=y.attrName;i.updateAttribute(C,E)}},d=function(y){for(var E=y.detail,C=0;C<E.length;C++){var I=E[C],R=I.target,K=R.nodeName===Zt.FRAGMENT?R.childNodes:[R];K.forEach(function(W){if(W.nodeName===Zt.HTML){var V=i.getOrCreateEl(W);c(W,V)}})}},g=function(){if(i.$camera){var y=i.context.config,E=y.width,C=y.height;i.$camera.parentElement.style.width="".concat(E||0,"px"),i.$camera.parentElement.style.height="".concat(C||0,"px")}};o.hooks.init.tap(r.tag,function(){A.addEventListener(Fa.RESIZE,g),A.addEventListener(yn.MOUNTED,u),A.addEventListener(yn.UNMOUNTED,h),A.addEventListener(yn.ATTR_MODIFIED,f),A.addEventListener(yn.BOUNDS_CHANGED,d)}),o.hooks.endFrame.tap(r.tag,function(){i.$camera&&s.renderReasons.has(Mc.CAMERA_CHANGED)&&(i.$camera.style.transform=i.joinTransformMatrix(a.getOrthoMatrix()))}),o.hooks.destroy.tap(r.tag,function(){i.$camera&&i.$camera.remove(),A.removeEventListener(Fa.RESIZE,g),A.removeEventListener(yn.MOUNTED,u),A.removeEventListener(yn.UNMOUNTED,h),A.removeEventListener(yn.ATTR_MODIFIED,f),A.removeEventListener(yn.BOUNDS_CHANGED,d)})}},{key:"createCamera",value:function(e){var n=this.context.config,i=n.document,a=n.width,s=n.height,o=this.context.contextService.getDomElement(),A=o.parentNode;if(A){var l=$T,c=A.querySelector("#".concat(l));if(!c){var u=(i||document).createElement("div");u.style.overflow="hidden",u.style.pointerEvents="none",u.style.position="absolute",u.style.left="0px",u.style.top="0px",u.style.width="".concat(a||0,"px"),u.style.height="".concat(s||0,"px");var h=(i||document).createElement("div");c=h,h.id=l,h.style.position="absolute",h.style.left="".concat(o.offsetLeft||0,"px"),h.style.top="".concat(o.offsetTop||0,"px"),h.style.transformOrigin="left top",h.style.transform=this.joinTransformMatrix(e.getOrthoMatrix()),h.style.pointerEvents="none",h.style.width="100%",h.style.height="100%",u.appendChild(h),A.appendChild(u)}return c}return null}},{key:"getOrCreateEl",value:function(e){var n=this.context.config.document,i=this.displayObjectHTMLElementMap.get(e);return i||(i=(n||document).createElement("div"),e.parsedStyle.$el=i,this.displayObjectHTMLElementMap.set(e,i),e.id&&(i.id=e.id),e.name&&i.setAttribute("name",e.name),e.className&&(i.className=e.className),i.style.position="absolute",i.style["will-change"]="transform",i.style.transform=this.joinTransformMatrix(e.getWorldTransform(),e.getOrigin())),i}},{key:"updateAttribute",value:function(e,n){var i=this.getOrCreateEl(n);switch(e){case"innerHTML":var a=n.parsedStyle.innerHTML;gn(a)?i.innerHTML=a:(i.innerHTML="",i.appendChild(a));break;case"x":i.style.left="".concat(n.parsedStyle.x,"px");break;case"y":i.style.top="".concat(n.parsedStyle.y,"px");break;case"transformOrigin":var s=n.parsedStyle.transformOrigin;i.style["transform-origin"]="".concat(s[0].buildCSSText(null,null,"")," ").concat(s[1].buildCSSText(null,null,""));break;case"width":var o=n.parsedStyle.width;i.style.width=we(o)?"".concat(o,"px"):o.toString();break;case"height":var A=n.parsedStyle.height;i.style.height=we(A)?"".concat(A,"px"):A.toString();break;case"zIndex":var l=n.parsedStyle.zIndex;i.style["z-index"]="".concat(l);break;case"visibility":var c=n.parsedStyle.visibility;i.style.visibility=c;break;case"pointerEvents":var u=n.parsedStyle.pointerEvents,h=u===void 0?"auto":u;i.style.pointerEvents=h;break;case"opacity":var f=n.parsedStyle.opacity;i.style.opacity="".concat(f);break;case"fill":var d=n.parsedStyle.fill,g="";xc(d)?d.isNone?g="transparent":g=n.getAttribute("fill"):Array.isArray(d)?g=n.getAttribute("fill"):Bo(d),i.style.background=g;break;case"stroke":var v=n.parsedStyle.stroke,y="";xc(v)?v.isNone?y="transparent":y=n.getAttribute("stroke"):Array.isArray(v)?y=n.getAttribute("stroke"):Bo(v),i.style["border-color"]=y,i.style["border-style"]="solid";break;case"lineWidth":var E=n.parsedStyle.lineWidth;i.style["border-width"]="".concat(E||0,"px");break;case"lineDash":i.style["border-style"]="dashed";break;case"filter":var C=n.style.filter;i.style.filter=C;break;default:!Pe(n.style[e])&&n.style[e]!==""&&(i.style[e]=n.style[e])}}}])}();kE.tag="HTMLRendering";var tF=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.name="html-renderer",e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"init",value:function(){this.addRenderingPlugin(new kE)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])}(ls),eF=Object.freeze({__proto__:null,Plugin:tF}),QE=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"apply",value:function(e,n){var i=this,a=e.renderingService,s=e.renderingContext,o=e.config;this.context=e;var A=s.root.ownerDocument.defaultView,l=function(V){a.hooks.pointerMove.call(V)},c=function(V){a.hooks.pointerUp.call(V)},u=function(V){a.hooks.pointerDown.call(V)},h=function(V){a.hooks.pointerOver.call(V)},f=function(V){a.hooks.pointerOut.call(V)},d=function(V){a.hooks.pointerCancel.call(V)},g=function(V){a.hooks.pointerWheel.call(V)},v=function(V){a.hooks.click.call(V)},y=function(V){n.globalThis.document.addEventListener("pointermove",l,!0),V.addEventListener("pointerdown",u,!0),V.addEventListener("pointerleave",f,!0),V.addEventListener("pointerover",h,!0),n.globalThis.addEventListener("pointerup",c,!0),n.globalThis.addEventListener("pointercancel",d,!0)},E=function(V){V.addEventListener("touchstart",u,!0),V.addEventListener("touchend",c,!0),V.addEventListener("touchmove",l,!0),V.addEventListener("touchcancel",d,!0)},C=function(V){n.globalThis.document.addEventListener("mousemove",l,!0),V.addEventListener("mousedown",u,!0),V.addEventListener("mouseout",f,!0),V.addEventListener("mouseover",h,!0),n.globalThis.addEventListener("mouseup",c,!0)},I=function(V){n.globalThis.document.removeEventListener("pointermove",l,!0),V.removeEventListener("pointerdown",u,!0),V.removeEventListener("pointerleave",f,!0),V.removeEventListener("pointerover",h,!0),n.globalThis.removeEventListener("pointerup",c,!0),n.globalThis.removeEventListener("pointercancel",d,!0)},R=function(V){V.removeEventListener("touchstart",u,!0),V.removeEventListener("touchend",c,!0),V.removeEventListener("touchmove",l,!0),V.removeEventListener("touchcancel",d,!0)},K=function(V){n.globalThis.document.removeEventListener("mousemove",l,!0),V.removeEventListener("mousedown",u,!0),V.removeEventListener("mouseout",f,!0),V.removeEventListener("mouseover",h,!0),n.globalThis.removeEventListener("mouseup",c,!0)};a.hooks.init.tap(r.tag,function(){var W=i.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(W.style.msContentZooming="none",W.style.msTouchAction="none"):A.supportsPointerEvents&&(W.style.touchAction="none"),A.supportsPointerEvents?y(W):C(W),A.supportsTouchEvents&&E(W),o.useNativeClickEvent&&W.addEventListener("click",v,!0),W.addEventListener("wheel",g,{passive:!0,capture:!0})}),a.hooks.destroy.tap(r.tag,function(){var W=i.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(W.style.msContentZooming="",W.style.msTouchAction=""):A.supportsPointerEvents&&(W.style.touchAction=""),A.supportsPointerEvents?I(W):K(W),A.supportsTouchEvents&&R(W),o.useNativeClickEvent&&W.removeEventListener("click",v,!0),W.removeEventListener("wheel",g,!0)})}}])}();QE.tag="DOMInteraction";var nF=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.name="dom-interaction",e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"init",value:function(){this.addRenderingPlugin(new QE)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])}(ls),rF=Object.freeze({__proto__:null,Plugin:nF}),UE=function(){function r(){(0,N.Z)(this,r)}return(0,O.Z)(r,[{key:"apply",value:function(e){var n=e.renderingService,i=e.contextService,a=e.config,s=i.getDomElement(),o=function(g){n.hooks.pointerDown.call(g)},A=function(g){n.hooks.pointerUp.call(g)},l=function(g){n.hooks.pointerMove.call(g)},c=function(g){n.hooks.pointerOver.call(g)},u=function(g){n.hooks.pointerOut.call(g)},h=function(g){n.hooks.click.call(g)},f=function(g){n.hooks.pointerCancel.call(g)};n.hooks.init.tap(r.tag,function(){s.addEventListener("touchstart",o,!0),s.addEventListener("touchend",A,!0),s.addEventListener("touchmove",l,!0),s.addEventListener("touchcancel",f,!0),s.addEventListener("mouseout",u,!0),s.addEventListener("mouseover",c,!0),a.useNativeClickEvent&&s.addEventListener("click",h,!0)}),n.hooks.destroy.tap(r.tag,function(){s.removeEventListener("touchstart",o,!0),s.removeEventListener("touchend",A,!0),s.removeEventListener("touchmove",l,!0),s.removeEventListener("touchcancel",f,!0),s.removeEventListener("mouseout",u,!0),s.removeEventListener("mouseover",c,!0),a.useNativeClickEvent&&s.removeEventListener("click",h,!0)})}}])}();UE.tag="MobileInteraction";var iF=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.name="mobile-interaction",e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"init",value:function(){this.addRenderingPlugin(new UE)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])}(ls),X6=Object.freeze({__proto__:null,Plugin:iF}),J6=M(64270);var gm=function(r){function t(e,n,i,a){var s;return(0,N.Z)(this,t),s=(0,U.Z)(this,t,[e]),s.currentTime=i,s.timelineTime=a,s.target=n,s.type="finish",s.bubbles=!1,s.currentTarget=n,s.defaultPrevented=!1,s.eventPhase=s.AT_TARGET,s.timeStamp=Date.now(),s.currentTime=i,s.timelineTime=a,s}return(0,L.Z)(t,r),(0,O.Z)(t)}(Jf),aF=0,sF=function(){function r(t,e){var n;(0,N.Z)(this,r),this.currentTimePending=!1,this._idle=!0,this._paused=!1,this._finishedFlag=!0,this._currentTime=0,this._playbackRate=1,this._inTimeline=!0,this.effect=t,t.animation=this,this.timeline=e,this.id="".concat(aF++),this._inEffect=!!this.effect.update(0),this._totalDuration=Number((n=this.effect)===null||n===void 0?void 0:n.getComputedTiming().endTime),this._holdTime=0,this._paused=!1,this.oldPlayState="idle",this.updatePromises()}return(0,O.Z)(r,[{key:"pending",get:function(){return this._startTime===null&&!this._paused&&this.playbackRate!==0||this.currentTimePending}},{key:"playState",get:function(){return this._idle?"idle":this._isFinished?"finished":this._paused?"paused":"running"}},{key:"ready",get:function(){var e=this;return this.readyPromise||(this.timeline.animationsWithPromises.indexOf(this)===-1&&this.timeline.animationsWithPromises.push(this),this.readyPromise=new Promise(function(n,i){e.resolveReadyPromise=function(){n(e)},e.rejectReadyPromise=function(){i(new Error)}}),this.pending||this.resolveReadyPromise()),this.readyPromise}},{key:"finished",get:function(){var e=this;return this.finishedPromise||(this.timeline.animationsWithPromises.indexOf(this)===-1&&this.timeline.animationsWithPromises.push(this),this.finishedPromise=new Promise(function(n,i){e.resolveFinishedPromise=function(){n(e)},e.rejectFinishedPromise=function(){i(new Error)}}),this.playState==="finished"&&this.resolveFinishedPromise()),this.finishedPromise}},{key:"currentTime",get:function(){return this.updatePromises(),this._idle||this.currentTimePending?null:this._currentTime},set:function(e){if(e=Number(e),!isNaN(e)){if(this.timeline.restart(),!this._paused&&this._startTime!==null){var n;this._startTime=Number((n=this.timeline)===null||n===void 0?void 0:n.currentTime)-e/this.playbackRate}this.currentTimePending=!1,this._currentTime!==e&&(this._idle&&(this._idle=!1,this._paused=!0),this.tickCurrentTime(e,!0),this.timeline.applyDirtiedAnimation(this))}}},{key:"startTime",get:function(){return this._startTime},set:function(e){if(e!==null){if(this.updatePromises(),e=Number(e),isNaN(e)||this._paused||this._idle)return;this._startTime=e,this.tickCurrentTime((Number(this.timeline.currentTime)-this._startTime)*this.playbackRate),this.timeline.applyDirtiedAnimation(this),this.updatePromises()}}},{key:"playbackRate",get:function(){return this._playbackRate},set:function(e){if(e!==this._playbackRate){this.updatePromises();var n=this.currentTime;this._playbackRate=e,this.startTime=null,this.playState!=="paused"&&this.playState!=="idle"&&(this._finishedFlag=!1,this._idle=!1,this.ensureAlive(),this.timeline.applyDirtiedAnimation(this)),n!==null&&(this.currentTime=n),this.updatePromises()}}},{key:"_isFinished",get:function(){return!this._idle&&(this._playbackRate>0&&Number(this._currentTime)>=this._totalDuration||this._playbackRate<0&&Number(this._currentTime)<=0)}},{key:"totalDuration",get:function(){return this._totalDuration}},{key:"_needsTick",get:function(){return this.pending||this.playState==="running"||!this._finishedFlag}},{key:"updatePromises",value:function(){var e;if((e=this.effect.target)!==null&&e!==void 0&&e.destroyed)return this.readyPromise=void 0,this.finishedPromise=void 0,!1;var n=this.oldPlayState,i=this.pending?"pending":this.playState;return this.readyPromise&&i!==n&&(i==="idle"?(this.rejectReadyPromise(),this.readyPromise=void 0):n==="pending"?this.resolveReadyPromise():i==="pending"&&(this.readyPromise=void 0)),this.finishedPromise&&i!==n&&(i==="idle"?(this.rejectFinishedPromise(),this.finishedPromise=void 0):i==="finished"?this.resolveFinishedPromise():n==="finished"&&(this.finishedPromise=void 0)),this.oldPlayState=i,this.readyPromise||this.finishedPromise}},{key:"play",value:function(){this.updatePromises(),this._paused=!1,(this._isFinished||this._idle)&&(this.rewind(),this._startTime=null),this._finishedFlag=!1,this._idle=!1,this.ensureAlive(),this.timeline.applyDirtiedAnimation(this),this.timeline.animations.indexOf(this)===-1&&this.timeline.animations.push(this),this.updatePromises()}},{key:"pause",value:function(){this.updatePromises(),this.currentTime&&(this._holdTime=this.currentTime),!this._isFinished&&!this._paused&&!this._idle?this.currentTimePending=!0:this._idle&&(this.rewind(),this._idle=!1),this._startTime=null,this._paused=!0,this.updatePromises()}},{key:"finish",value:function(){this.updatePromises(),!this._idle&&(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this.currentTimePending=!1,this.timeline.applyDirtiedAnimation(this),this.updatePromises())}},{key:"cancel",value:function(){var e=this;if(this.updatePromises(),!!this._inEffect&&(this._inEffect=!1,this._idle=!0,this._paused=!1,this._finishedFlag=!0,this._currentTime=null,this._startTime=null,this.effect.update(null),this.timeline.applyDirtiedAnimation(this),this.updatePromises(),this.oncancel)){var n=new gm(null,this,this.currentTime,null);setTimeout(function(){e.oncancel(n)})}}},{key:"reverse",value:function(){this.updatePromises();var e=this.currentTime;this.playbackRate*=-1,this.play(),e!==null&&(this.currentTime=e),this.updatePromises()}},{key:"updatePlaybackRate",value:function(e){this.playbackRate=e}},{key:"targetAnimations",value:function(){var e,n=(e=this.effect)===null||e===void 0?void 0:e.target;return n.getAnimations()}},{key:"markTarget",value:function(){var e=this.targetAnimations();e.indexOf(this)===-1&&e.push(this)}},{key:"unmarkTarget",value:function(){var e=this.targetAnimations(),n=e.indexOf(this);n!==-1&&e.splice(n,1)}},{key:"tick",value:function(e,n){!this._idle&&!this._paused&&(this._startTime===null?n&&(this.startTime=e-this._currentTime/this.playbackRate):this._isFinished||this.tickCurrentTime((e-this._startTime)*this.playbackRate)),n&&(this.currentTimePending=!1,this.fireEvents(e))}},{key:"rewind",value:function(){if(this.playbackRate>=0)this.currentTime=0;else if(this._totalDuration<1/0)this.currentTime=this._totalDuration;else throw new Error("Unable to rewind negative playback rate animation with infinite duration")}},{key:"persist",value:function(){throw new Error(On)}},{key:"addEventListener",value:function(e,n,i){throw new Error(On)}},{key:"removeEventListener",value:function(e,n,i){throw new Error(On)}},{key:"dispatchEvent",value:function(e){throw new Error(On)}},{key:"commitStyles",value:function(){throw new Error(On)}},{key:"ensureAlive",value:function(){if(this.playbackRate<0&&this.currentTime===0){var e;this._inEffect=!!((e=this.effect)!==null&&e!==void 0&&e.update(-1))}else{var n;this._inEffect=!!((n=this.effect)!==null&&n!==void 0&&n.update(this.currentTime))}!this._inTimeline&&(this._inEffect||!this._finishedFlag)&&(this._inTimeline=!0,this.timeline.animations.push(this))}},{key:"tickCurrentTime",value:function(e,n){e!==this._currentTime&&(this._currentTime=e,this._isFinished&&!n&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this.ensureAlive())}},{key:"fireEvents",value:function(e){var n=this;if(this._isFinished){if(!this._finishedFlag){if(this.onfinish){var i=new gm(null,this,this.currentTime,e);setTimeout(function(){n.onfinish&&n.onfinish(i)})}this._finishedFlag=!0}}else{if(this.onframe&&this.playState==="running"){var a=new gm(null,this,this.currentTime,e);this.onframe(a)}this._finishedFlag=!1}}}])}(),oF=4,AF=.001,lF=1e-7,cF=10,th=11,od=1/(th-1),uF=typeof Float32Array=="function",PE=function(t,e){return 1-3*e+3*t},DE=function(t,e){return 3*e-6*t},RE=function(t){return 3*t},Ad=function(t,e,n){return((PE(e,n)*t+DE(e,n))*t+RE(e))*t},_E=function(t,e,n){return 3*PE(e,n)*t*t+2*DE(e,n)*t+RE(e)},hF=function(t,e,n,i,a){var s,o,A=0;do o=e+(n-e)/2,s=Ad(o,i,a)-t,s>0?n=o:e=o;while(Math.abs(s)>lF&&++A<cF);return o},fF=function(t,e,n,i){for(var a=0;a<oF;++a){var s=_E(e,n,i);if(s===0)return e;var o=Ad(e,n,i)-t;e-=o/s}return e},vm=function(t,e,n,i){if(!(t>=0&&t<=1&&n>=0&&n<=1))throw new Error("bezier x values must be in [0, 1] range");if(t===e&&n===i)return function(A){return A};for(var a=uF?new Float32Array(th):new Array(th),s=0;s<th;++s)a[s]=Ad(s*od,t,n);var o=function(l){for(var c=0,u=1,h=th-1;u!==h&&a[u]<=l;++u)c+=od;--u;var f=(l-a[u])/(a[u+1]-a[u]),d=c+f*od,g=_E(d,t,n);return g>=AF?fF(l,d,t,n):g===0?d:hF(l,c,c+od,t,n)};return function(A){return A===0||A===1?A:Ad(o(A),e,i)}},dF=function(t){return t=t.replace(/([A-Z])/g,function(e){return"-".concat(e.toLowerCase())}),t.charAt(0)==="-"?t.substring(1):t},ld=function(t){return Math.pow(t,2)},cd=function(t){return Math.pow(t,3)},ud=function(t){return Math.pow(t,4)},hd=function(t){return Math.pow(t,5)},fd=function(t){return Math.pow(t,6)},dd=function(t){return 1-Math.cos(t*Math.PI/2)},gd=function(t){return 1-Math.sqrt(1-t*t)},vd=function(t){return t*t*(3*t-2)},pd=function(t){for(var e,n=4;t<((e=Math.pow(2,--n))-1)/11;);return 1/Math.pow(4,3-n)-7.5625*Math.pow((e*3-2)/22-t,2)},md=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=(0,Q.Z)(e,2),i=n[0],a=i===void 0?1:i,s=n[1],o=s===void 0?.5:s,A=hr(Number(a),1,10),l=hr(Number(o),.1,2);return t===0||t===1?t:-A*Math.pow(2,10*(t-1))*Math.sin((t-1-l/(Math.PI*2)*Math.asin(1/A))*(Math.PI*2)/l)},eh=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0,i=(0,Q.Z)(e,4),a=i[0],s=a===void 0?1:a,o=i[1],A=o===void 0?100:o,l=i[2],c=l===void 0?10:l,u=i[3],h=u===void 0?0:u;s=hr(s,.1,1e3),A=hr(A,.1,1e3),c=hr(c,.1,1e3),h=hr(h,.1,1e3);var f=Math.sqrt(A/s),d=c/(2*Math.sqrt(A*s)),g=d<1?f*Math.sqrt(1-d*d):0,v=1,y=d<1?(d*f+-h)/g:-h+f,E=n?n*t/1e3:t;return d<1?E=Math.exp(-E*d*f)*(v*Math.cos(g*E)+y*Math.sin(g*E)):E=(v+y*E)*Math.exp(-E*f),t===0||t===1?t:1-E},pm=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=e,i=(0,Q.Z)(n,2),a=i[0],s=a===void 0?10:a,o=i[1],A=o==="start"?Math.ceil:Math.floor;return A(hr(t,0,1)*s)/s},HE=function(t){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=(0,Q.Z)(e,4),i=n[0],a=n[1],s=n[2],o=n[3];return vm(i,a,s,o)(t)},yd=vm(.42,0,1,1),Xa=function(t){return function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0;return 1-t(1-e,n,i)}},Ja=function(t){return function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0;return e<.5?t(e*2,n,i)/2:1-t(e*-2+2,n,i)/2}},qa=function(t){return function(e){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0;return e<.5?(1-t(1-e*2,n,i))/2:(t(e*2-1,n,i)+1)/2}},GE={steps:pm,"step-start":function(t){return pm(t,[1,"start"])},"step-end":function(t){return pm(t,[1,"end"])},linear:function(t){return t},"cubic-bezier":HE,ease:function(t){return HE(t,[.25,.1,.25,1])},in:yd,out:Xa(yd),"in-out":Ja(yd),"out-in":qa(yd),"in-quad":ld,"out-quad":Xa(ld),"in-out-quad":Ja(ld),"out-in-quad":qa(ld),"in-cubic":cd,"out-cubic":Xa(cd),"in-out-cubic":Ja(cd),"out-in-cubic":qa(cd),"in-quart":ud,"out-quart":Xa(ud),"in-out-quart":Ja(ud),"out-in-quart":qa(ud),"in-quint":hd,"out-quint":Xa(hd),"in-out-quint":Ja(hd),"out-in-quint":qa(hd),"in-expo":fd,"out-expo":Xa(fd),"in-out-expo":Ja(fd),"out-in-expo":qa(fd),"in-sine":dd,"out-sine":Xa(dd),"in-out-sine":Ja(dd),"out-in-sine":qa(dd),"in-circ":gd,"out-circ":Xa(gd),"in-out-circ":Ja(gd),"out-in-circ":qa(gd),"in-back":vd,"out-back":Xa(vd),"in-out-back":Ja(vd),"out-in-back":qa(vd),"in-bounce":pd,"out-bounce":Xa(pd),"in-out-bounce":Ja(pd),"out-in-bounce":qa(pd),"in-elastic":md,"out-elastic":Xa(md),"in-out-elastic":Ja(md),"out-in-elastic":qa(md),spring:eh,"spring-in":eh,"spring-out":Xa(eh),"spring-in-out":Ja(eh),"spring-out-in":qa(eh)},gF=function(t){return dF(t).replace(/^ease-/,"").replace(/(\(|\s).+/,"").toLowerCase().trim()},vF=function(t){return GE[gF(t)]||GE.linear},pF=function(t){return t},mF=1,yF=.5,KE=0;function zE(r,t){return function(e){if(e>=1)return 1;var n=1/r;return e+=t*n,e-e%n}}var wd="\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*",wF=new RegExp("cubic-bezier\\(".concat(wd,",").concat(wd,",").concat(wd,",").concat(wd,"\\)")),EF=/steps\(\s*(\d+)\s*\)/,BF=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/;function mm(r){var t=wF.exec(r);if(t)return vm.apply(void 0,(0,k.Z)(t.slice(1).map(Number)));var e=EF.exec(r);if(e)return zE(Number(e[1]),KE);var n=BF.exec(r);return n?zE(Number(n[1]),{start:mF,middle:yF,end:KE}[n[2]]):vF(r)}function bF(r){return Math.abs(xF(r)/(r.playbackRate||1))}function xF(r){var t;return r.duration===0||r.iterations===0?0:(r.duration==="auto"?0:Number(r.duration))*((t=r.iterations)!==null&&t!==void 0?t:1)}var VE=0,ym=1,Ed=2,WE=3;function CF(r,t,e){if(t===null)return VE;var n=e.endTime;return t<Math.min(e.delay,n)?ym:t>=Math.min(e.delay+r+e.endDelay,n)?Ed:WE}function SF(r,t,e,n,i){switch(n){case ym:return t==="backwards"||t==="both"?0:null;case WE:return e-i;case Ed:return t==="forwards"||t==="both"?r:null;case VE:return null}}function MF(r,t,e,n,i){var a=i;return r===0?t!==ym&&(a+=e):a+=n/r,a}function TF(r,t,e,n,i,a){var s=r===1/0?t%1:r%1;return s===0&&e===Ed&&n!==0&&(i!==0||a===0)&&(s=1),s}function FF(r,t,e,n){return r===Ed&&t===1/0?1/0:e===1?Math.floor(n)-1:Math.floor(n)}function OF(r,t,e){var n=r;if(r!=="normal"&&r!=="reverse"){var i=t;r==="alternate-reverse"&&(i+=1),n="normal",i!==1/0&&i%2!==0&&(n="reverse")}return n==="normal"?e:1-e}function IF(r,t,e){var n=CF(r,t,e),i=SF(r,e.fill,t,n,e.delay);if(i===null)return null;var a=e.duration==="auto"?0:e.duration,s=MF(a,n,e.iterations,i,e.iterationStart),o=TF(s,e.iterationStart,n,e.iterations,i,a),A=FF(n,e.iterations,o,s),l=OF(e.direction,A,o);return e.currentIteration=A,e.progress=l,e.easingFunction(l)}function LF(r,t,e){var n=NF(r,t),i=kF(n,e);return function(a,s){if(s!==null)i.filter(function(A){return s>=A.applyFrom&&s<A.applyTo}).forEach(function(A){var l=s-A.startOffset,c=A.endOffset-A.startOffset,u=c===0?0:l/c;a.setAttribute(A.property,A.interpolation(u),!1,!1)});else for(var o in n)ZE(o)&&a.setAttribute(o,null)}}function ZE(r){return r!=="offset"&&r!=="easing"&&r!=="composite"&&r!=="computedOffset"}function NF(r,t){for(var e={},n=0;n<r.length;n++)for(var i in r[n])if(ZE(i)){var a={offset:r[n].offset,computedOffset:r[n].computedOffset,easing:r[n].easing,easingFunction:mm(r[n].easing)||t.easingFunction,value:r[n][i]};e[i]=e[i]||[],e[i].push(a)}return e}function kF(r,t){var e=[];for(var n in r)for(var i=r[n],a=0;a<i.length-1;a++){var s=a,o=a+1,A=i[s].computedOffset,l=i[o].computedOffset,c=A,u=l;a===0&&(c=-1/0,l===0&&(o=s)),a===i.length-2&&(u=1/0,A===1&&(s=o)),e.push({applyFrom:c,applyTo:u,startOffset:i[s].computedOffset,endOffset:i[o].computedOffset,easingFunction:i[s].easingFunction,property:n,interpolation:QF(n,i[s].value,i[o].value,t)})}return e.sort(function(h,f){return h.startOffset-f.startOffset}),e}var jE=function(t,e,n){return function(i){var a=YE(t,e,i);return we(a)?a:n(a)}};function QF(r,t,e,n){var i=nE[r];if(i&&i.syntax&&i.int){var a=se.styleValueRegistry.getPropertySyntax(i.syntax);if(a){var s=a.parser,o=s?s(t,n):t,A=s?s(e,n):e,l=a.mixer(o,A,n);if(l){var c=jE.apply(void 0,(0,k.Z)(l));return function(u){return u===0?t:u===1?e:c(u)}}}}return jE(!1,!0,function(u){return u?e:t})}function YE(r,t,e){if(typeof r=="number"&&typeof t=="number")return r*(1-e)+t*e;if(typeof r=="boolean"&&typeof t=="boolean"||typeof r=="string"&&typeof t=="string")return e<.5?r:t;if(Array.isArray(r)&&Array.isArray(t)){for(var n=r.length,i=t.length,a=Math.max(n,i),s=[],o=0;o<a;o++)s.push(YE(r[o<n?o:n-1],t[o<i?o:i-1],e));return s}throw new Error("Mismatched interpolation arguments ".concat(r,":").concat(t))}var UF=function(){function r(){(0,N.Z)(this,r),this.delay=0,this.direction="normal",this.duration="auto",this._easing="linear",this.easingFunction=pF,this.endDelay=0,this.fill="auto",this.iterationStart=0,this.iterations=1,this.currentIteration=null,this.progress=null}return(0,O.Z)(r,[{key:"easing",get:function(){return this._easing},set:function(e){this.easingFunction=mm(e),this._easing=e}}])}();function PF(r){var t=[];for(var e in r)if(!(e in["easing","offset","composite"])){var n=r[e];Array.isArray(n)||(n=[n]);for(var i=n.length,a=0;a<i;a++){if(!t[a]){var s={};"offset"in r&&(s.offset=Number(r.offset)),"easing"in r&&(s.easing=r.easing),"composite"in r&&(s.composite=r.composite),t[a]=s}n[a]!==void 0&&n[a]!==null&&(t[a][e]=n[a])}}return t.sort(function(o,A){return(o.computedOffset||0)-(A.computedOffset||0)}),t}function XE(r,t){if(r===null)return[];Array.isArray(r)||(r=PF(r));for(var e=r.map(function(A){var l={};t!=null&&t.composite&&(l.composite="auto");for(var c in A){var u=A[c];if(c==="offset"){if(u!==null){if(u=Number(u),!isFinite(u))throw new Error("Keyframe offsets must be numbers.");if(u<0||u>1)throw new Error("Keyframe offsets must be between 0 and 1.");l.computedOffset=u}}else if(c==="composite"&&["replace","add","accumulate","auto"].indexOf(u)===-1)throw new Error("".concat(u," compositing is not supported"));l[c]=u}return l.offset===void 0&&(l.offset=null),l.easing===void 0&&(l.easing=(t==null?void 0:t.easing)||"linear"),l.composite===void 0&&(l.composite="auto"),l}),n=!0,i=-1/0,a=0;a<e.length;a++){var s=e[a].offset;if(Pe(s))n=!1;else{if(s<i)throw new TypeError("Keyframes are not loosely sorted by offset. Sort or specify offsets.");i=s}}e=e.filter(function(A){return Number(A.offset)>=0&&Number(A.offset)<=1});function o(){var A,l=e,c=l.length;if(e[c-1].computedOffset=Number((A=e[c-1].offset)!==null&&A!==void 0?A:1),c>1){var u;e[0].computedOffset=Number((u=e[0].offset)!==null&&u!==void 0?u:0)}for(var h=0,f=Number(e[0].computedOffset),d=1;d<c;d++){var g=e[d].computedOffset;if(!Pe(g)&&!Pe(f)){for(var v=1;v<d-h;v++)e[h+v].computedOffset=f+(Number(g)-f)*v/(d-h);h=d,f=Number(g)}}}return n||o(),e}var DF="backwards|forwards|both|none".split("|"),RF="reverse|alternate|alternate-reverse".split("|");function _F(r,t){var e=new UF;return t&&(e.fill="both",e.duration="auto"),typeof r=="number"&&!isNaN(r)?e.duration=r:r!==void 0&&Object.keys(r).forEach(function(n){if(r[n]!==void 0&&r[n]!==null&&r[n]!=="auto"){if((typeof e[n]=="number"||n==="duration")&&(typeof r[n]!="number"||isNaN(r[n]))||n==="fill"&&DF.indexOf(r[n])===-1||n==="direction"&&RF.indexOf(r[n])===-1)return;e[n]=r[n]}}),e}function HF(r,t){return r=GF(r!=null?r:{duration:"auto"}),_F(r,t)}function GF(r){return typeof r=="number"&&(isNaN(r)?r={duration:"auto"}:r={duration:r}),r}var KF=function(){function r(t,e,n){var i=this;(0,N.Z)(this,r),this.composite="replace",this.iterationComposite="replace",this.target=t,this.timing=HF(n,!1),this.timing.effect=this,this.timing.activeDuration=bF(this.timing),this.timing.endTime=Math.max(0,this.timing.delay+this.timing.activeDuration+this.timing.endDelay),this.normalizedKeyframes=XE(e,this.timing),this.interpolations=LF(this.normalizedKeyframes,this.timing,this.target);var a=se.globalThis.Proxy;this.computedTiming=a?new a(this.timing,{get:function(o,A){return A==="duration"?o.duration==="auto"?0:o.duration:A==="fill"?o.fill==="auto"?"none":o.fill:A==="localTime"?i.animation&&i.animation.currentTime||null:A==="currentIteration"?!i.animation||i.animation.playState!=="running"?null:o.currentIteration||0:A==="progress"?!i.animation||i.animation.playState!=="running"?null:o.progress||0:o[A]},set:function(){return!0}}):this.timing}return(0,O.Z)(r,[{key:"applyInterpolations",value:function(){this.interpolations(this.target,Number(this.timeFraction))}},{key:"update",value:function(e){return e===null?!1:(this.timeFraction=IF(this.timing.activeDuration,e,this.timing),this.timeFraction!==null)}},{key:"getKeyframes",value:function(){return this.normalizedKeyframes}},{key:"setKeyframes",value:function(e){this.normalizedKeyframes=XE(e)}},{key:"getComputedTiming",value:function(){return this.computedTiming}},{key:"getTiming",value:function(){return this.timing}},{key:"updateTiming",value:function(e){var n=this;Object.keys(e||{}).forEach(function(i){n.timing[i]=e[i]})}}])}();function JE(r,t){return Number(r.id)-Number(t.id)}var zF=function(){function r(t){var e=this;(0,N.Z)(this,r),this.animations=[],this.ticking=!1,this.timelineTicking=!1,this.hasRestartedThisFrame=!1,this.animationsWithPromises=[],this.inTick=!1,this.pendingEffects=[],this.currentTime=null,this.rafId=0,this.rafCallbacks=[],this.webAnimationsNextTick=function(n){e.currentTime=n,e.discardAnimations(),e.animations.length===0?e.timelineTicking=!1:e.requestAnimationFrame(e.webAnimationsNextTick)},this.processRafCallbacks=function(n){var i=e.rafCallbacks;e.rafCallbacks=[],n<Number(e.currentTime)&&(n=Number(e.currentTime)),e.animations.sort(JE),e.animations=e.tick(n,!0,e.animations)[0],i.forEach(function(a){a[1](n)}),e.applyPendingEffects()},this.document=t}return(0,O.Z)(r,[{key:"getAnimations",value:function(){return this.discardAnimations(),this.animations.slice()}},{key:"isTicking",value:function(){return this.inTick}},{key:"play",value:function(e,n,i){var a=new KF(e,n,i),s=new sF(a,this);return this.animations.push(s),this.restartWebAnimationsNextTick(),s.updatePromises(),s.play(),s.updatePromises(),s}},{key:"applyDirtiedAnimation",value:function(e){var n=this;if(!this.inTick){e.markTarget();var i=e.targetAnimations();i.sort(JE);var a=this.tick(Number(this.currentTime),!1,i.slice())[1];a.forEach(function(s){var o=n.animations.indexOf(s);o!==-1&&n.animations.splice(o,1)}),this.applyPendingEffects()}}},{key:"restart",value:function(){return this.ticking||(this.ticking=!0,this.requestAnimationFrame(function(){}),this.hasRestartedThisFrame=!0),this.hasRestartedThisFrame}},{key:"destroy",value:function(){this.document.defaultView.cancelAnimationFrame(this.frameId)}},{key:"applyPendingEffects",value:function(){this.pendingEffects.forEach(function(e){e==null||e.applyInterpolations()}),this.pendingEffects=[]}},{key:"updateAnimationsPromises",value:function(){this.animationsWithPromises=this.animationsWithPromises.filter(function(e){return e.updatePromises()})}},{key:"discardAnimations",value:function(){this.updateAnimationsPromises(),this.animations=this.animations.filter(function(e){return e.playState!=="finished"&&e.playState!=="idle"})}},{key:"restartWebAnimationsNextTick",value:function(){this.timelineTicking||(this.timelineTicking=!0,this.requestAnimationFrame(this.webAnimationsNextTick))}},{key:"rAF",value:function(e){var n=this.rafId++;return this.rafCallbacks.length===0&&(this.frameId=this.document.defaultView.requestAnimationFrame(this.processRafCallbacks)),this.rafCallbacks.push([n,e]),n}},{key:"requestAnimationFrame",value:function(e){var n=this;return this.rAF(function(i){n.updateAnimationsPromises(),e(i),n.updateAnimationsPromises()})}},{key:"tick",value:function(e,n,i){var a=this,s,o;this.inTick=!0,this.hasRestartedThisFrame=!1,this.currentTime=e,this.ticking=!1;var A=[],l=[],c=[],u=[];return i.forEach(function(h){h.tick(e,n),h._inEffect?(l.push(h.effect),h.markTarget()):(A.push(h.effect),h.unmarkTarget()),h._needsTick&&(a.ticking=!0);var f=h._inEffect||h._needsTick;h._inTimeline=f,f?c.push(h):u.push(h)}),(s=this.pendingEffects).push.apply(s,A),(o=this.pendingEffects).push.apply(o,l),this.ticking&&this.requestAnimationFrame(function(){}),this.inTick=!1,[c,u]}}])}();se.EasingFunction=mm,se.AnimationTimeline=zF;var VF=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.landmarks=[],e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"rotate",value:function(n,i,a){if(this.relElevation=Ks(i),this.relAzimuth=Ks(n),this.relRoll=Ks(a),this.elevation+=this.relElevation,this.azimuth+=this.relAzimuth,this.roll+=this.relRoll,this.type===In.EXPLORING){var s=sa(Er(),[1,0,0],Un((this.rotateWorld?1:-1)*this.relElevation)),o=sa(Er(),[0,1,0],Un((this.rotateWorld?1:-1)*this.relAzimuth)),A=sa(Er(),[0,0,1],Un(this.relRoll)),l=Qs(Er(),o,s);l=Qs(Er(),l,A);var c=DA(ne(),l);Ae(this.matrix,this.matrix,[0,0,-this.distance]),de(this.matrix,this.matrix,c),Ae(this.matrix,this.matrix,[0,0,this.distance])}else{if(Math.abs(this.elevation)>90)return this;this.computeMatrix()}return this._getAxes(),this.type===In.ORBITING||this.type===In.EXPLORING?this._getPosition():this.type===In.TRACKING&&this._getFocalPoint(),this._update(),this}},{key:"pan",value:function(n,i){var a=vi(n,i,0),s=Nt(this.position);return oe(s,s,zt(xt(),this.right,a[0])),oe(s,s,zt(xt(),this.up,a[1])),this._setPosition(s),this.triggerUpdate(),this}},{key:"dolly",value:function(n){var i=this.forward,a=Nt(this.position),s=n*this.dollyingStep,o=this.distance+n*this.dollyingStep;return s=Math.max(Math.min(o,this.maxDistance),this.minDistance)-this.distance,a[0]+=s*i[0],a[1]+=s*i[1],a[2]+=s*i[2],this._setPosition(a),this.type===In.ORBITING||this.type===In.EXPLORING?this._getDistance():this.type===In.TRACKING&&oe(this.focalPoint,a,this.distanceVector),this.triggerUpdate(),this}},{key:"cancelLandmarkAnimation",value:function(){this.landmarkAnimationID!==void 0&&this.canvas.cancelAnimationFrame(this.landmarkAnimationID)}},{key:"createLandmark",value:function(n){var i,a,s,o,A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=A.position,c=l===void 0?this.position:l,u=A.focalPoint,h=u===void 0?this.focalPoint:u,f=A.roll,d=A.zoom,g=new se.CameraContribution;g.setType(this.type,void 0),g.setPosition(c[0],(i=c[1])!==null&&i!==void 0?i:this.position[1],(a=c[2])!==null&&a!==void 0?a:this.position[2]),g.setFocalPoint(h[0],(s=h[1])!==null&&s!==void 0?s:this.focalPoint[1],(o=h[2])!==null&&o!==void 0?o:this.focalPoint[2]),g.setRoll(f!=null?f:this.roll),g.setZoom(d!=null?d:this.zoom);var v={name:n,matrix:Be(g.getWorldTransform()),right:Nt(g.right),up:Nt(g.up),forward:Nt(g.forward),position:Nt(g.getPosition()),focalPoint:Nt(g.getFocalPoint()),distanceVector:Nt(g.getDistanceVector()),distance:g.getDistance(),dollyingStep:g.getDollyingStep(),azimuth:g.getAzimuth(),elevation:g.getElevation(),roll:g.getRoll(),relAzimuth:g.relAzimuth,relElevation:g.relElevation,relRoll:g.relRoll,zoom:g.getZoom()};return this.landmarks.push(v),v}},{key:"gotoLandmark",value:function(n){var i=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=gn(n)?this.landmarks.find(function(at){return at.name===n}):n;if(s){var o=we(a)?{duration:a}:a,A=o.easing,l=A===void 0?"linear":A,c=o.duration,u=c===void 0?100:c,h=o.easingFunction,f=h===void 0?void 0:h,d=o.onfinish,g=d===void 0?void 0:d,v=o.onframe,y=v===void 0?void 0:v,E=.01;this.cancelLandmarkAnimation();var C=s.position,I=s.focalPoint,R=s.zoom,K=s.roll,W=f||se.EasingFunction(l),V,J=function(){i.setFocalPoint(I),i.setPosition(C),i.setRoll(K),i.setZoom(R),i.computeMatrix(),i.triggerUpdate(),g==null||g()};if(u===0)return J();var et=function(ct){V===void 0&&(V=ct);var pt=ct-V;if(pt>=u){J();return}var wt=W(pt/u),Ct=xt(),Ht=xt(),Rt=1,St=0;an(Ct,i.focalPoint,I,wt),an(Ht,i.position,C,wt),St=i.roll*(1-wt)+K*wt,Rt=i.zoom*(1-wt)+R*wt,i.setFocalPoint(Ct),i.setPosition(Ht),i.setRoll(St),i.setZoom(Rt);var Ot=ma(Ct,I)+ma(Ht,C);if(Ot<=E&&R===void 0&&K===void 0)return J();i.computeMatrix(),i.triggerUpdate(),pt<u&&(y==null||y(wt),i.landmarkAnimationID=i.canvas.requestAnimationFrame(et))};this.canvas.requestAnimationFrame(et)}}}])}(Ru);se.CameraContribution=VF;var q6=null,$6=null;function qE(r,t,e){var n=r+t;return e?n*2:n}function $E(r,t){var e=t?[[r*.25,r*.25],[r*.75,r*.75]]:[[r*.5,r*.5]];return e}var WF={size:6,padding:2,backgroundColor:"transparent",opacity:1,fill:"#fff",fillOpacity:1,stroke:"transparent",strokeOpacity:1,lineWidth:0,isStagger:!0};function t5(r){var t=_objectSpread(_objectSpread({},WF),r),e=t.size,n=t.padding,i=t.isStagger,a=t.backgroundColor,s=t.backgroundOpacity,o=t.opacity,A=t.fill,l=t.fillOpacity,c=t.lineWidth,u=t.stroke,h=t.strokeOpacity,f=qE(e,n,i),d=$E(f,i),g=new Rect({style:{width:f,height:f,fill:a,opacity:1,fillOpacity:s}}),v=_createForOfIteratorHelper(d),y;try{for(v.s();!(y=v.n()).done;){var E=_slicedToArray(y.value,2),C=E[0],I=E[1],R=new Circle({style:{opacity:o,fill:A,fillOpacity:l,cx:C,cy:I,r:e/2,lineWidth:c,stroke:u,strokeOpacity:h}});g.appendChild(R)}}catch(K){v.e(K)}finally{v.f()}return g}var ZF={spacing:5,opacity:1,backgroundColor:"transparent",backgroundOpacity:1,strokeOpacity:1,stroke:"#fff",lineWidth:2};function e5(r){var t=_objectSpread(_objectSpread({},ZF),r),e=t.spacing,n=t.lineWidth,i=t.backgroundColor,a=t.backgroundOpacity,s=t.opacity,o=t.stroke,A=t.strokeOpacity,l=e+n||1,c=e+n||1,u=`
|
|
|
M 0 0 L `.concat(l,` 0
|
|
|
M 0 `).concat(c," L ").concat(l," ").concat(c,`
|
|
|
`),h=new Rect({style:{width:l,height:c,fill:i,opacity:1,fillOpacity:a}}),f=new Path({style:{d:u,opacity:s,stroke:o,strokeOpacity:A,fillOpacity:1,lineWidth:n}});return h.appendChild(f),h}var jF={size:6,padding:1,isStagger:!0,backgroundColor:"transparent",opacity:1,fill:"#fff",fillOpacity:1,stroke:"transparent",lineWidth:0};function n5(r){var t=_objectSpread(_objectSpread({},jF),r),e=t.size,n=t.padding,i=t.isStagger,a=t.backgroundColor,s=t.backgroundOpacity,o=t.opacity,A=t.fill,l=t.fillOpacity,c=t.stroke,u=t.strokeOpacity,h=t.lineWidth,f=qE(e,n,i),d=$E(f,i),g=new Rect({style:{width:f,height:f,fill:a,opacity:1,fillOpacity:s}}),v=_createForOfIteratorHelper(d),y;try{for(v.s();!(y=v.n()).done;){var E=_slicedToArray(y.value,2),C=E[0],I=E[1],R=new Rect({style:{opacity:o,fill:A,fillOpacity:l,x:C-e/2,y:I-e/2,width:e,height:e,lineWidth:h,stroke:c,strokeOpacity:u}});g.appendChild(R)}}catch(K){v.e(K)}finally{v.f()}return g}var YF=["body","startHead","endHead","startHeadOffset","endHeadOffset"],XF=["body","startHead","endHead","startHeadOffset","endHeadOffset"],JF=["body","startHead","endHead","startHeadOffset","endHeadOffset"],tB=function(r){function t(e){var n;(0,N.Z)(this,t),n=(0,U.Z)(this,t,[(0,D.Z)((0,D.Z)({},e),{},{type:t.tag})]);var i=n.attributes,a=i.body,s=i.startHead,o=i.endHead;i.startHeadOffset,i.endHeadOffset;var A=(0,Za.Z)(i,YF);if(!a)throw new Error("Arrow's body is required");return n.body=a,n.appendChild(n.body),n.handleBodyAttributeChanged(n.body),s&&n.appendArrowHead(n.getArrowHeadType(s),!0),o&&n.appendArrowHead(n.getArrowHeadType(o),!1),n.applyArrowStyle(A,[n.body,n.startHead,n.endHead]),n}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"handleBodyAttributeChanged",value:function(n){var i=this;n.addEventListener(yn.ATTR_MODIFIED,function(a){var s=a.attrName;s==="x1"||s==="y1"?i.startHead&&i.transformArrowHead(i.startHead,!0):(s==="x2"||s==="y2")&&i.endHead&&i.transformArrowHead(i.endHead,!1)})}},{key:"getBody",value:function(){return this.body}},{key:"getStartHead",value:function(){return this.startHead}},{key:"getEndHead",value:function(){return this.endHead}},{key:"attributeChangedCallback",value:function(n,i,a){if(n==="opacity"||n==="strokeOpacity"||n==="stroke"||n==="lineWidth"||n==="increasedLineWidthForHitTesting")this.applyArrowStyle((0,Ee.Z)({},n,a),[this.body,this.startHead,this.endHead]);else if(n==="startHead"||n==="endHead"){var s=n==="startHead";if(this.destroyArrowHead(s),a){var o=this.attributes;o.body,o.startHead,o.endHead,o.startHeadOffset,o.endHeadOffset;var A=(0,Za.Z)(o,XF);this.appendArrowHead(this.getArrowHeadType(a),s),this.applyArrowStyle(A,[s?this.startHead:this.endHead])}}else if(n==="body"){var l=this.attributes;l.body,l.startHead,l.endHead,l.startHeadOffset,l.endHeadOffset;var c=(0,Za.Z)(l,JF);this.body.destroy(),this.body=a,this.appendChild(this.body),this.applyArrowStyle(c,[this.body])}else n==="startHeadOffset"?this.moveArrowHeadAlongTangent(a,!0):n==="endHeadOffset"&&this.moveArrowHeadAlongTangent(a,!1)}},{key:"getArrowHeadType",value:function(n){return typeof n=="boolean"?"default":"custom"}},{key:"appendArrowHead",value:function(n,i){var a;n==="default"?a=this.createDefaultArrowHead():a=i?this.attributes.startHead:this.attributes.endHead,this.transformArrowHead(a,i),a.setAttribute("zIndex",1),i?this.startHead=a:this.endHead=a,this.appendChild(a);var s=i?this.attributes.startHeadOffset:this.attributes.endHeadOffset;s&&this.moveArrowHeadAlongTangent(s,i)}},{key:"transformArrowHead",value:function(n,i){var a=xt(),s=0,o=0,A=0,l=0,c=0,u=this.body&&this.body.nodeName;if(u===Zt.LINE){var h=this.body.attributes,f=h.x1,d=h.x2,g=h.y1,v=h.y2;o=i?d:f,A=i?f:d,l=i?v:g,c=i?g:v}else if(u===Zt.POLYLINE){var y=this.body.attributes.points,E=y.length;o=i?y[1][0]:y[E-2][0],l=i?y[1][1]:y[E-2][1],A=i?y[0][0]:y[E-1][0],c=i?y[0][1]:y[E-1][1]}else if(u===Zt.PATH){var C=this.getTangent(this.body,i),I=(0,Q.Z)(C,2),R=I[0],K=I[1];o=R[0],l=R[1],A=K[0],c=K[1]}var W=o-A,V=l-c;s=Math.atan2(V,W),a=Lt(A,c,0),i?(this.startHeadPosition=a,this.startHeadRad=s):(this.endHeadPosition=a,this.endHeadRad=s),n.setLocalPosition(a),n.setLocalEulerAngles(s*180/Math.PI+n.getLocalEulerAngles())}},{key:"moveArrowHeadAlongTangent",value:function(n,i){var a=i?this.startHead:this.endHead;a&&a.setLocalPosition(ss(xt(),i?this.startHeadPosition:this.endHeadPosition,Lt(Math.cos(i?this.startHeadRad:this.endHeadRad)*n,Math.sin(i?this.startHeadRad:this.endHeadRad)*n,0))),this.body}},{key:"destroyArrowHead",value:function(n){n&&this.startHead&&(this.startHead.destroy(),this.startHead=void 0),!n&&this.endHead&&(this.endHead.destroy(),this.endHead=void 0)}},{key:"getTangent",value:function(n,i){return i?n.getStartTangent():n.getEndTangent()}},{key:"createDefaultArrowHead",value:function(){var n=this.attributes,i=n.stroke,a=n.lineWidth,s=Math.sin,o=Math.cos,A=Math.PI,l=10*o(A/6);return new Pi({style:{d:"M".concat(l/2,",").concat(10*s(A/6)," L-").concat(l/2,",0 L").concat(l/2,",-").concat(10*s(A/6)),stroke:i,lineWidth:a,transformOrigin:"center"}})}},{key:"applyArrowStyle",value:function(n,i){var a=n.opacity,s=n.stroke,o=n.strokeOpacity,A=n.lineWidth,l=n.increasedLineWidthForHitTesting;i.forEach(function(c){c&&(Pe(a)||(c.style.opacity=a),Pe(s)||(c.style.stroke=s),Pe(o)||(c.style.strokeOpacity=o),Pe(A)||(c.style.lineWidth=A),Pe(l)||(c.style.increasedLineWidthForHitTesting=l))})}}])}(Ju);tB.tag="arrow",tB.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(Ju.PARSED_STYLE_LIST),["body","startHead","endHead","startHeadOffset","endHeadOffset","stroke","lineWidth","opacity","strokeOpacity"]));var wm=Math.PI,qF=wm*2,nh=Math.sin,Bd=Math.cos,$F=Math.acos,Di=Math.atan2,rh=Math.sqrt,Em=Math.max,qs=Math.min,Tc=1e-4,tO=[{name:"sr",inherits:!1,interpolable:!0,syntax:le.LENGTH_PERCENTAGE},{name:"sr0",inherits:!1,interpolable:!0,syntax:le.LENGTH_PERCENTAGE},{name:"startAngle",inherits:!1,interpolable:!0,syntax:le.ANGLE},{name:"endAngle",inherits:!1,interpolable:!0,syntax:le.ANGLE}];tO.forEach(function(r){KT.registerProperty(r)});var ys=function(t,e,n,i){return{x:t+n*Math.cos(i),y:e+n*Math.sin(i)}};function eO(r,t,e,n,i,a,s,o){var A=e-r,l=n-t,c=s-i,u=o-a,h=u*A-c*l;if(!(h*h<Tc))return h=(c*(t-a)-u*(r-i))/h,[r+h*A,t+h*l]}function bd(r,t,e,n,i,a,s){var o=r-e,A=t-n,l=(s?a:-a)/rh(o*o+A*A),c=l*A,u=-l*o,h=r+c,f=t+u,d=e+c,g=n+u,v=(h+d)/2,y=(f+g)/2,E=d-h,C=g-f,I=E*E+C*C,R=i-a,K=h*g-d*f,W=(C<0?-1:1)*rh(Em(0,R*R*I-K*K)),V=(K*C-E*W)/I,J=(-K*E-C*W)/I,et=(K*C+E*W)/I,at=(-K*E+C*W)/I,ct=V-v,pt=J-y,wt=et-v,Ct=at-y;return ct*ct+pt*pt>wt*wt+Ct*Ct&&(V=et,J=at),{cx:V,cy:J,x0:-c,y0:-u,x1:V*(i/R-1),y1:J*(i/R-1)}}function Mo(r,t){return t=t<0&&r>=0?t+qF:t,t-r<=wm?0:1}var nO=function(r){function t(e){var n;return(0,N.Z)(this,t),n=(0,U.Z)(this,t,[e]),n.updatePath(),n}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"setAttribute",value:function(n,i,a){_s(t,"setAttribute",this,3)([n,i,a]),["startAngle","endAngle","sr","sr0","radius"].indexOf(n)>-1&&this.updatePath()}},{key:"updatePath",value:function(){var n=this.parsedStyle,i=n.x,a=n.y,s=n.startAngle,o=n.endAngle,A=n.sr,l=n.sr0,c=n.radius,u=this.createPath(i,a,s?Un(s):0,o?Un(o):Math.PI*2,A||0,l||0,c||[0,0,0,0]);_s(t,"setAttribute",this,3)(["d",u])}},{key:"createPath",value:function(n,i,a,s,o,A,l){if(!(o<=0)){var c=ys(n,i,o,a),u=ys(n,i,o,s),h=ys(n,i,A,a),f=ys(n,i,A,s);if(Xo(s-a,Math.PI*2)){var d=ys(n,i,o,a+Math.PI),g=ys(n,i,A,a+Math.PI),v=[["M",c.x,c.y],["A",o,o,0,1,1,d.x,d.y],["A",o,o,0,1,1,u.x,u.y],["M",h.x,h.y]];return A&&(v.push(["A",A,A,0,1,0,g.x,g.y]),v.push(["A",A,A,0,1,0,f.x,f.y])),v.push(["M",c.x,c.y]),v.push(["Z"]),v}var y=s-a,E=o*Bd(a),C=o*nh(a),I=A*Bd(s),R=A*nh(s),K=o*Bd(s),W=o*nh(s),V=A*Bd(a),J=A*nh(a),et=(0,Q.Z)(l,4),at=et[0],ct=et[1],pt=et[2],wt=et[3],Ct=(o-A)/2,Ht=qs(Ct,at),Rt=qs(Ct,ct),St=qs(Ct,pt),Ot=qs(Ct,wt),Gt=Em(Ht,Rt),qt=Em(St,Ot),ae=Gt,ue=qt;if((Gt>Tc||qt>Tc)&&y<wm){var pe=eO(E,C,V,J,K,W,I,R);if(pe){var Ce=E-pe[0],Qe=C-pe[1],Re=K-pe[0],nn=W-pe[1],mn=1/nh($F((Ce*Re+Qe*nn)/(rh(Ce*Ce+Qe*Qe)*rh(Re*Re+nn*nn)))/2),on=rh(pe[0]*pe[0]+pe[1]*pe[1]);ae=qs(Gt,(o-on)/(mn+1)),ue=qs(qt,(A-on)/(mn-1))}}var er=Mo(a,s),kn=!0,Cn=[];if(ae>Tc){var gr=qs(at,ae),va=qs(ct,ae),Gn=bd(V,J,E,C,o,gr,kn),Bn=bd(K,W,I,R,o,va,kn);if(Cn.push(["M",n+Gn.cx+Gn.x0,i+Gn.cy+Gn.y0]),ae<Gt&&gr===va){var Ls=Di(Gn.y0,Gn.x0),ui=Di(Bn.y0,Bn.x0);Cn.push(["A",ae,ae,0,Mo(Ls,ui),1,n+Bn.cx+Bn.x0,i+Bn.cy+Bn.y0])}else{if(gr>0){var Ki=Di(Gn.y0,Gn.x0),un=Di(Gn.y1,Gn.x1),Tn=ys(n,i,o,un);Cn.push(["A",gr,gr,0,Mo(Ki,un),1,Tn.x,Tn.y])}var fn=Di(Gn.cy+Gn.y1,Gn.cx+Gn.x1),Sn=Di(Bn.cy+Bn.y1,Bn.cx+Bn.x1),Pn=ys(n,i,o,Sn);if(Cn.push(["A",o,o,0,Mo(fn,Sn),1,Pn.x,Pn.y]),va>0){var ke=Di(Bn.y1,Bn.x1),Fn=Di(Bn.y0,Bn.x0);Cn.push(["A",va,va,0,Mo(ke,Fn),1,n+Bn.cx+Bn.x0,i+Bn.cy+Bn.y0])}}}else Cn.push(["M",c.x,c.y]),Cn.push(["A",o,o,0,er,1,u.x,u.y]);if(A<Tc)Cn.push(["L",f.x,f.y]);else if(ue>Tc){var En=qs(wt,ue),cr=qs(pt,ue),$e=bd(I,R,0,0,A-o,cr,kn),qe=bd(0,0,V,J,A-o,En,kn);if(Cn.push(["L",n+$e.cx+$e.x0,i+$e.cy+$e.y0]),ue<qt&&En===cr){var pr=Di($e.y0,$e.x0),zi=Di(qe.y0,qe.x0),mr=ys(n,i,A,zi);Cn.push(["A",ae,ae,0,Mo(pr,zi),1,mr.x,mr.y])}else{if(cr>0){var Ro=Di($e.y0,$e.x0),_o=Di($e.y1,$e.x1),Ei=ys(n,i,A-o,_o);Cn.push(["A",cr,cr,0,Mo(Ro,_o),1,Ei.x,Ei.y])}var pa=Di($e.cy+$e.y1,$e.cx+$e.x1),Da=Di(qe.cy+qe.y1,qe.cx+qe.x1),Ra=ys(n,i,A,Da);if(Cn.push(["A",A,A,0,Mo(Da,pa),0,Ra.x,Ra.y]),Cn.push(["L",Ra.x,Ra.y]),En>0){var Oi=Di(qe.y1,qe.x1),_a=Di(qe.y0,qe.x0);Cn.push(["A",En,En,0,Mo(Oi,_a),1,n+qe.cx+qe.x0,i+qe.cy+qe.y0])}}}else Cn.push(["L",f.x,f.y]),Cn.push(["A",A,A,0,er,0,h.x,h.y]);return Cn.push(["Z"]),Cn}}}])}(Pi);nO.PARSED_STYLE_LIST=new Set([].concat((0,k.Z)(Pi.PARSED_STYLE_LIST),["x","y","sr","sr0","radius","startAngle","endAngle"]));var eB=function(r){return Pe(r)?"":r.toString()},rO=function(r){var t=eB(r);return t.charAt(0).toUpperCase()+t.substring(1)},xd=rO,iO=function(r){return typeof r=="object"&&r!==null},Bm=iO,aO=function(r){return r!==null&&typeof r!="function"&&isFinite(r.length)},ih=aO,bm=function(r,t){if(r===t)return!0;if(!r||!t||gn(r)||gn(t))return!1;if(ih(r)||ih(t)){if(r.length!==t.length)return!1;for(var e=!0,n=0;n<r.length&&(e=bm(r[n],t[n]),!!e);n++);return e}if(Bm(r)||Bm(t)){var i=Object.keys(r),a=Object.keys(t);if(i.length!==a.length)return!1;for(var e=!0,n=0;n<i.length&&(e=bm(r[i[n]],t[i[n]]),!!e);n++);return e}return!1},Rr=bm;const sO={duration:500},oO={duration:1e3,easing:"cubic-bezier(0.250, 0.460, 0.450, 0.940)",iterations:1,fill:"both"},r5={CHANGE:"change"};var fr;(function(r){r.NodeAdded="NodeAdded",r.NodeUpdated="NodeUpdated",r.NodeRemoved="NodeRemoved",r.EdgeAdded="EdgeAdded",r.EdgeUpdated="EdgeUpdated",r.EdgeRemoved="EdgeRemoved",r.ComboAdded="ComboAdded",r.ComboUpdated="ComboUpdated",r.ComboRemoved="ComboRemoved"})(fr||(fr={}));var ua;(function(r){r.DRAW="draw",r.COLLAPSE="collapse",r.EXPAND="expand",r.TRANSFORM="transform"})(ua||(ua={}));var To;(function(r){r.CLICK="canvas:click",r.DBLCLICK="canvas:dblclick",r.POINTER_OVER="canvas:pointerover",r.POINTER_LEAVE="canvas:pointerleave",r.POINTER_ENTER="canvas:pointerenter",r.POINTER_MOVE="canvas:pointermove",r.POINTER_OUT="canvas:pointerout",r.POINTER_DOWN="canvas:pointerdown",r.POINTER_UP="canvas:pointerup",r.CONTEXT_MENU="canvas:contextmenu",r.DRAG_START="canvas:dragstart",r.DRAG="canvas:drag",r.DRAG_END="canvas:dragend",r.DRAG_ENTER="canvas:dragenter",r.DRAG_OVER="canvas:dragover",r.DRAG_LEAVE="canvas:dragleave",r.DROP="canvas:drop",r.WHEEL="canvas:wheel"})(To||(To={}));var fl;(function(r){r.CLICK="combo:click",r.DBLCLICK="combo:dblclick",r.POINTER_OVER="combo:pointerover",r.POINTER_LEAVE="combo:pointerleave",r.POINTER_ENTER="combo:pointerenter",r.POINTER_MOVE="combo:pointermove",r.POINTER_OUT="combo:pointerout",r.POINTER_DOWN="combo:pointerdown",r.POINTER_UP="combo:pointerup",r.CONTEXT_MENU="combo:contextmenu",r.DRAG_START="combo:dragstart",r.DRAG="combo:drag",r.DRAG_END="combo:dragend",r.DRAG_ENTER="combo:dragenter",r.DRAG_OVER="combo:dragover",r.DRAG_LEAVE="combo:dragleave",r.DROP="combo:drop"})(fl||(fl={}));var Jt;(function(r){r.CLICK="click",r.DBLCLICK="dblclick",r.POINTER_OVER="pointerover",r.POINTER_LEAVE="pointerleave",r.POINTER_ENTER="pointerenter",r.POINTER_MOVE="pointermove",r.POINTER_OUT="pointerout",r.POINTER_DOWN="pointerdown",r.POINTER_UP="pointerup",r.CONTEXT_MENU="contextmenu",r.DRAG_START="dragstart",r.DRAG="drag",r.DRAG_END="dragend",r.DRAG_ENTER="dragenter",r.DRAG_OVER="dragover",r.DRAG_LEAVE="dragleave",r.DROP="drop",r.KEY_DOWN="keydown",r.KEY_UP="keyup",r.WHEEL="wheel",r.PINCH="pinch"})(Jt||(Jt={}));var Fc;(function(r){r.KEY_DOWN="keydown",r.KEY_UP="keyup"})(Fc||(Fc={}));var Cd;(function(r){r.CLICK="edge:click",r.DBLCLICK="edge:dblclick",r.POINTER_OVER="edge:pointerover",r.POINTER_LEAVE="edge:pointerleave",r.POINTER_ENTER="edge:pointerenter",r.POINTER_MOVE="edge:pointermove",r.POINTER_OUT="edge:pointerout",r.POINTER_DOWN="edge:pointerdown",r.POINTER_UP="edge:pointerup",r.CONTEXT_MENU="edge:contextmenu",r.DRAG_ENTER="edge:dragenter",r.DRAG_OVER="edge:dragover",r.DRAG_LEAVE="edge:dragleave",r.DROP="edge:drop"})(Cd||(Cd={}));var ce;(function(r){r.BEFORE_CANVAS_INIT="beforecanvasinit",r.AFTER_CANVAS_INIT="aftercanvasinit",r.BEFORE_SIZE_CHANGE="beforesizechange",r.AFTER_SIZE_CHANGE="aftersizechange",r.BEFORE_ELEMENT_CREATE="beforeelementcreate",r.AFTER_ELEMENT_CREATE="afterelementcreate",r.BEFORE_ELEMENT_UPDATE="beforeelementupdate",r.AFTER_ELEMENT_UPDATE="afterelementupdate",r.BEFORE_ELEMENT_DESTROY="beforeelementdestroy",r.AFTER_ELEMENT_DESTROY="afterelementdestroy",r.BEFORE_ELEMENT_TRANSLATE="beforeelementtranslate",r.AFTER_ELEMENT_TRANSLATE="afterelementtranslate",r.BEFORE_DRAW="beforedraw",r.AFTER_DRAW="afterdraw",r.BEFORE_RENDER="beforerender",r.AFTER_RENDER="afterrender",r.BEFORE_ANIMATE="beforeanimate",r.AFTER_ANIMATE="afteranimate",r.BEFORE_LAYOUT="beforelayout",r.AFTER_LAYOUT="afterlayout",r.BEFORE_STAGE_LAYOUT="beforestagelayout",r.AFTER_STAGE_LAYOUT="afterstagelayout",r.BEFORE_TRANSFORM="beforetransform",r.AFTER_TRANSFORM="aftertransform",r.BATCH_START="batchstart",r.BATCH_END="batchend",r.BEFORE_DESTROY="beforedestroy",r.AFTER_DESTROY="afterdestroy",r.BEFORE_RENDERER_CHANGE="beforerendererchange",r.AFTER_RENDERER_CHANGE="afterrendererchange"})(ce||(ce={}));var dA;(function(r){r.UNDO="undo",r.REDO="redo",r.CANCEL="cancel",r.ADD="add",r.CLEAR="clear",r.CHANGE="change"})(dA||(dA={}));var $a;(function(r){r.CLICK="node:click",r.DBLCLICK="node:dblclick",r.POINTER_OVER="node:pointerover",r.POINTER_LEAVE="node:pointerleave",r.POINTER_ENTER="node:pointerenter",r.POINTER_MOVE="node:pointermove",r.POINTER_OUT="node:pointerout",r.POINTER_DOWN="node:pointerdown",r.POINTER_UP="node:pointerup",r.CONTEXT_MENU="node:contextmenu",r.DRAG_START="node:dragstart",r.DRAG="node:drag",r.DRAG_END="node:dragend",r.DRAG_ENTER="node:dragenter",r.DRAG_OVER="node:dragover",r.DRAG_LEAVE="node:dragleave",r.DROP="node:drop"})($a||($a={}));const nr="combo",Ia="tree";var ah;(function(r){r.NODE="node",r.EDGE="edge",r.COMBO="combo",r.THEME="theme",r.PALETTE="palette",r.LAYOUT="layout",r.BEHAVIOR="behavior",r.PLUGIN="plugin",r.ANIMATION="animation",r.TRANSFORM="transform",r.SHAPE="shape"})(ah||(ah={}));const xm={animation:{},behavior:{},combo:{},edge:{},layout:{},node:{},palette:{},theme:{},plugin:{},transform:{},shape:{}};function Fo(r,t){var e;const n=(e=xm[r])===null||e===void 0?void 0:e[t];if(n)return n}function i5(r){return EXTENSION_REGISTRY[r]}const AO="5.0.50",lO="G6";function Oo(r){return`[${lO} v${AO}] ${r}`}const ha={mute:!1,debug:r=>{!ha.mute&&console.debug(Oo(r))},info:r=>{!ha.mute&&console.info(Oo(r))},warn:r=>{!ha.mute&&console.warn(Oo(r))},error:r=>{!ha.mute&&console.error(Oo(r))}};function nB(r){const{theme:t}=r;if(!t)return{};const e=Fo(ah.THEME,t);return e||(ha.warn(`The theme of ${t} is not registered.`),{})}function Cm(r,t){if(Array.isArray(r)&&r.length===0)return null;const e=Array.isArray(r)?r[0]:r,n=Array.isArray(r)?r.slice(1):t||[];return new Proxy(e,{get(i,a){return typeof i[a]=="function"&&!["onframe","onfinish"].includes(a)?(...s)=>{i[a](...s),n.forEach(o=>{var A;return(A=o[a])===null||A===void 0?void 0:A.call(o,...s)})}:a==="finished"?Promise.all([e.finished,...n.map(s=>s.finished)]):Reflect.get(i,a)},set(i,a,s){return["onframe","onfinish"].includes(a)||n.forEach(o=>{o[a]=s}),Reflect.set(i,a,s)}})}function Sm(r){const t=r.reduce((n,i)=>(Object.entries(i).forEach(([a,s])=>{n[a]===void 0?n[a]=[s]:n[a].push(s)}),n),{});Object.entries(t).forEach(([n,i])=>{(i.length!==r.length||i.some(a=>Pe(a))||i.every(a=>!["sourceNode","targetNode","childrenNode"].includes(n)&&Rr(a,i[0])))&&delete t[n]});const e=Object.entries(t).reduce((n,[i,a])=>(a.forEach((s,o)=>{n[o]?n[o][i]=s:n[o]={[i]:s}}),n),[]);return r.length!==0&&e.length===0&&e.push({_:0},{_:0}),e}function sh(r){switch(r){case"opacity":return 1;case"x":case"y":case"z":case"zIndex":return 0;case"visibility":return"visible";case"collapsed":return!1;case"states":return[];default:return}}function rB(r,t){const{animation:e}=r;if(e===!1||t===!1)return!1;const n=Object.assign({},sO);return Br(e)&&Object.assign(n,e),Br(t)&&Object.assign(n,t),n}function cO(r){if(typeof r=="string"){const t=Fo(ah.ANIMATION,r);return t||(ha.warn(`The animation of ${r} is not registered.`),[])}return r}function uO(r,t,e,n){var i,a;const{animation:s}=r;if(s===!1||n===!1)return[];const o=(i=r==null?void 0:r[t])===null||i===void 0?void 0:i.animation;if(o===!1)return[];const A=o==null?void 0:o[e];if(A===!1)return[];const l=(a=nB(r)[t])===null||a===void 0?void 0:a.animation,c=(h=[])=>cO(h).map(f=>Object.assign(Object.assign(Object.assign(Object.assign({},oO),Br(s)&&s),f),Br(n)&&n));if(A)return c(A);if(!l)return[];const u=l[e];return u===!1?[]:c(u)}function iB(r,t,e,n=[]){if(!n&&r===0&&t===0&&e===0)return null;if(Array.isArray(n)){let a=-1;const s=[];for(let o=0;o<n.length;o++){const A=n[o];if(A[0]==="translate"){if(A[1]===r&&A[2]===t)return null;a=o,s.push(["translate",r,t])}else if(A[0]==="translate3d"){if(A[1]===r&&A[2]===t&&A[3]===e)return null;a=o,s.push(["translate3d",r,t,e!=null?e:0])}else s.push(A)}return a===-1&&s.splice(0,0,we(e)?["translate3d",r,t,e!=null?e:0]:["translate",r,t]),s.length===0?null:s}const i=n?n.replace(/translate(3d)?\([^)]*\)/g,""):"";return e===0?`translate(${r}, ${t})${i}`:`translate3d(${r}, ${t}, ${e})${i}`}var hO=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};const fO=(r,t,e)=>{if(!e.length)return null;const[n,i]=t,a=l=>{var c;if(l){const u=r.getShape(l);if(!u)return null;const h=`get${xd(l)}Style`,f=((c=r==null?void 0:r[h])===null||c===void 0?void 0:c.bind(r))||(v=>v),d=(f==null?void 0:f(n))||{},g=(f==null?void 0:f(i))||{};return{shape:u,fromStyle:d,toStyle:g}}else return{shape:r,fromStyle:n,toStyle:i}};let s;const o=e.map(l=>{var{fields:c,shape:u,states:h}=l,f=hO(l,["fields","shape","states"]);const d=a(u);if(!d)return null;const{shape:g,fromStyle:v,toStyle:y}=d,E=[{},{}];if(c.forEach(I=>{var R,K;Object.assign(E[0],{[I]:(R=v[I])!==null&&R!==void 0?R:sh(I)}),Object.assign(E[1],{[I]:(K=y[I])!==null&&K!==void 0?K:sh(I)})}),E.some(I=>Object.keys(I).some(R=>["x","y","z"].includes(R)))){const{x:I=0,y:R=0,z:K,transform:W=""}=g.attributes||{};E.forEach(V=>{var J,et,at;V.transform=iB((J=V.x)!==null&&J!==void 0?J:I,(et=V.y)!==null&&et!==void 0?et:R,(at=V.z)!==null&&at!==void 0?at:K,W)})}const C=g.animate(Sm(E),f);return u===void 0&&(s=C),C}).filter(Boolean),A=s||(o==null?void 0:o[0]);return A?Cm(A,o.filter(l=>l!==l)):null},dO=[{fields:["opacity"]}],gO=[{fields:["x","y"]}],aB=[{fields:["x","y"]}],vO=aB,sB=[{fields:["sourceNode","targetNode"]}],pO=sB,oB=[{fields:["childrenNode","x","y"]}],mO=oB,a5=[{fields:["childrenNode","x","y"]}];var yO=Object.prototype.hasOwnProperty;function wO(r,t){if(!t||!Ni(r))return{};for(var e={},n=jt(t)?t:function(o){return o[t]},i,a=0;a<r.length;a++){var s=r[a];i=n(s),yO.call(e,i)?e[i].push(s):e[i]=[s]}return e}var Sd=wO,AB=function(r,t,e){var n,i,a,s,o=0;e||(e={});var A=function(){o=e.leading===!1?0:Date.now(),n=null,s=r.apply(i,a),n||(i=a=null)},l=function(){var c=Date.now();!o&&e.leading===!1&&(o=c);var u=t-(c-o);return i=this,a=arguments,u<=0||u>t?(n&&(clearTimeout(n),n=null),o=c,s=r.apply(i,a),n||(i=a=null)):!n&&e.trailing!==!1&&(n=setTimeout(A,u)),s};return l.cancel=function(){clearTimeout(n),o=0,n=i=a=null},l},Mm=function(r){if(typeof r!="object"||r===null)return r;var t;if(Ni(r)){t=[];for(var e=0,n=r.length;e<n;e++)typeof r[e]=="object"&&r[e]!=null?t[e]=Mm(r[e]):t[e]=r[e]}else{t={};for(var i in r)typeof r[i]=="object"&&r[i]!=null?t[i]=Mm(r[i]):t[i]=r[i]}return t},Oc=Mm;function EO(r){return"source"in r&&"target"in r}function BO(r){return r.length===2}function s5(r){return r.length===3}function Ic(r){return r instanceof Float32Array?!0:Array.isArray(r)&&(r.length===2||r.length===3)?r.every(t=>typeof t=="number"):!1}function $s(r,t,e){return r>=t&&r<=e}function La(r=0){if(Array.isArray(r)){const[t=0,e=t,n=t,i=e]=r;return[t,e,n,i]}return[r,r,r,r]}function bO(r=0){const t=La(r);return t[0]+t[2]}function o5(r=0){const t=La(r);return t[1]+t[3]}function to(r){return r.max[0]-r.min[0]}function eo(r){return r.max[1]-r.min[1]}function gA(r){return[to(r),eo(r)]}function vA(r,t){const e=Ic(r)?Tm(r):r.getShape("key").getBounds();return t?pA(e,t):e}function Tm(r){const[t,e,n=0]=r,i=new Yn;return i.setMinMax([t,e,n],[t,e,n]),i}function pA(r,t){const[e,n,i,a]=La(t),[s,o,A]=r.min,[l,c,u]=r.max,h=new Yn;return h.setMinMax([s-a,o-e,A],[l+n,c+i,u]),h}function oh(r){if(r.length===0)return new Yn;if(r.length===1)return r[0];const t=new Yn;t.setMinMax(r[0].min,r[0].max);for(let e=1;e<r.length;e++){const n=r[e];t.setMinMax([Math.min(t.min[0],n.min[0]),Math.min(t.min[1],n.min[1]),Math.min(t.min[2],n.min[2])],[Math.max(t.max[0],n.max[0]),Math.max(t.max[1],n.max[1]),Math.max(t.max[2],n.max[2])])}return t}function xO(r,t){const[e,n]=r.min,[i,a]=r.max,[s,o]=t.min,[A,l]=t.max;return e>=s&&i<=A&&n>=o&&a<=l}function ws(r,t){return $s(r[0],t.min[0],t.max[0])&&$s(r[1],t.min[1],t.max[1])}function lB(r,t,e=!1){const{min:[n,i],max:[a,s]}=t,o=(r[1]===i||r[1]===s)&&(e||$s(r[0],n,a)),A=(r[0]===n||r[0]===a)&&(e||$s(r[1],i,s));return o||A}function CO(r,t){return!ws(r,t)}function Md(r,t){const{center:e}=t;return r[0]===e[0]&&r[1]===e[1]}function Ah(r,t){const[e,n]=r,[i,a]=t.min,[s,o]=t.max,A=e-i,l=s-e,c=n-a,u=o-n,h=Math.min(A,l,c,u);return h===A?"left":h===l?"right":h===c?"top":h===u?"bottom":"left"}function dl(r,t){const e=Oc(r);if(ws(r,t))switch(Ah(r,t)){case"left":e[0]=t.min[0];break;case"right":e[0]=t.max[0];break;case"top":e[1]=t.min[1];break;case"bottom":e[1]=t.max[1];break}else{const[n,i]=r,[a,s]=t.min,[o,A]=t.max;e[0]=$s(n,a,o)?n:n<a?a:o,e[1]=$s(i,s,A)?i:i<s?s:A}return e}function SO(r,t){const{center:e}=r,[n,i]=gA(r),a=t==="up"||t==="down"?e[0]:t==="right"?e[0]-n/6:e[0]+n/6,s=t==="left"||t==="right"?e[1]:t==="down"?e[1]-i/6:e[1]+i/6;return[a,s]}function MO(r,t){let[e,n]=gA(r);return[e,n]=t==="up"||t==="down"?[e,n]:[n,e],(Math.pow(n,2)-Math.pow(Math.sqrt(Math.pow(e/2,2)+Math.pow(n,2))-e/2,2))/(2*n)}function TO(r){const{min:[t,e],max:[n,i]}=r,a=[t,i],s=[n,i],o=[n,e],A=[t,e];return[[a,s],[s,o],[o,A],[A,a]]}var FO=function(t,e){var n=t.nodes,i=t.edges,a=[],s={};if(!n)throw new Error("invalid nodes data!");return n&&n.forEach(function(o,A){s[o.id]=A;var l=[];a.push(l)}),i&&i.forEach(function(o){var A=o.source,l=o.target,c=s[A],u=s[l];!c&&c!==0||!u&&u!==0||(a[c][u]=1,e||(a[u][c]=1))}),a},Td=FO,OO=function(t,e){return t===e},cB=function(){function r(t,e){e===void 0&&(e=null),this.value=t,this.next=e}return r.prototype.toString=function(t){return t?t(this.value):"".concat(this.value)},r}(),IO=function(){function r(t){t===void 0&&(t=OO),this.head=null,this.tail=null,this.compare=t}return r.prototype.prepend=function(t){var e=new cB(t,this.head);return this.head=e,this.tail||(this.tail=e),this},r.prototype.append=function(t){var e=new cB(t);return this.head?(this.tail.next=e,this.tail=e,this):(this.head=e,this.tail=e,this)},r.prototype.delete=function(t){if(!this.head)return null;for(var e=null;this.head&&this.compare(this.head.value,t);)e=this.head,this.head=this.head.next;var n=this.head;if(n!==null)for(;n.next;)this.compare(n.next.value,t)?(e=n.next,n.next=n.next.next):n=n.next;return this.compare(this.tail.value,t)&&(this.tail=n),e},r.prototype.find=function(t){var e=t.value,n=e===void 0?void 0:e,i=t.callback,a=i===void 0?void 0:i;if(!this.head)return null;for(var s=this.head;s;){if(a&&a(s.value)||n!==void 0&&this.compare(s.value,n))return s;s=s.next}return null},r.prototype.deleteTail=function(){var t=this.tail;if(this.head===this.tail)return this.head=null,this.tail=null,t;for(var e=this.head;e.next;)e.next.next?e=e.next:e.next=null;return this.tail=e,t},r.prototype.deleteHead=function(){if(!this.head)return null;var t=this.head;return this.head.next?this.head=this.head.next:(this.head=null,this.tail=null),t},r.prototype.fromArray=function(t){var e=this;return t.forEach(function(n){return e.append(n)}),this},r.prototype.toArray=function(){for(var t=[],e=this.head;e;)t.push(e),e=e.next;return t},r.prototype.reverse=function(){for(var t=this.head,e=null,n=null;t;)n=t.next,t.next=e,e=t,t=n;this.tail=this.head,this.head=e},r.prototype.toString=function(t){return t===void 0&&(t=void 0),this.toArray().map(function(e){return e.toString(t)}).toString()},r}(),uB=IO,LO=function(){function r(){this.linkedList=new uB}return r.prototype.isEmpty=function(){return!this.linkedList.head},r.prototype.peek=function(){return this.linkedList.head?this.linkedList.head.value:null},r.prototype.enqueue=function(t){this.linkedList.append(t)},r.prototype.dequeue=function(){var t=this.linkedList.deleteHead();return t?t.value:null},r.prototype.toString=function(t){return this.linkedList.toString(t)},r}(),NO=LO,ts=function(t,e,n){e===void 0&&(e=[]);var i=e.filter(function(A){return A.source===t||A.target===t});if(n==="target"){var a=function(l){return l.source===t};return i.filter(a).map(function(A){return A.target})}if(n==="source"){var s=function(l){return l.target===t};return i.filter(s).map(function(A){return A.source})}var o=function(l){return l.source===t?l.target:l.source};return i.map(o)},kO=function(t,e){return e.filter(function(n){return n.source===t})},Fd=function(t,e){return e.filter(function(n){return n.source===t||n.target===t})},hB=function(t){t===void 0&&(t=0);var e="".concat(Math.random()).split(".")[1].substr(0,5),n="".concat(Math.random()).split(".")[1].substr(0,5);return"".concat(t,"-").concat(e).concat(n)};function QO(r){r===void 0&&(r={});var t=r,e=function(){},n=function(){var i={};return function(a){var s=a.next,o=s;return i[o]?!1:(i[o]=!0,!0)}}();return t.allowTraversal=r.allowTraversal||n,t.enter=r.enter||e,t.leave=r.leave||e,t}var UO=function(t,e,n,i){i===void 0&&(i=!0);var a=QO(n),s=new NO,o=t.edges,A=o===void 0?[]:o;s.enqueue(e);for(var l="",c=function(){var h=s.dequeue();a.enter({current:h,previous:l}),ts(h,A,i?"target":void 0).forEach(function(f){a.allowTraversal({previous:l,current:h,next:f})&&s.enqueue(f)}),a.leave({current:h,previous:l}),l=h};!s.isEmpty();)c()},PO=UO,DO=function(t){for(var e=t.nodes,n=e===void 0?[]:e,i=t.edges,a=i===void 0?[]:i,s=[],o={},A=[],l=function f(d){A.push(d),o[d.id]=!0;for(var g=ts(d.id,a),v=function(C){var I=g[C];if(!o[I]){var R=n.filter(function(K){return K.id===I});R.length>0&&f(R[0])}},y=0;y<g.length;++y)v(y)},c=0;c<n.length;c++){var u=n[c];if(!o[u.id]){l(u);for(var h=[];A.length>0;)h.push(A.pop());s.push(h)}}return s},fB=function(t){for(var e=t.nodes,n=e===void 0?[]:e,i=t.edges,a=i===void 0?[]:i,s=[],o={},A={},l={},c=[],u=0,h=function v(y){A[y.id]=u,l[y.id]=u,u+=1,s.push(y),o[y.id]=!0;for(var E=ts(y.id,a,"target").filter(function(W){return n.map(function(V){return V.id}).indexOf(W)>-1}),C=function(V){var J=E[V];if(!A[J]&&A[J]!==0){var et=n.filter(function(at){return at.id===J});et.length>0&&v(et[0]),l[y.id]=Math.min(l[y.id],l[J])}else o[J]&&(l[y.id]=Math.min(l[y.id],A[J]))},I=0;I<E.length;I++)C(I);if(l[y.id]===A[y.id]){for(var R=[];s.length>0;){var K=s.pop();if(o[K.id]=!1,R.push(K),K===y)break}R.length>0&&c.push(R)}},f=0,d=n;f<d.length;f++){var g=d[f];!A[g.id]&&A[g.id]!==0&&h(g)}return c};function dB(r,t){return t?fB(r):DO(r)}var lh=function(t){var e={},n=t.nodes,i=n===void 0?[]:n,a=t.edges,s=a===void 0?[]:a;return i.forEach(function(o){e[o.id]={degree:0,inDegree:0,outDegree:0}}),s.forEach(function(o){e[o.source].degree++,e[o.source].outDegree++,e[o.target].degree++,e[o.target].inDegree++}),e},Fm=lh,RO=function(t,e){var n=lh(t);return n[e]?lh(t)[e].inDegree:0},_O=function(t,e){var n=lh(t);return n[e]?lh(t)[e].outDegree:0};function HO(r){r===void 0&&(r={});var t=r,e=function(){},n=function(){var i={};return function(a){var s=a.next;return i[s]?!1:(i[s]=!0,!0)}}();return t.allowTraversal=r.allowTraversal||n,t.enter=r.enter||e,t.leave=r.leave||e,t}function gB(r,t,e,n,i){i===void 0&&(i=!0),n.enter({current:t,previous:e});var a=r.edges,s=a===void 0?[]:a;ts(t,s,i?"target":void 0).forEach(function(o){n.allowTraversal({previous:e,current:t,next:o})&&gB(r,o,t,n,i)}),n.leave({current:t,previous:e})}function vB(r,t,e,n){n===void 0&&(n=!0),gB(r,t,"",HO(e),n)}var GO=function(t){var e=null,n=t.nodes,i=n===void 0?[]:n,a={},s={},o={},A={};i.forEach(function(u){s[u.id]=u});for(var l={enter:function(h){var f=h.current,d=h.previous;if(o[f]){e={};for(var g=f,v=d;v!==f;)e[g]=v,g=v,v=a[v];e[g]=v}else o[f]=f,delete s[f],a[f]=d},leave:function(h){var f=h.current;A[f]=f,delete o[f]},allowTraversal:function(h){var f=h.next;return e?!1:!A[f]}};Object.keys(s).length;){var c=Object.keys(s)[0];vB(t,c,l)}return e},pB=function(t,e,n){var i,a;n===void 0&&(n=!0);for(var s=[],o=dB(t,!1),A=0,l=o;A<l.length;A++){var c=l[A];if(c.length)for(var u=c[0],h=u.id,f=[u],d=(i={},i[h]=u,i),g=(a={},a[h]=new Set,a);f.length>0;)for(var v=f.pop(),y=v.id,E=ts(y,t.edges),C=function(K){var W,V=E[K],J=t.nodes.find(function(Ct){return Ct.id===V});if(V===y)s.push((W={},W[V]=v,W));else if(!(V in g))d[V]=v,f.push(J),g[V]=new Set([v]);else if(!g[y].has(J)){for(var et=!0,at=[J,v],ct=d[y];g[V].size&&!g[V].has(ct)&&(at.push(ct),ct!==d[ct.id]);)ct=d[ct.id];if(at.push(ct),e&&n?(et=!1,at.findIndex(function(Ct){return e.indexOf(Ct.id)>-1})>-1&&(et=!0)):e&&!n&&at.findIndex(function(Ct){return e.indexOf(Ct.id)>-1})>-1&&(et=!1),et){for(var pt={},wt=1;wt<at.length;wt+=1)pt[at[wt-1].id]=at[wt];at.length&&(pt[at[at.length-1].id]=at[0]),s.push(pt)}g[V].add(v)}},I=0;I<E.length;I+=1)C(I)}return s},mB=function(t,e,n){n===void 0&&(n=!0);for(var i=[],a=new Set,s=[],o=[],A={},l={},c=function(ct){for(var pt=[ct];pt.length>0;){var wt=pt.pop();a.has(wt)&&(a.delete(wt),s[wt.id].forEach(function(Ct){pt.push(Ct)}),s[wt.id].clear())}},u=function at(ct,pt,wt){var Ct=!1;if(e&&n===!1&&e.indexOf(ct.id)>-1)return Ct;i.push(ct),a.add(ct);for(var Ht=wt[ct.id],Rt=0;Rt<Ht.length;Rt+=1){var St=A[Ht[Rt]];if(St===pt){for(var Ot={},Gt=1;Gt<i.length;Gt+=1)Ot[i[Gt-1].id]=i[Gt];i.length&&(Ot[i[i.length-1].id]=i[0]),o.push(Ot),Ct=!0}else a.has(St)||at(St,pt,wt)&&(Ct=!0)}if(Ct)c(ct);else for(var Rt=0;Rt<Ht.length;Rt+=1){var St=A[Ht[Rt]];s[St.id].has(ct)||s[St.id].add(ct)}return i.pop(),Ct},h=t.nodes,f=h===void 0?[]:h,d=0;d<f.length;d+=1){var g=f[d],v=g.id;l[v]=d,A[d]=g}if(e&&n)for(var y=function(ct){var pt=e[ct];l[f[ct].id]=l[pt],l[pt]=0,A[0]=f.find(function(wt){return wt.id===pt}),A[l[f[ct].id]]=f[ct]},d=0;d<e.length;d++)y(d);for(var E=function(ct){for(var pt,wt,Ct=1/0,Ht=0;Ht<ct.length;Ht+=1)for(var Rt=ct[Ht],St=0;St<Rt.length;St++){var Ot=l[Rt[St].id];Ot<Ct&&(Ct=Ot,wt=Ht)}for(var Gt=ct[wt],qt=[],Ht=0;Ht<Gt.length;Ht+=1){var ae=Gt[Ht];qt[ae.id]=[];for(var ue=0,pe=ts(ae.id,t.edges,"target").filter(function(Re){return Gt.map(function(nn){return nn.id}).indexOf(Re)>-1});ue<pe.length;ue++){var Ce=pe[ue];Ce===ae.id&&!(n===!1&&e.indexOf(ae.id)>-1)?o.push((pt={},pt[ae.id]=ae,pt)):qt[ae.id].push(l[Ce])}}return{component:Gt,adjList:qt,minIdx:Ct}},C=0;C<f.length;){var I=f.filter(function(at){return l[at.id]>=C}),R=fB({nodes:I,edges:t.edges}).filter(function(at){return at.length>1});if(R.length===0)break;var K=E(R),W=K.minIdx,V=K.adjList,J=K.component;if(J.length>1){J.forEach(function(at){s[at.id]=new Set});var et=A[W];if(e&&n&&e.indexOf(et.id)===-1)return o;u(et,et,V),C=W+1}else break}return o},KO=function(t,e,n,i){return i===void 0&&(i=!0),e?mB(t,n,i):pB(t,n,i)},yB=GO,zO={}.toString,VO=function(r,t){return zO.call(r)==="[object "+t+"]"},Od=VO,Om=function(r){return Od(r,"Function")},Im=function(r){return Array.isArray?Array.isArray(r):Od(r,"Array")},WO=function(r){var t=typeof r;return r!==null&&t==="object"||t==="function"};function ZO(r,t){if(r){var e;if(Im(r))for(var n=0,i=r.length;n<i&&(e=t(r[n],n),e!==!1);n++);else if(WO(r)){for(var a in r)if(r.hasOwnProperty(a)&&(e=t(r[a],a),e===!1))break}}}var wB=ZO,A5=Object.keys?function(r){return Object.keys(r)}:function(r){var t=[];return wB(r,function(e,n){Om(r)&&n==="prototype"||t.push(n)}),t},l5=null;function c5(r,t){var e=keys(t),n=e.length;if(isNil(r))return!n;for(var i=0;i<n;i+=1){var a=e[i];if(t[a]!==r[a]||!(a in r))return!1}return!0}var u5=null,h5=function(r){if(!isObjectLike(r)||!isType(r,"Object"))return!1;if(Object.getPrototypeOf(r)===null)return!0;for(var t=r;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(r)===t},f5=null;function d5(r,t){if(!isArray(r))return null;var e;if(isFunction(t)&&(e=t),isPlainObject(t)&&(e=function(i){return isMatch(i,t)}),e){for(var n=0;n<r.length;n+=1)if(e(r[n]))return r[n]}return null}var g5=null,v5=function(r,t){for(var e=null,n=0;n<r.length;n++){var i=r[n],a=i[t];if(!isNil(a)){isArray(a)?e=a[0]:e=a;break}}return e},p5=null,m5=function(r){if(!isArray(r))return[];for(var t=[],e=0;e<r.length;e++)t=t.concat(r[e]);return t},y5=null,jO=function(r,t){if(t===void 0&&(t=[]),!isArray(r))t.push(r);else for(var e=0;e<r.length;e+=1)jO(r[e],t);return t},w5=null,E5=function(r){if(isArray(r))return r.reduce(function(t,e){return Math.max(t,e)},r[0])},B5=function(r){if(isArray(r))return r.reduce(function(t,e){return Math.min(t,e)},r[0])},b5=function(r){var t=r.filter(function(s){return!isNaN(s)});if(!t.length)return{min:0,max:0};if(isArray(r[0])){for(var e=[],n=0;n<r.length;n++)e=e.concat(r[n]);t=e}var i=getMax(t),a=getMin(t);return{min:a,max:i}},x5=null,EB=Array.prototype,YO=EB.splice,XO=EB.indexOf,C5=function(r){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];for(var n=0;n<t.length;n++)for(var i=t[n],a=-1;(a=XO.call(r,i))>-1;)YO.call(r,a,1);return r},S5=null,JO=Array.prototype.splice,M5=function(t,e){if(!isArrayLike(t))return[];for(var n=t?e.length:0,i=n-1;n--;){var a=void 0,s=e[n];(n===i||s!==a)&&(a=s,JO.call(t,s,1))}return t},T5=null,F5=function(r,t,e){if(!isArray(r)&&!isPlainObject(r))return r;var n=e;return each(r,function(i,a){n=t(n,i,a)}),n},O5=null,I5=function(r,t){var e=[];if(!isArrayLike(r))return e;for(var n=-1,i=[],a=r.length;++n<a;){var s=r[n];t(s,n,r)&&(e.push(s),i.push(n))}return pullAt(r,i),e},L5=null,Lm=function(r){return Od(r,"String")};function N5(r,t){var e;if(isFunction(t))e=function(i,a){return t(i)-t(a)};else{var n=[];isString(t)?n.push(t):isArray(t)&&(n=t),e=function(i,a){for(var s=0;s<n.length;s+=1){var o=n[s];if(i[o]>a[o])return 1;if(i[o]<a[o])return-1}return 0}}return r.sort(e),r}var k5=null;function Nm(r,t){t===void 0&&(t=new Map);var e=[];if(Array.isArray(r))for(var n=0,i=r.length;n<i;n++){var a=r[n];t.has(a)||(e.push(a),t.set(a,!0))}return e}var Q5=function(r,t){for(var e=[],n={},i=0;i<r.length;i++){var a=r[i],s=a[t];if(!isNil(s)){isArray(s)||(s=[s]);for(var o=0;o<s.length;o++){var A=s[o];n[A]||(e.push(A),n[A]=!0)}}}return e};function U5(r,t){return isArray(r)||isString(r)?r[0]===t:!1}var P5=null;function D5(r,t){return isArray(r)||isString(r)?r[r.length-1]===t:!1}var R5=null,qO=Object.prototype.hasOwnProperty;function _5(r,t){if(!t||!isArray(r))return{};for(var e={},n=isFunction(t)?t:function(o){return o[t]},i,a=0;a<r.length;a++){var s=r[a];i=n(s),qO.call(e,i)?e[i].push(s):e[i]=[s]}return e}var H5=null;function G5(r,t){if(!t)return{0:r};if(!isFunction(t)){var e=isArray(t)?t:t.replace(/\s+/g,"").split("*");t=function(n){for(var i="_",a=0,s=e.length;a<s;a++)i+=n[e[a]]&&n[e[a]].toString();return i}}return groupBy(r,t)}var K5=function(r,t){if(!t)return[r];var e=groupToMap(r,t),n=[];for(var i in e)n.push(e[i]);return n},BB={};function z5(r){var t=BB[r];if(!t){for(var e=r.toString(16),n=e.length;n<6;n++)e="0"+e;t="#"+e,BB[r]=t}return t}var V5=null;function W5(r){var t=0,e=0,n=0,i=0;return isArray(r)?r.length===1?t=e=n=i=r[0]:r.length===2?(t=n=r[0],e=i=r[1]):r.length===3?(t=r[0],e=i=r[1],n=r[2]):(t=r[0],e=r[1],n=r[2],i=r[3]):t=e=n=i=r,{r1:t,r2:e,r3:n,r4:i}}var Z5=null,$O=function(r){return Od(r,"Number")},tI=$O,j5=function(r){return isNumber(r)&&r%1!==0},Y5=null,X5=function(r){return isNumber(r)&&r%2===0},J5=null,q5=Number.isInteger?Number.isInteger:function(r){return tI(r)&&r%1===0},$5=null,t8=function(r){return isNumber(r)&&r<0},e8=null,n8=function(r){return isNumber(r)&&r%2!==0},r8=null,i8=function(r){return isNumber(r)&&r>0},a8=null,s8=function(r,t){if(isArray(r)){for(var e,n=-1/0,i=0;i<r.length;i++){var a=r[i],s=isFunction(t)?t(a):a[t];s>n&&(e=a,n=s)}return e}},o8=function(r,t){if(isArray(r)){for(var e,n=1/0,i=0;i<r.length;i++){var a=r[i],s=isFunction(t)?t(a):a[t];s<n&&(e=a,n=s)}return e}},eI=180/Math.PI,A8=function(r){return eI*r},l8=null,nI=Math.PI/180,c8=function(r){return nI*r},u8=null,h8=null,rI=Object.values?function(r){return Object.values(r)}:function(r){var t=[];return wB(r,function(e,n){Om(r)&&n==="prototype"||t.push(e)}),t},iI=rI,f8=function(r,t){return contains(values(r),t)},aI={}.toString,d8=function(r){return aI.call(r).replace(/^\[object /,"").replace(/]$/,"")},g8=null,v8=function(r){return isType(r,"Arguments")},p8=null,m8=function(r){return isType(r,"Boolean")},y8=null,w8=function(r){return isType(r,"Date")},E8=null,B8=function(r){return isType(r,"Error")},b8=null;function x8(r){return isNumber(r)&&isFinite(r)}var sI=Object.prototype,C8=function(r){var t=r&&r.constructor,e=typeof t=="function"&&t.prototype||sI;return r===e},S8=null,M8=function(r){return isType(r,"RegExp")},T8=null,F8=function(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t];for(var e=r[0],n=1;n<r.length;n++){var i=r[n];isFunction(i)&&(i=i.prototype),mix(e.prototype,i)}},O8=null,km=function(r){if(typeof r!="object"||r===null)return r;var t;if(Im(r)){t=[];for(var e=0,n=r.length;e<n;e++)typeof r[e]=="object"&&r[e]!=null?t[e]=km(r[e]):t[e]=r[e]}else{t={};for(var i in r)typeof r[i]=="object"&&r[i]!=null?t[i]=km(r[i]):t[i]=r[i]}return t},ch=km,oI=function(r,t){if(!Om(r))throw new TypeError("Expected a function");var e=function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var a=t?t.apply(this,n):n[0],s=e.cache;if(s.has(a))return s.get(a);var o=r.apply(this,n);return s.set(a,o),o};return e.cache=new Map,e},AI=5;function bB(r,t,e,n){e=e||0,n=n||AI;for(var i in t)if(t.hasOwnProperty(i)){var a=t[i];a!==null&&isPlainObject(a)?(isPlainObject(r[i])||(r[i]={}),e<n?bB(r[i],a,e+1,n):r[i]=t[i]):isArray(a)?(r[i]=[],r[i]=r[i].concat(a)):a!==void 0&&(r[i]=a)}}var I8=function(r){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];for(var n=0;n<t.length;n+=1)bB(r,t[n]);return r},L8=null,N8=function(r,t,e,n){isFunction(t)||(e=t,t=r,r=function(){});var i=Object.create?function(s,o){return Object.create(s,{constructor:{value:o}})}:function(s,o){function A(){}A.prototype=s;var l=new A;return l.constructor=o,l},a=i(t.prototype,r);return r.prototype=mix(a,r.prototype),r.superclass=i(t.prototype,t),mix(a,e),mix(r,n),r},k8=null,lI=Object.prototype.hasOwnProperty;function Q8(r){if(isNil(r))return!0;if(isArrayLike(r))return!r.length;var t=getType(r);if(t==="Map"||t==="Set")return!r.size;if(isPrototype(r))return!Object.keys(r).length;for(var e in r)if(lI.call(r,e))return!1;return!0}var U8=null,cI=function(r){return typeof r=="object"&&r!==null},xB=cI,uI=function(r){return r!==null&&typeof r!="function"&&isFinite(r.length)},CB=uI,Qm=function(r,t){if(r===t)return!0;if(!r||!t||Lm(r)||Lm(t))return!1;if(CB(r)||CB(t)){if(r.length!==t.length)return!1;for(var e=!0,n=0;n<r.length&&(e=Qm(r[n],t[n]),!!e);n++);return e}if(xB(r)||xB(t)){var i=Object.keys(r),a=Object.keys(t);if(i.length!==a.length)return!1;for(var e=!0,n=0;n<i.length&&(e=Qm(r[i[n]],t[i[n]]),!!e);n++);return e}return!1},hI=Qm,P8=function(r,t,e){return isFunction(e)?!!e(r,t):isEqual(r,t)},D8=function(r,t,e){for(var n=0,i=isString(t)?t.split("."):t;r&&n<i.length;)r=r[i[n++]];return r===void 0||n<i.length?e:r},R8=function(r,t,e){var n=r,i=isString(t)?t.split("."):t;return i.forEach(function(a,s){s<i.length-1?(isObject(n[a])||(n[a]=isNumber(i[s+1])?[]:{}),n=n[a]):n[a]=e}),r},fI=Object.prototype.hasOwnProperty,_8=function(r,t){if(r===null||!isPlainObject(r))return{};var e={};return each(t,function(n){fI.call(r,n)&&(e[n]=r[n])}),e},H8=function(r,t){return reduce(r,function(e,n,i){return t.includes(i)||(e[i]=n),e},{})},Id={},G8=function(r){return r=r||"g",Id[r]?Id[r]+=1:Id[r]=1,r+Id[r]},Ld,K8=oI(function(r,t){t===void 0&&(t={});var e=t.fontSize,n=t.fontFamily,i=t.fontWeight,a=t.fontStyle,s=t.fontVariant;return Ld||(Ld=document.createElement("canvas").getContext("2d")),Ld.font=[a,s,i,e+"px",n].join(" "),Ld.measureText(Lm(r)?r:"").width},function(r,t){return t===void 0&&(t={}),(0,j.pr)([r],iI(t)).join("")}),z8=function(r,t,e,n){n===void 0&&(n="...");var i=16,a=measureTextWidth(n,e),s=isString(r)?r:toString(r),o=t,A=[],l,c;if(measureTextWidth(r,e)<=t)return r;for(;l=s.substr(0,i),c=measureTextWidth(l,e),!(c+a>o&&c>o);)if(A.push(l),o-=c,s=s.substr(i),!s)return A.join("");for(;l=s.substr(0,1),c=measureTextWidth(l,e),!(c+a>o);)if(A.push(l),o-=c,s=s.substr(1),!s)return A.join("");return""+A.join("")+n},V8=function(){function r(){this.map={}}return r.prototype.has=function(t){return this.map[t]!==void 0},r.prototype.get=function(t,e){var n=this.map[t];return n===void 0?e:n},r.prototype.set=function(t,e){this.map[t]=e},r.prototype.clear=function(){this.map={}},r.prototype.delete=function(t){delete this.map[t]},r.prototype.size=function(){return Object.keys(this.map).length},r}(),W8=null,dI=function(t,e,n){for(var i=1/0,a,s=0;s<e.length;s++){var o=e[s].id;!n[o]&&t[o]<=i&&(i=t[o],a=e[s])}return a},gI=function(t,e,n,i){var a=t.nodes,s=a===void 0?[]:a,o=t.edges,A=o===void 0?[]:o,l=[],c={},u={},h={};s.forEach(function(C,I){var R=C.id;l.push(R),u[R]=1/0,R===e&&(u[R]=0)});for(var f=s.length,d=function(I){var R=dI(u,s,c),K=R.id;if(c[K]=!0,u[K]===1/0)return"continue";var W=[];n?W=kO(K,A):W=Fd(K,A),W.forEach(function(V){var J=V.target,et=V.source,at=J===K?et:J,ct=i&&V[i]?V[i]:1;u[at]>u[R.id]+ct?(u[at]=u[R.id]+ct,h[at]=[R.id]):u[at]===u[R.id]+ct&&h[at].push(R.id)})},g=0;g<f;g++)d(g);h[e]=[e];var v={};for(var y in u)u[y]!==1/0&&SB(e,y,h,v);var E={};for(var y in v)E[y]=v[y][0];return{length:u,path:E,allPath:v}},Nd=gI;function SB(r,t,e,n){if(r===t)return[r];if(n[t])return n[t];for(var i=[],a=0,s=e[t];a<s.length;a++){var o=s[a],A=SB(r,o,e,n);if(!A)return;for(var l=0,c=A;l<c.length;l++){var u=c[l];Im(u)?i.push((0,j.ev)((0,j.ev)([],u,!0),[t],!1)):i.push([u,t])}}return n[t]=i,n[t]}var Um=function(t,e,n,i,a){var s=Nd(t,e,i,a),o=s.length,A=s.path,l=s.allPath;return{length:o[n],path:A[n],allPath:l[n]}},vI=function(t,e,n,i){var a;if(e===n)return[[e]];var s=t.edges,o=s===void 0?[]:s,A=[e],l=(a={},a[e]=!0,a),c=[],u=[],h=i?ts(e,o,"target"):ts(e,o);for(c.push(h);A.length>0&&c.length>0;){var f=c[c.length-1];if(f.length){var d=f.shift();d&&(A.push(d),l[d]=!0,h=i?ts(d,o,"target"):ts(d,o),c.push(h.filter(function(y){return!l[y]})))}else{var g=A.pop();l[g]=!1,c.pop();continue}if(A[A.length-1]===n){var v=A.map(function(E){return E});u.push(v);var g=A.pop();l[g]=!1,c.pop()}}return u},pI=function(t,e){for(var n=Td(t,e),i=[],a=n.length,s=0;s<a;s+=1){i[s]=[];for(var o=0;o<a;o+=1)s===o?i[s][o]=0:n[s][o]===0||!n[s][o]?i[s][o]=1/0:i[s][o]=n[s][o]}for(var A=0;A<a;A+=1)for(var s=0;s<a;s+=1)for(var o=0;o<a;o+=1)i[s][o]>i[s][A]+i[A][o]&&(i[s][o]=i[s][A]+i[A][o]);return i},Pm=pI,mI=function(t,e,n,i){e===void 0&&(e=!1),n===void 0&&(n="weight"),i===void 0&&(i=1e3);var a=t.nodes,s=a===void 0?[]:a,o=t.edges,A=o===void 0?[]:o,l={},c={};s.forEach(function(I,R){var K=hB();I.clusterId=K,l[K]={id:K,nodes:[I]},c[I.id]={node:I,idx:R}});var u=Td(t,e),h=[],f={};u.forEach(function(I,R){var K=0,W=s[R].id;f[W]={},I.forEach(function(V,J){if(V){K+=V;var et=s[J].id;f[W][et]=V}}),h.push(K)});for(var d=0,g=function(){var R=!1;if(s.forEach(function(K){var W={};Object.keys(f[K.id]).forEach(function(Ct){var Ht=f[K.id][Ct],Rt=c[Ct].node,St=Rt.clusterId;W[St]||(W[St]=0),W[St]+=Ht});var V=-1/0,J=[];if(Object.keys(W).forEach(function(Ct){V<W[Ct]?(V=W[Ct],J=[Ct]):V===W[Ct]&&J.push(Ct)}),!(J.length===1&&J[0]===K.clusterId)){var et=J.indexOf(K.clusterId);if(et>=0&&J.splice(et,1),J&&J.length){R=!0;var at=l[K.clusterId],ct=at.nodes.indexOf(K);at.nodes.splice(ct,1);var pt=Math.floor(Math.random()*J.length),wt=l[J[pt]];wt.nodes.push(K),K.clusterId=wt.id}}}),!R)return"break";d++};d<i;){var v=g();if(v==="break")break}Object.keys(l).forEach(function(I){var R=l[I];(!R.nodes||!R.nodes.length)&&delete l[I]});var y=[],E={};A.forEach(function(I){var R=I.source,K=I.target,W=I[n]||1,V=c[R].node.clusterId,J=c[K].node.clusterId,et="".concat(V,"---").concat(J);if(E[et])E[et].weight+=W,E[et].count++;else{var at={source:V,target:J,weight:W,count:1};E[et]=at,y.push(at)}});var C=[];return Object.keys(l).forEach(function(I){C.push(l[I])}),{clusters:C,clusterEdges:y}},yI=mI,wI=function(){function r(t){this.arr=t}return r.prototype.getArr=function(){return this.arr||[]},r.prototype.add=function(t){var e,n=t.arr;if(!(!((e=this.arr)===null||e===void 0)&&e.length))return new r(n);if(!(n!=null&&n.length))return new r(this.arr);if(this.arr.length===n.length){var i=[];for(var a in this.arr)i[a]=this.arr[a]+n[a];return new r(i)}},r.prototype.subtract=function(t){var e,n=t.arr;if(!(!((e=this.arr)===null||e===void 0)&&e.length))return new r(n);if(!(n!=null&&n.length))return new r(this.arr);if(this.arr.length===n.length){var i=[];for(var a in this.arr)i[a]=this.arr[a]-n[a];return new r(i)}},r.prototype.avg=function(t){var e=[];if(t!==0)for(var n in this.arr)e[n]=this.arr[n]/t;return new r(e)},r.prototype.negate=function(){var t=[];for(var e in this.arr)t[e]=-this.arr[e];return new r(t)},r.prototype.squareEuclideanDistance=function(t){var e,n=t.arr;if(!(!((e=this.arr)===null||e===void 0)&&e.length)||!(n!=null&&n.length))return 0;if(this.arr.length===n.length){var i=0;for(var a in this.arr)i+=Math.pow(this.arr[a]-t.arr[a],2);return i}},r.prototype.euclideanDistance=function(t){var e,n=t.arr;if(!(!((e=this.arr)===null||e===void 0)&&e.length)||!(n!=null&&n.length))return 0;if(this.arr.length===n.length){var i=0;for(var a in this.arr)i+=Math.pow(this.arr[a]-t.arr[a],2);return Math.sqrt(i)}else console.error("The two vectors are unequal in length.")},r.prototype.normalize=function(){var t=[],e=ch(this.arr);e.sort(function(s,o){return s-o});var n=e[e.length-1],i=e[0];for(var a in this.arr)t[a]=(this.arr[a]-i)/(n-i);return new r(t)},r.prototype.norm2=function(){var t;if(!(!((t=this.arr)===null||t===void 0)&&t.length))return 0;var e=0;for(var n in this.arr)e+=Math.pow(this.arr[n],2);return Math.sqrt(e)},r.prototype.dot=function(t){var e,n=t.arr;if(!(!((e=this.arr)===null||e===void 0)&&e.length)||!(n!=null&&n.length))return 0;if(this.arr.length===n.length){var i=0;for(var a in this.arr)i+=this.arr[a]*t.arr[a];return i}else console.error("The two vectors are unequal in length.")},r.prototype.equal=function(t){var e,n=t.arr;if(((e=this.arr)===null||e===void 0?void 0:e.length)!==(n==null?void 0:n.length))return!1;for(var i in this.arr)if(this.arr[i]!==n[i])return!1;return!0},r}(),es=wI,EI=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/,BI=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/,MB=function(t,e){t===void 0&&(t=[]),e===void 0&&(e=100);var n={};t.forEach(function(a){a.properties&&Object.keys(a.properties).forEach(function(s){if(s==="id"||!"".concat(a.properties[s]).match(EI)&&!"".concat(a.properties[s]).match(BI)&&isNaN(Number(a.properties[s]))){n.hasOwnProperty(s)&&delete n[s];return}n.hasOwnProperty(s)?n[s]+=1:n[s]=1})});var i=Object.keys(n).sort(function(a,s){return n[s]-n[a]});return i.length<e?i:i.slice(0,e)},bI=function(t,e){return e.map(function(n){return t.hasOwnProperty(n)?t[n]:0})},xI=function(t){for(var e=MB(t),n=[],i=0;i<t.length;i++)n[i]=bI(t[i].properties,e);return n},kd=function(t,e){e===void 0&&(e=void 0);var n=[];return t.forEach(function(i){e===void 0&&n.push(i),i[e]!==void 0&&n.push(i[e])}),n},Z8={getAllSortProperties:MB,getPropertyWeight:xI,getAllProperties:kd},Es;(function(r){r.EuclideanDistance="euclideanDistance"})(Es||(Es={}));var TB=function(t,e,n){var i=[];e!=null&&e.length?i=e:(t.forEach(function(s){i=i.concat(Object.keys(s))}),i=Nm(i));var a={};return i.forEach(function(s){var o=[];t.forEach(function(A){A[s]!==void 0&&A[s]!==""&&o.push(A[s])}),o.length&&!(n!=null&&n.includes(s))&&(a[s]=Nm(o))}),a},Qd=function(t,e,n){var i=TB(t,e,n),a=[];if(!Object.keys(i).length)return a;var s=Object.values(i),o=s.every(function(A){return A.every(function(l){return typeof l=="number"})});return t.forEach(function(A,l){var c=[];Object.keys(i).forEach(function(u){var h=A[u],f=i[u],d=f.findIndex(function(y){return h===y}),g=[];if(o)g.push(h);else for(var v=0;v<f.length;v++)v===d?g.push(1):g.push(0);c=c.concat(g)}),a[l]=c}),a},Dm=function(t,e,n,i){n===void 0&&(n=Es.EuclideanDistance);var a=0;switch(n){case Es.EuclideanDistance:a=new es(t).euclideanDistance(new es(e));break;default:break}return a},j8={getAllKeyValueMap:TB,oneHot:Qd,getDistance:Dm},FB=function(t,e,n,i){for(var a=e.length,s=2*i,o=0,A=0;A<a;A++)for(var l=t[A].clusterId,c=0;c<a;c++){var u=t[c].clusterId;if(l===u){var h=e[A][c]||0,f=n[A]||0,d=n[c]||0;o+=h-f*d/s}}return o*=1/s,o},Rm=function(t,e){t===void 0&&(t=[]);for(var n=t.length,i=new es([]),a=0;a<n;a++)i=i.add(new es(e[a]));var s=i.avg(n);s.normalize();for(var o=0,a=0;a<n;a++){var A=new es(e[a]),l=A.squareEuclideanDistance(s);o+=l}var c=[];t.forEach(function(){c.push([])});for(var a=0;a<n;a++){var A=new es(e[a]);t[a].clusterInertial=0;for(var u=0;u<n;u++){if(a===u){c[a][u]=0;continue}var h=new es(e[u]);c[a][u]=A.squareEuclideanDistance(h),t[a].clusterInertial+=c[a][u]}}for(var f=0,d=2*n*o,a=0;a<n;a++)for(var g=t[a].clusterId,u=0;u<n;u++){var v=t[u].clusterId;if(!(a===u||g!==v)){var y=t[a].clusterInertial*t[u].clusterInertial/Math.pow(d,2)-c[a][u]/d;f+=y}}return Number(f.toFixed(4))},CI=function(t,e,n,i,a,s,o,A,l){e===void 0&&(e=!1),n===void 0&&(n="weight"),i===void 0&&(i=1e-4),a===void 0&&(a=!1),s===void 0&&(s=void 0),o===void 0&&(o=[]),A===void 0&&(A=["id"]),l===void 0&&(l=1);var c=t.nodes,u=c===void 0?[]:c,h=t.edges,f=h===void 0?[]:h,d=[];if(a){u.forEach(function(Ot,Gt){Ot.properties=Ot.properties||{},Ot.originIndex=Gt});var g=[];u.every(function(Ot){return Ot.hasOwnProperty("nodeType")})&&(g=Array.from(new Set(u.map(function(Ot){return Ot.nodeType}))),u.forEach(function(Ot){Ot.properties.nodeType=g.findIndex(function(Gt){return Gt===Ot.nodeType})}));var v=kd(u,s);d=Qd(v,o,A)}var y=1,E={},C={};u.forEach(function(Ot,Gt){var qt=String(y++);Ot.clusterId=qt,E[qt]={id:qt,nodes:[Ot]},C[Ot.id]={node:Ot,idx:Gt}});var I=Td(t,e),R=[],K={},W=0;I.forEach(function(Ot,Gt){var qt=0,ae=u[Gt].id;K[ae]={},Ot.forEach(function(ue,pe){if(ue){qt+=ue;var Ce=u[pe].id;K[ae][Ce]=ue,W+=ue}}),R.push(qt)}),W/=2;for(var V=1/0,J=1/0,et=0,at=[],ct={};;){a&&u.every(function(Ot){return Ot.hasOwnProperty("properties")})?V=FB(u,I,R,W)+Rm(u,d)*l:V=FB(u,I,R,W),et===0&&(J=V,at=u,ct=E);var pt=V>0&&V>J&&V-J<i;if(V>J&&(at=u.map(function(Ot){return{node:Ot,clusterId:Ot.clusterId}}),ct=ch(E),J=V),pt||et>100)break;et++,Object.keys(E).forEach(function(Ot){var Gt=0;f.forEach(function(qt){var ae=qt.source,ue=qt.target,pe=C[ae].node.clusterId,Ce=C[ue].node.clusterId;(pe===Ot&&Ce!==Ot||Ce===Ot&&pe!==Ot)&&(Gt=Gt+(qt[n]||1))}),E[Ot].sumTot=Gt}),u.forEach(function(Ot,Gt){var qt=E[Ot.clusterId],ae=0,ue,pe=R[Gt]/(2*W),Ce=0,Qe=qt.nodes;Qe.forEach(function(Gn){var Bn=C[Gn.id].idx;Ce+=I[Gt][Bn]||0});var Re=Ce-qt.sumTot*pe,nn=Qe.filter(function(Gn){return Gn.id!==Ot.id}),mn=[];nn.forEach(function(Gn,Bn){mn[Bn]=d[Gn.originIndex]});var on=Rm(nn,d)*l,er=K[Ot.id];if(Object.keys(er).forEach(function(Gn){var Bn=C[Gn].node,Ls=Bn.clusterId;if(Ls!==Ot.clusterId){var ui=E[Ls],Ki=ui.nodes;if(!(!Ki||!Ki.length)){var un=0;Ki.forEach(function(Fn){var En=C[Fn.id].idx;un+=I[Gt][En]||0});var Tn=un-ui.sumTot*pe,fn=Ki.concat([Ot]),Sn=[];fn.forEach(function(Fn,En){Sn[En]=d[Fn.originIndex]});var Pn=Rm(fn,d)*l,ke=Tn-Re;a&&(ke=Tn+Pn-(Re+on)),ke>ae&&(ae=ke,ue=ui)}}}),ae>0){ue.nodes.push(Ot);var kn=Ot.clusterId;Ot.clusterId=ue.id;var Cn=qt.nodes.indexOf(Ot);qt.nodes.splice(Cn,1);var gr=0,va=0;f.forEach(function(Gn){var Bn=Gn.source,Ls=Gn.target,ui=C[Bn].node.clusterId,Ki=C[Ls].node.clusterId;(ui===ue.id&&Ki!==ue.id||Ki===ue.id&&ui!==ue.id)&&(gr=gr+(Gn[n]||1)),(ui===kn&&Ki!==kn||Ki===kn&&ui!==kn)&&(va=va+(Gn[n]||1))}),ue.sumTot=gr,qt.sumTot=va}})}var wt={},Ct=0;Object.keys(ct).forEach(function(Ot){var Gt=ct[Ot];if(!Gt.nodes||!Gt.nodes.length){delete ct[Ot];return}var qt=String(Ct+1);qt!==Ot&&(Gt.id=qt,Gt.nodes=Gt.nodes.map(function(ae){return{id:ae.id,clusterId:qt}}),ct[qt]=Gt,wt[Ot]=qt,delete ct[Ot],Ct++)}),at.forEach(function(Ot){var Gt=Ot.node,qt=Ot.clusterId;Gt&&(Gt.clusterId=qt,Gt.clusterId&&wt[Gt.clusterId]&&(Gt.clusterId=wt[Gt.clusterId]))});var Ht=[],Rt={};f.forEach(function(Ot){var Gt=Ot.source,qt=Ot.target,ae=Ot[n]||1,ue=C[Gt].node.clusterId,pe=C[qt].node.clusterId;if(!(!ue||!pe)){var Ce="".concat(ue,"---").concat(pe);if(Rt[Ce])Rt[Ce].weight+=ae,Rt[Ce].count++;else{var Qe={source:ue,target:pe,weight:ae,count:1};Rt[Ce]=Qe,Ht.push(Qe)}}});var St=[];return Object.keys(ct).forEach(function(Ot){St.push(ct[Ot])}),{clusters:St,clusterEdges:Ht}},OB=CI,SI=function(t,e,n,i,a,s,o,A){return e===void 0&&(e=!1),n===void 0&&(n="weight"),i===void 0&&(i=1e-4),a===void 0&&(a=void 0),s===void 0&&(s=[]),o===void 0&&(o=["id"]),A===void 0&&(A=1),OB(t,e,n,i,!0,a,s,o,A)},MI=SI,TI=function(t,e){var n;e===void 0&&(e=1);for(var i=ch(t),a=i.nodes,s=a===void 0?[]:a,o=i.edges,A=o===void 0?[]:o,l=function(){var h=Fm({nodes:s,edges:A}),f=Object.keys(h);f.sort(function(v,y){var E,C;return((E=h[v])===null||E===void 0?void 0:E.degree)-((C=h[y])===null||C===void 0?void 0:C.degree)});var d=f[0];if(!s.length||((n=h[d])===null||n===void 0?void 0:n.degree)>=e)return"break";var g=s.findIndex(function(v){return v.id===d});s.splice(g,1),A=A.filter(function(v){return!(v.source===d||v.target===d)})};;){var c=l();if(c==="break")break}return{nodes:s,edges:A}},FI=TI,IB=function(t,e,n){var i=[];switch(t){case Es.EuclideanDistance:i=e[n];break;default:i=[];break}return i},OI=function(t,e,n,i,a,s){e===void 0&&(e=3),n===void 0&&(n=void 0),i===void 0&&(i=[]),a===void 0&&(a=["id"]),s===void 0&&(s=Es.EuclideanDistance);var o=t.nodes,A=o===void 0?[]:o,l=t.edges,c=l===void 0?[]:l,u={clusters:[{id:"0",nodes:A}],clusterEdges:[]};if(s===Es.EuclideanDistance&&!A.every(function(qt){return qt.hasOwnProperty(n)}))return u;var h=[],f=[];if(s===Es.EuclideanDistance&&(h=kd(A,n),f=Qd(h,i,a)),!f.length)return u;for(var d=Nm(f.map(function(qt){return qt.join("")})),g=Math.min(e,A.length,d.length),v=0;v<A.length;v++)A[v].originIndex=v;for(var y=[],E=[],C=[],v=0;v<g;v++)if(v===0){var I=Math.floor(Math.random()*A.length);switch(s){case Es.EuclideanDistance:y[v]=f[I];break;default:y[v]=[];break}E.push(I),C[v]=[A[I]],A[I].clusterId=String(v)}else{for(var R=-1/0,K=0,W=function(ue){if(!E.includes(ue)){for(var pe=0,Ce=0;Ce<y.length;Ce++){var Qe=0;switch(s){case Es.EuclideanDistance:Qe=Dm(f[A[ue].originIndex],y[Ce],s);break;default:break}pe+=Qe}var Re=pe/y.length;Re>R&&!y.find(function(nn){return hI(nn,IB(s,f,A[ue].originIndex))})&&(R=Re,K=ue)}},V=0;V<A.length;V++)W(V);y[v]=IB(s,f,K),E.push(K),C[v]=[A[K]],A[K].clusterId=String(v)}for(var J=0;;){for(var v=0;v<A.length;v++){var et=0,at=1/0;if(!(J===0&&E.includes(v))){for(var ct=0;ct<y.length;ct++){var pt=0;switch(s){case Es.EuclideanDistance:pt=Dm(f[v],y[ct],s);break;default:break}pt<at&&(at=pt,et=ct)}if(A[v].clusterId!==void 0)for(var wt=C[Number(A[v].clusterId)].length-1;wt>=0;wt--)C[Number(A[v].clusterId)][wt].id===A[v].id&&C[Number(A[v].clusterId)].splice(wt,1);A[v].clusterId=String(et),C[et].push(A[v])}}for(var Ct=!1,v=0;v<C.length;v++){for(var Ht=C[v],Rt=new es([]),ct=0;ct<Ht.length;ct++)Rt=Rt.add(new es(f[Ht[ct].originIndex]));var St=Rt.avg(Ht.length);St.equal(new es(y[v]))||(Ct=!0,y[v]=St.getArr())}if(J++,A.every(function(qt){return qt.clusterId!==void 0})&&Ct||J>=1e3)break}var Ot=[],Gt={};return c.forEach(function(qt){var ae,ue,pe=qt.source,Ce=qt.target,Qe=(ae=A.find(function(on){return on.id===pe}))===null||ae===void 0?void 0:ae.clusterId,Re=(ue=A.find(function(on){return on.id===Ce}))===null||ue===void 0?void 0:ue.clusterId,nn="".concat(Qe,"---").concat(Re);if(Gt[nn])Gt[nn].count++;else{var mn={source:Qe,target:Re,count:1};Gt[nn]=mn,Ot.push(mn)}}),{clusters:C,clusterEdges:Ot}},II=OI,LI=function(t,e){var n=new es(e),i=n.norm2(),a=new es(t),s=a.norm2(),o=n.dot(a),A=i*s,l=A?o/A:0;return l},LB=LI,NI=function(t,e,n,i,a){t===void 0&&(t=[]),n===void 0&&(n=void 0),i===void 0&&(i=[]),a===void 0&&(a=[]);var s=ch(t.filter(function(h){return h.id!==e.id})),o=t.findIndex(function(h){return h.id===e.id}),A=kd(t,n),l=Qd(A,i,a),c=l[o],u=[];return s.forEach(function(h,f){if(h.id!==e.id){var d=l[f],g=LB(d,c);u.push(g),h.cosineSimilarity=g}}),s.sort(function(h,f){return f.cosineSimilarity-h.cosineSimilarity}),{allCosineSimilarity:u,similarNodes:s}},kI=NI,QI=function(){function r(t){this.count=t.length,this.parent={};for(var e=0,n=t;e<n.length;e++){var i=n[e];this.parent[i]=i}}return r.prototype.find=function(t){for(;this.parent[t]!==t;)t=this.parent[t];return t},r.prototype.union=function(t,e){var n=this.find(t),i=this.find(e);n!==i&&(n<i?(this.parent[e]!==e&&this.union(this.parent[e],t),this.parent[e]=this.parent[t]):(this.parent[t]!==t&&this.union(this.parent[t],e),this.parent[t]=this.parent[e]))},r.prototype.connected=function(t,e){return this.find(t)===this.find(e)},r}(),UI=QI,PI=function(t,e){return t-e},DI=function(){function r(t){t===void 0&&(t=PI),this.compareFn=t,this.list=[]}return r.prototype.getLeft=function(t){return 2*t+1},r.prototype.getRight=function(t){return 2*t+2},r.prototype.getParent=function(t){return t===0?null:Math.floor((t-1)/2)},r.prototype.isEmpty=function(){return this.list.length<=0},r.prototype.top=function(){return this.isEmpty()?void 0:this.list[0]},r.prototype.delMin=function(){var t=this.top(),e=this.list.pop();return this.list.length>0&&(this.list[0]=e,this.moveDown(0)),t},r.prototype.insert=function(t){if(t!==null){this.list.push(t);var e=this.list.length-1;return this.moveUp(e),!0}return!1},r.prototype.moveUp=function(t){for(var e=this.getParent(t);t&&t>0&&this.compareFn(this.list[e],this.list[t])>0;){var n=this.list[e];this.list[e]=this.list[t],this.list[t]=n,t=e,e=this.getParent(t)}},r.prototype.moveDown=function(t){var e,n=t,i=this.getLeft(t),a=this.getRight(t),s=this.list.length;i!==null&&i<s&&this.compareFn(this.list[n],this.list[i])>0?n=i:a!==null&&a<s&&this.compareFn(this.list[n],this.list[a])>0&&(n=a),t!==n&&(e=[this.list[n],this.list[t]],this.list[t]=e[0],this.list[n]=e[1],this.moveDown(n))},r}(),RI=DI,_I=function(t,e){var n=[],i=t.nodes,a=i===void 0?[]:i,s=t.edges,o=s===void 0?[]:s;if(a.length===0)return n;var A=a[0],l=new Set;l.add(A);var c=function(v,y){return e?v.weight-y.weight:0},u=new RI(c);for(Fd(A.id,o).forEach(function(g){u.insert(g)});!u.isEmpty();){var h=u.delMin(),f=h.source,d=h.target;l.has(f)&&l.has(d)||(n.push(h),l.has(f)||(l.add(f),Fd(f,o).forEach(function(g){u.insert(g)})),l.has(d)||(l.add(d),Fd(d,o).forEach(function(g){u.insert(g)})))}return n},NB=function(t,e){var n=[],i=t.nodes,a=i===void 0?[]:i,s=t.edges,o=s===void 0?[]:s;if(a.length===0)return n;var A=o.map(function(f){return f});e&&A.sort(function(f,d){return f.weight-d.weight});for(var l=new UI(a.map(function(f){return f.id}));A.length>0;){var c=A.shift(),u=c.source,h=c.target;l.connected(u,h)||(n.push(c),l.union(u,h))}return n},HI=function(t,e,n){var i={prim:_I,kruskal:NB};return n?i[n](t,e):NB(t,e)},GI=HI,KI=function(t,e,n){typeof e!="number"&&(e=1e-6),typeof n!="number"&&(n=.85);for(var i=1,a=0,s=1e3,o=t.nodes,A=o===void 0?[]:o,l=t.edges,c=l===void 0?[]:l,u=A.length,h,f={},d={},g=0;g<u;++g){var v=A[g],y=v.id;f[y]=1/u,d[y]=1/u}for(var E=Fm(t);s>0&&i>e;){a=0;for(var g=0;g<u;++g){var v=A[g],y=v.id;if(h=0,E[v.id].inDegree===0)f[y]=0;else{for(var C=ts(y,c,"source"),I=0;I<C.length;++I){var R=C[I],K=E[R].outDegree;K>0&&(h+=d[R]/K)}f[y]=n*h,a+=f[y]}}a=(1-a)/u,i=0;for(var g=0;g<u;++g){var v=A[g],y=v.id;h=f[y]+a,i+=Math.abs(h-d[y]),d[y]=h}s-=1}return d},kB=KI,zI=-1,Ud=-1,QB="-1",no="-1",UB=-1,Y8="-1",PB=function(){function r(t,e,n,i){t===void 0&&(t=zI),e===void 0&&(e=Ud),n===void 0&&(n=Ud),i===void 0&&(i=QB),this.id=t,this.from=e,this.to=n,this.label=i}return r}(),VI=function(){function r(t,e){t===void 0&&(t=Ud),e===void 0&&(e=no),this.id=t,this.label=e,this.edges=[],this.edgeMap={}}return r.prototype.addEdge=function(t){this.edges.push(t),this.edgeMap[t.id]=t},r}(),DB=function(){function r(t,e,n){t===void 0&&(t=Ud),e===void 0&&(e=!0),n===void 0&&(n=!1),this.id=t,this.edgeIdAutoIncrease=e,this.edges=[],this.nodes=[],this.nodeMap={},this.edgeMap={},this.nodeLabelMap={},this.edgeLabelMap={},this.counter=0,this.directed=n}return r.prototype.getNodeNum=function(){return this.nodes.length},r.prototype.addNode=function(t,e){if(!this.nodeMap[t]){var n=new VI(t,e);this.nodes.push(n),this.nodeMap[t]=n,this.nodeLabelMap[e]||(this.nodeLabelMap[e]=[]),this.nodeLabelMap[e].push(t)}},r.prototype.addEdge=function(t,e,n,i){if((this.edgeIdAutoIncrease||t===void 0)&&(t=this.counter++),!(this.nodeMap[e]&&this.nodeMap[n]&&this.nodeMap[n].edgeMap[t])){var a=new PB(t,e,n,i);if(this.edges.push(a),this.edgeMap[t]=a,this.nodeMap[e].addEdge(a),this.edgeLabelMap[i]||(this.edgeLabelMap[i]=[]),this.edgeLabelMap[i].push(a),!this.directed){var s=new PB(t,n,e,i);this.nodeMap[n].addEdge(s),this.edgeLabelMap[i].push(s)}}},r}(),gl=function(){function r(t,e,n,i,a){this.fromNode=t,this.toNode=e,this.nodeEdgeNodeLabel={nodeLabel1:n||no,edgeLabel:i||QB,nodeLabel2:a||no}}return r.prototype.equalTo=function(t){return this.fromNode===t.formNode&&this.toNode===t.toNode&&this.nodeEdgeNodeLabel===t.nodeEdgeNodeLabel},r.prototype.notEqualTo=function(t){return!this.equalTo(t)},r}(),RB=function(){function r(){this.rmpath=[],this.dfsEdgeList=[]}return r.prototype.equalTo=function(t){var e=this.dfsEdgeList.length,n=t.length;if(e!==n)return!1;for(var i=0;i<e;i++)if(this.dfsEdgeList[i]!==t[i])return!1;return!0},r.prototype.notEqualTo=function(t){return!this.equalTo(t)},r.prototype.pushBack=function(t,e,n,i,a){return this.dfsEdgeList.push(new gl(t,e,n,i,a)),this.dfsEdgeList},r.prototype.toGraph=function(t,e){t===void 0&&(t=UB),e===void 0&&(e=!1);var n=new DB(t,!0,e);return this.dfsEdgeList.forEach(function(i){var a=i.fromNode,s=i.toNode,o=i.nodeEdgeNodeLabel,A=o.nodeLabel1,l=o.edgeLabel,c=o.nodeLabel2;A!==no&&n.addNode(a,A),c!==no&&n.addNode(s,c),A!==no&&c!==A&&n.addEdge(void 0,a,s,l)}),n},r.prototype.buildRmpath=function(){this.rmpath=[];for(var t=void 0,e=this.dfsEdgeList.length,n=e-1;n>=0;n--){var i=this.dfsEdgeList[n],a=i.fromNode,s=i.toNode;a<s&&(t===void 0||s===t)&&(this.rmpath.push(n),t=a)}return this.rmpath},r.prototype.getNodeNum=function(){var t={};return this.dfsEdgeList.forEach(function(e){t[e.fromNode]||(t[e.fromNode]=!0),t[e.toNode]||(t[e.toNode]=!0)}),Object.keys(t).length},r}(),Pd=function(){function r(t){if(this.his={},this.nodesUsed={},this.edgesUsed={},this.edges=[],!!t){for(;t;){var e=t.edge;this.edges.push(e),this.nodesUsed[e.from]=1,this.nodesUsed[e.to]=1,this.edgesUsed[e.id]=1,t=t.preNode}this.edges=this.edges.reverse()}}return r.prototype.hasNode=function(t){return this.nodesUsed[t.id]===1},r.prototype.hasEdge=function(t){return this.edgesUsed[t.id]===1},r}(),WI=function(){function r(t){var e=t.graphs,n=t.minSupport,i=n===void 0?2:n,a=t.minNodeNum,s=a===void 0?1:a,o=t.maxNodeNum,A=o===void 0?4:o,l=t.top,c=l===void 0?10:l,u=t.directed,h=u===void 0?!1:u,f=t.verbose,d=f===void 0?!1:f;this.graphs=e,this.dfsCode=new RB,this.support=0,this.frequentSize1Subgraphs=[],this.frequentSubgraphs=[],this.minSupport=i,this.top=c,this.directed=h,this.counter=0,this.maxNodeNum=A,this.minNodeNum=s,this.verbose=d,this.maxNodeNum<this.minNodeNum&&(this.maxNodeNum=this.minNodeNum),this.reportDF=[]}return r.prototype.findForwardRootEdges=function(t,e){var n=this,i=[],a=t.nodeMap;return e.edges.forEach(function(s){(n.directed||e.label<=a[s.to].label)&&i.push(s)}),i},r.prototype.findBackwardEdge=function(t,e,n,i){if(!this.directed&&e===n)return null;for(var a=t.nodeMap,s=a[n.to],o=s.edges,A=o.length,l=0;l<A;l++){var c=o[l];if(!(i.hasEdge(c)||c.to!==e.from)){if(this.directed){if(a[e.from].label<a[n.to].label||a[e.from].label===a[n.to].label&&e.label<=c.label)return c}else if(e.label<c.label||e.label===c.label&&a[e.to].label<=a[n.to].label)return c}}return null},r.prototype.findForwardPureEdges=function(t,e,n,i){for(var a=[],s=e.to,o=t.nodeMap[s].edges,A=o.length,l=0;l<A;l++){var c=o[l],u=t.nodeMap[c.to];n<=u.label&&!i.hasNode(u)&&a.push(c)}return a},r.prototype.findForwardRmpathEdges=function(t,e,n,i){for(var a=[],s=t.nodeMap,o=s[e.to].label,A=s[e.from],l=A.edges,c=l.length,u=0;u<c;u++){var h=l[u],f=s[h.to].label;e.to===h.to||n>f||i.hasNode(s[h.to])||(e.label<h.label||e.label===h.label&&o<=f)&&a.push(h)}return a},r.prototype.getSupport=function(t){var e={};return t.forEach(function(n){e[n.graphId]||(e[n.graphId]=!0)}),Object.keys(e).length},r.prototype.findMinLabel=function(t){var e=void 0;return Object.keys(t).forEach(function(n){var i=t[n],a=i.nodeLabel1,s=i.edgeLabel,o=i.nodeLabel2;if(!e){e={nodeLabel1:a,edgeLabel:s,nodeLabel2:o};return}(a<e.nodeLabel1||a===e.nodeLabel1&&s<e.edgeLabel||a===e.nodeLabel1&&s===e.edgeLabel&&o<e.nodeLabel2)&&(e={nodeLabel1:a,edgeLabel:s,nodeLabel2:o})}),e},r.prototype.isMin=function(){var t=this,e=this.dfsCode;if(this.verbose&&console.log("isMin checking",e),e.dfsEdgeList.length===1)return!0;var n=this.directed,i=e.toGraph(UB,n),a=i.nodeMap,s=new RB,o={};i.nodes.forEach(function(u){var h=t.findForwardRootEdges(i,u);h.forEach(function(f){var d=a[f.to],g="".concat(u.label,"-").concat(f.label,"-").concat(d.label);o[g]||(o[g]={projected:[],nodeLabel1:u.label,edgeLabel:f.label,nodeLabel2:d.label});var v={graphId:i.id,edge:f,preNode:null};o[g].projected.push(v)})});var A=this.findMinLabel(o);if(A){s.dfsEdgeList.push(new gl(0,1,A.nodeLabel1,A.edgeLabel,A.nodeLabel2));var l=function u(h){for(var f=s.buildRmpath(),d=s.dfsEdgeList[0].nodeEdgeNodeLabel.nodeLabel1,g=s.dfsEdgeList[f[0]].toNode,v={},y=!1,E=0,C=n?-1:0,I=function(Rt){if(y)return"break";h.forEach(function(St){var Ot=new Pd(St),Gt=t.findBackwardEdge(i,Ot.edges[f[Rt]],Ot.edges[f[0]],Ot);Gt&&(v[Gt.label]||(v[Gt.label]={projected:[],edgeLabel:Gt.label}),v[Gt.label].projected.push({graphId:i.id,edge:v,preNode:St}),E=s.dfsEdgeList[f[Rt]].fromNode,y=!0)})},R=f.length-1;R>C;R--){var K=I(R);if(K==="break")break}if(y){var W=t.findMinLabel(v);s.dfsEdgeList.push(new gl(g,E,no,W.edgeLabel,no));var V=s.dfsEdgeList.length-1;return t.dfsCode.dfsEdgeList[V]!==s.dfsEdgeList[V]?!1:u(v[W.edgeLabel].projected)}var J={};y=!1;var et=0;h.forEach(function(Ht){var Rt=new Pd(Ht),St=t.findForwardPureEdges(i,Rt.edges[f[0]],d,Rt);St.length>0&&(y=!0,et=g,St.forEach(function(Ot){var Gt="".concat(Ot.label,"-").concat(a[Ot.to].label);J[Gt]||(J[Gt]={projected:[],edgeLabel:Ot.label,nodeLabel2:a[Ot.to].label}),J[Gt].projected.push({graphId:i.id,edge:Ot,preNode:Ht})}))});for(var at=f.length,ct=function(Rt){if(y)return"break";var St=f[Rt];h.forEach(function(Ot){var Gt=new Pd(Ot),qt=t.findForwardRmpathEdges(i,Gt.edges[St],d,Gt);qt.length>0&&(y=!0,et=s.dfsEdgeList[St].fromNode,qt.forEach(function(ae){var ue="".concat(ae.label,"-").concat(a[ae.to].label);J[ue]||(J[ue]={projected:[],edgeLabel:ae.label,nodeLabel2:a[ae.to].label}),J[ue].projected.push({graphId:i.id,edge:ae,preNode:Ot})}))})},R=0;R<at;R++){var pt=ct(R);if(pt==="break")break}if(!y)return!0;var wt=t.findMinLabel(J);s.dfsEdgeList.push(new gl(et,g+1,no,wt.edgeLabel,wt.nodeLabel2));var Ct=s.dfsEdgeList.length-1;return e.dfsEdgeList[Ct]!==s.dfsEdgeList[Ct]?!1:u(J["".concat(wt.edgeLabel,"-").concat(wt.nodeLabel2)].projected)},c="".concat(A.nodeLabel1,"-").concat(A.edgeLabel,"-").concat(A.nodeLabel2);return l(o[c].projected)}},r.prototype.report=function(){if(!(this.dfsCode.getNodeNum()<this.minNodeNum)){this.counter++;var t=this.dfsCode.toGraph(this.counter,this.directed);this.frequentSubgraphs.push(ch(t))}},r.prototype.subGraphMining=function(t){var e=this,n=this.getSupport(t);if(!(n<this.minSupport)&&this.isMin()){this.report();var i=this.dfsCode.getNodeNum(),a=this.dfsCode.buildRmpath(),s=this.dfsCode.dfsEdgeList[a[0]].toNode,o=this.dfsCode.dfsEdgeList[0].nodeEdgeNodeLabel.nodeLabel1,A={},l={};t.forEach(function(c){for(var u=e.graphs[c.graphId],h=u.nodeMap,f=new Pd(c),d=a.length-1;d>=0;d--){var g=e.findBackwardEdge(u,f.edges[a[d]],f.edges[a[0]],f);if(g){var v="".concat(e.dfsCode.dfsEdgeList[a[d]].fromNode,"-").concat(g.label);l[v]||(l[v]={projected:[],toNodeId:e.dfsCode.dfsEdgeList[a[d]].fromNode,edgeLabel:g.label}),l[v].projected.push({graphId:c.graphId,edge:g,preNode:c})}}if(!(i>=e.maxNodeNum)){var y=e.findForwardPureEdges(u,f.edges[a[0]],o,f);y.forEach(function(C){var I="".concat(s,"-").concat(C.label,"-").concat(h[C.to].label);A[I]||(A[I]={projected:[],fromNodeId:s,edgeLabel:C.label,nodeLabel2:h[C.to].label}),A[I].projected.push({graphId:c.graphId,edge:C,preNode:c})});for(var E=function(I){var R=e.findForwardRmpathEdges(u,f.edges[a[I]],o,f);R.forEach(function(K){var W="".concat(e.dfsCode.dfsEdgeList[a[I]].fromNode,"-").concat(K.label,"-").concat(h[K.to].label);A[W]||(A[W]={projected:[],fromNodeId:e.dfsCode.dfsEdgeList[a[I]].fromNode,edgeLabel:K.label,nodeLabel2:h[K.to].label}),A[W].projected.push({graphId:c.graphId,edge:K,preNode:c})})},d=0;d<a.length;d++)E(d)}}),Object.keys(l).forEach(function(c){var u=l[c],h=u.toNodeId,f=u.edgeLabel;e.dfsCode.dfsEdgeList.push(new gl(s,h,"-1",f,"-1")),e.subGraphMining(l[c].projected),e.dfsCode.dfsEdgeList.pop()}),Object.keys(A).forEach(function(c){var u=A[c],h=u.fromNodeId,f=u.edgeLabel,d=u.nodeLabel2;e.dfsCode.dfsEdgeList.push(new gl(h,s+1,no,f,d)),e.subGraphMining(A[c].projected),e.dfsCode.dfsEdgeList.pop()})}},r.prototype.generate1EdgeFrequentSubGraphs=function(){var t=this.graphs,e=this.directed,n=this.minSupport,i=this.frequentSize1Subgraphs,a={},s={},o={},A={};return Object.keys(t).forEach(function(l){var c=t[l],u=c.nodeMap;c.nodes.forEach(function(h,f){var d=h.label,g="".concat(l,"-").concat(d);if(!o[g]){var v=a[d]||0;v++,a[d]=v}o[g]={graphKey:l,label:d},h.edges.forEach(function(y){var E=d,C=u[y.to].label;if(!e&&E>C){var I=C;C=E,E=I}var R=y.label,K="".concat(l,"-").concat(E,"-").concat(R,"-").concat(C),W="".concat(E,"-").concat(R,"-").concat(C);if(!s[W]){var V=s[W]||0;V++,s[W]=V}A[K]={graphId:l,nodeLabel1:E,edgeLabel:R,nodeLabel2:C}})})}),Object.keys(a).forEach(function(l){var c=a[l];if(!(c<n)){var u={nodes:[],edges:[]};u.nodes.push({id:"0",label:l}),i.push(u)}}),i},r.prototype.run=function(){var t=this;if(this.frequentSize1Subgraphs=this.generate1EdgeFrequentSubGraphs(),!(this.maxNodeNum<2)){var e=this.graphs,n=this.directed,i={};Object.keys(e).forEach(function(a){var s=e[a],o=s.nodeMap;s.nodes.forEach(function(A){var l=t.findForwardRootEdges(s,A);l.forEach(function(c){var u=o[c.to],h="".concat(A.label,"-").concat(c.label,"-").concat(u.label);i[h]||(i[h]={projected:[],nodeLabel1:A.label,edgeLabel:c.label,nodeLabel2:u.label});var f={graphId:a,edge:c,preNode:null};i[h].projected.push(f)})})}),Object.keys(i).forEach(function(a){var s=i[a],o=s.projected,A=s.nodeLabel1,l=s.edgeLabel,c=s.nodeLabel2;t.dfsCode.dfsEdgeList.push(new gl(0,1,A,l,c)),t.subGraphMining(o),t.dfsCode.dfsEdgeList.pop()})}},r}(),ZI=function(t,e,n,i){var a={};return Object.keys(t).forEach(function(s,o){var A=t[s],l=new DB(o,!0,e),c={};A.nodes.forEach(function(u,h){l.addNode(h,u[n]),c[u.id]=h}),A.edges.forEach(function(u,h){var f=c[u.source],d=c[u.target];l.addEdge(-1,f,d,u[i])}),l&&l.getNodeNum()&&(a[l.id]=l)}),a},jI=function(t,e,n){var i=[];return t.forEach(function(a){var s={nodes:[],edges:[]};a.nodes.forEach(function(o){var A;s.nodes.push((A={id:"".concat(o.id)},A[e]=o.label,A))}),a.edges.forEach(function(o){var A;s.edges.push((A={source:"".concat(o.from),target:"".concat(o.to)},A[n]=o.label,A))}),i.push(s)}),i},_B="cluster",YI=function(t){var e=t.graphs,n=t.directed,i=n===void 0?!1:n,a=t.nodeLabelProp,s=a===void 0?_B:a,o=t.edgeLabelProp,A=o===void 0?_B:o,l=ZI(e,i,s,A),c=t.minSupport,u=t.maxNodeNum,h=t.minNodeNum,f=t.verbose,d=t.top,g={graphs:l,minSupport:c,maxNodeNum:u,minNodeNum:h,top:d,verbose:f,directed:i},v=new WI(g);v.run();var y=jI(v.frequentSubgraphs,s,A);return y},XI=YI,HB=function(t,e,n,i){n===void 0&&(n="cluster"),i===void 0&&(i=2);var a=[],s=t.nodes;return e.forEach(function(o,A){a.push(GB(s,o,A,n,i))}),a},GB=function(t,e,n,i,a){var s=[n],o=[],A={};return e.forEach(function(l,c){if(l<=a&&n!==c){s.push(c),o.push(t[c]);var u=t[c][i];A[u]?(A[u].count++,A[u].dists.push(l)):A[u]={count:1,dists:[l]}}}),Object.keys(A).forEach(function(l){A[l].dists=A[l].dists.sort(function(c,u){return c-u})}),{nodeIdx:n,nodeId:t[n].id,nodeIdxs:s,neighbors:o,neighborNum:s.length-1,nodeLabelCountMap:A}},JI=function(t,e,n,i,a){var s=Math.ceil(n/e),o={},A=0;return i.forEach(function(l,c){for(var u=0,h=0,f=l.nodeIdxs,d=l.neighborNum-1;u<s;){for(var g=f[1+Math.floor(Math.random()*d)],v=0;(o["".concat(c,"-").concat(g)]||o["".concat(g,"-").concat(c)])&&(g=Math.floor(Math.random()*e),v++,!(v>2*e)););if(v<2*e&&(o["".concat(c,"-").concat(g)]={start:c,end:g,distance:a[c][g]},u++,A++,A>=n))return o;if(h++,h>2*e)break}if(u<s){var y=s-u;s=(s+y)/(e-c-1)}}),o},Dd=function(t,e,n,i){var a=n.nodes;return i||(i={}),Object.keys(t).forEach(function(s){var o,A;if(!(i&&i[s])){i[s]={nodes:[],edges:[]};var l=t[s],c=(o=e[l.start])===null||o===void 0?void 0:o.nodeIdxs,u=(A=e[l.end])===null||A===void 0?void 0:A.nodeIdxs;if(!(!c||!u)){var h=new Set(u),f=c.filter(function(E){return h.has(E)});if(!(!f||!f.length)){for(var d={},g=f.length,v=0;v<g;v++){var y=a[f[v]];i[s].nodes.push(y),d[y.id]=!0}n.edges.forEach(function(E){d[E.source]&&d[E.target]&&i[s].edges.push(E)})}}}}),i},Rd=function(t,e,n,i){var a,s,o={};t.nodes.forEach(function(l){o[l.id]=l});var A=0;return!(!((a=e==null?void 0:e.edges)===null||a===void 0)&&a.length)||((s=e==null?void 0:e.nodes)===null||s===void 0?void 0:s.length)<2?0:(t.edges.forEach(function(l){var c=o[l.source][n],u=o[l.target][n],h=e==null?void 0:e.nodes[0][n],f=e==null?void 0:e.nodes[1][n],d=e==null?void 0:e.edges[0][i];l[i]===d&&(c===h&&u===f||c===f&&u===h)&&A++}),A)},qI=function(t,e,n){for(var i=1/0,a=0,s=function(l){var c=t[l],u=Object.keys(c).sort(function(E,C){return c[E]-c[C]}),h=10,f=[];u.forEach(function(E,C){f[C%h]||(f[C%h]={graphs:[],totalCount:0,aveCount:0}),f[C%h].graphs.push(E),f[C%h].totalCount+=c[E]});var d=0,g=[];f.forEach(function(E){var C=E.totalCount/E.graphs.length;E.aveCount=C,g.push(C);var I=0,R=E.length;E.graphs.forEach(function(K,W){var V=c[K];E.graphs.forEach(function(J,et){W!==et&&(I+=Math.abs(V-c[J]))})}),I/=R*(R-1)/2,d+=I}),d/=f.length;var v=0;g.forEach(function(E,C){g.forEach(function(I,R){C!==R&&(v+=Math.abs(E-I))}),v/=g.length*(g.length-1)/2});var y=v-d;i<y&&(i=y,a=l)},o=0;o<e;o++)s(o);return{structure:n[a],structureCountMap:t[a]}},KB=function(t,e){var n={},i={};return t.forEach(function(a,s){n[a.id]={idx:s,node:a,degree:0,inDegree:0,outDegree:0};var o=a[e];i[o]||(i[o]=[]),i[o].push(a)}),{nodeMap:n,nodeLabelMap:i}},zB=function(t,e,n){var i={},a={};return t.forEach(function(s,o){i["".concat(hB)]={idx:o,edge:s};var A=s[e];a[A]||(a[A]=[]),a[A].push(s);var l=n[s.source];l&&(l.degree++,l.outDegree++);var c=n[s.target];c&&(c.degree++,c.inDegree++)}),{edgeMap:i,edgeLabelMap:a}},VB=function(t,e,n){var i=e.length,a={};return e.forEach(function(s,o){for(var A=n?0:o+1,l=t[o].id,c=A;c<i;c++)if(o!==c){var u=t[c].id,h=s[c];a["".concat(l,"-").concat(u)]=h,n||(a["".concat(u,"-").concat(l)]=h)}}),a},$I=function(t,e,n,i,a,s,o,A,l,c,u){var h,f="".concat(e.id,"-").concat(n.id);if(c&&c[f])return c[f];var d=u?u[f]:void 0;if(!d){var g=(h={},h[f]={start:i[e.id].idx,end:i[n.id].idx,distance:a},h);u=Dd(g,s,t,u),d=u[f]}return Rd(d,o,A,l)},WB=function(t,e,n,i){var a,s,o,A=(a=t[e])===null||a===void 0?void 0:a.degree,l=(s=t[e])===null||s===void 0?void 0:s.inDegree,c=(o=t[e])===null||o===void 0?void 0:o.outDegree;return t[e]===void 0&&(A=1/0,l=1/0,c=1/0,i[e].forEach(function(u){var h=n[u.id].degree;A>h&&(A=h);var f=n[u.id].inDegree;l>f&&(l=f);var d=n[u.id].outDegree;c>d&&(c=d)}),t[e]={degree:A,inDegree:l,outDegree:c}),{minPatternNodeLabelDegree:A,minPatternNodeLabelInDegree:l,minPatternNodeLabelOutDegree:c}},tL=function(t,e,n,i,a,s,o){var A;if(n===void 0&&(n=!1),s===void 0&&(s="cluster"),o===void 0&&(o="cluster"),!(!t||!t.nodes)){var l=t.nodes.length;if(l){var c=Pm(t,n),u=Pm(e,n),h=VB(t.nodes,c,n),f=VB(e.nodes,u,n),d=KB(t.nodes,s),g=d.nodeMap,v=d.nodeLabelMap,y=KB(e.nodes,s),E=y.nodeMap,C=y.nodeLabelMap;zB(t.edges,o,g);var I=zB(e.edges,o,E).edgeLabelMap,R=[];u==null||u.forEach(function(un){R=R.concat(un)}),a||(a=Math.max.apply(Math,(0,j.ev)((0,j.ev)([],R,!1),[2],!1))),i||(i=a);var K=HB(t,c,s,i),W=HB(e,u,s,i),V=Math.min(100,l*(l-1)/2),J=JI(i,l,V,K,c),et=Dd(J,K,t),at=10,ct=1,pt=1,wt=4,Ct={graphs:et,nodeLabelProp:s,edgeLabelProp:o,minSupport:ct,minNodeNum:pt,maxNodeNum:wt,directed:n},Ht=XI(Ct).slice(0,at),Rt=Ht.length,St=[];Ht.forEach(function(un,Tn){St[Tn]={},Object.keys(et).forEach(function(fn){var Sn=et[fn],Pn=Rd(Sn,un,s,o);St[Tn][fn]=Pn})});var Ot=qI(St,Rt,Ht),Gt=Ot.structure,qt=Ot.structureCountMap,ae=e.nodes[0],ue=[],pe=(A=e.nodes[0])===null||A===void 0?void 0:A[s],Ce=-1/0;e.nodes.forEach(function(un){var Tn=un[s],fn=v[Tn];(fn==null?void 0:fn.length)>Ce&&(Ce=fn.length,ue=fn,pe=Tn,ae=un)});var Qe={},Re={},nn={},mn={},on={},er={};Object.keys(C).forEach(function(un,Tn){on[un]=[],n&&(er[un]=[]);var fn=-1/0,Sn=C[un],Pn={};Sn.forEach(function($e){var qe=f["".concat(ae.id,"-").concat($e.id)];if(qe&&on[un].push(qe),fn<qe&&(fn=qe),Pn["".concat(ae.id,"-").concat($e.id)]={start:0,end:E[$e.id].idx,distance:qe},n){var pr=f["".concat($e.id,"-").concat(ae.id)];pr&&er[un].push(pr)}}),on[un]=on[un].sort(function($e,qe){return $e-qe}),n&&(er[un]=er[un].sort(function($e,qe){return $e-qe})),Re=Dd(Pn,W,e,Re);var ke=[];if(Object.keys(Pn).forEach(function($e){if(nn[$e]){ke.push(nn[$e]);return}var qe=Re[$e];nn[$e]=Rd(qe,Gt,s,o),ke.push(nn[$e])}),ke=ke.sort(function($e,qe){return qe-$e}),mn["".concat(ae.id,"-").concat(un)]=ke,un!==pe)for(var Fn=(ue==null?void 0:ue.length)||0,En=function(qe){var pr=ue[qe],zi=K[g[pr.id].idx],mr=zi.nodeLabelCountMap[un],Ro=C[un].length;if(!mr||mr.count<Ro)return ue.splice(qe,1),"continue";for(var _o=!1,Ei=0;Ei<Ro;Ei++)if(mr.dists[Ei]>on[un][Ei]){_o=!0;break}if(_o)return ue.splice(qe,1),"continue";var pa={};zi.neighbors.forEach(function(Oi){var _a=h["".concat(pr.id,"-").concat(Oi.id)];pa["".concat(pr.id,"-").concat(Oi.id)]={start:g[pr.id].idx,end:g[Oi.id].idx,distance:_a}}),et=Dd(pa,K,t,et);var Da=[];Object.keys(pa).forEach(function(Oi){if(qt[Oi]){Da.push(qt[Oi]);return}var _a=et[Oi];qt[Oi]=Rd(_a,Gt,s,o),Da.push(qt[Oi])}),Da=Da.sort(function(Oi,_a){return _a-Oi});for(var Ra=!1,Ei=0;Ei<Ro;Ei++)if(Da[Ei]<ke[Ei]){Ra=!0;break}if(Ra)return ue.splice(qe,1),"continue"},cr=Fn-1;cr>=0;cr--)En(cr)});var kn=[];ue==null||ue.forEach(function(un){for(var Tn=g[un.id].idx,fn=GB(t.nodes,c[Tn],Tn,s,a),Sn=fn.neighbors,Pn=Sn.length,ke=!1,Fn=Pn-1;Fn>=0;Fn--){if(Sn.length+1<e.nodes.length){ke=!0;return}var En=Sn[Fn],cr=En[s];if(!C[cr]||!C[cr].length){Sn.splice(Fn,1);continue}if(!on[cr]||!on[cr].length){Sn.splice(Fn,1);continue}var $e="".concat(un.id,"-").concat(En.id),qe=h[$e],pr=on[cr].length-1,zi=on[cr][pr];if(qe>zi){Sn.splice(Fn,1);continue}if(n){var mr="".concat(En.id,"-").concat(un.id),Ro=h[mr];pr=er[cr].length-1;var _o=er[cr][pr];if(Ro>_o){Sn.splice(Fn,1);continue}}var Ei=qt[$e]?qt[$e]:$I(t,un,En,g,qe,K,Gt,s,o,qt,et),pa="".concat(ae.id,"-").concat(cr),Da=mn[pa][mn[pa].length-1];if(Ei<Da){Sn.splice(Fn,1);continue}var Ra=WB(Qe,cr,E,C),Oi=Ra.minPatternNodeLabelDegree,_a=Ra.minPatternNodeLabelInDegree,Ho=Ra.minPatternNodeLabelOutDegree;if(g[En.id].degree<Oi){Sn.splice(Fn,1);continue}}ke||kn.push({nodes:[un].concat(Sn)})});var Cn=Nd(e,ae.id,!1).length,gr={};n?(Object.keys(Cn).forEach(function(un){var Tn=E[un].node[s];gr[Tn]?gr[Tn].push(Cn[un]):gr[Tn]=[Cn[un]]}),Object.keys(gr).forEach(function(un){gr[un].sort(function(Tn,fn){return Tn-fn})})):gr=on;for(var va=kn.length,Gn=function(Tn){var fn=kn[Tn],Sn=fn.nodes[0],Pn={},ke={};fn.nodes.forEach(function(ur,Ha){ke[ur.id]={idx:Ha,node:ur,degree:0,inDegree:0,outDegree:0};var hi=ur[s];Pn[hi]?Pn[hi]++:Pn[hi]=1});var Fn=[],En={};t.edges.forEach(function(ur){ke[ur.source]&&ke[ur.target]&&(Fn.push(ur),En[ur[o]]?En[ur[o]]++:En[ur[o]]=1,ke[ur.source].degree++,ke[ur.target].degree++,ke[ur.source].outDegree++,ke[ur.target].inDegree++)});for(var cr=Object.keys(I).length,$e=!1,qe=0;qe<cr;qe++){var pr=Object.keys(I)[qe];if(!En[pr]||En[pr]<I[pr].length){$e=!0;break}}if($e)return kn.splice(Tn,1),"continue";var zi=Fn.length;if(zi<e.edges.length)return kn.splice(Tn,1),"break";for(var mr=!1,Ro=function(Ha){var hi=Fn[Ha],oo=hi[o],Ul=I[oo];if(!Ul||!Ul.length)return En[oo]--,Ul&&En[oo]<Ul.length?(mr=!0,"break"):(Fn.splice(Ha,1),ke[hi.source].degree--,ke[hi.target].degree--,ke[hi.source].outDegree--,ke[hi.target].inDegree--,"continue");var NS=ke[hi.source].node[s],kS=ke[hi.target].node[s],R1=!1;if(Ul.forEach(function(QS){var US=E[QS.source].node,PS=E[QS.target].node;US[s]===NS&&PS[s]===kS&&(R1=!0),!n&&US[s]===kS&&PS[s]===NS&&(R1=!0)}),!R1)return En[oo]--,Ul&&En[oo]<Ul.length?(mr=!0,"break"):(Fn.splice(Ha,1),ke[hi.source].degree--,ke[hi.target].degree--,ke[hi.source].outDegree--,ke[hi.target].inDegree--,"continue")},qe=zi-1;qe>=0;qe--){var _o=Ro(qe);if(_o==="break")break}if(mr)return kn.splice(Tn,1),"continue";fn.edges=Fn;var Ei=Nd(fn,fn.nodes[0].id,!1).length;if(Object.keys(Ei).reverse().forEach(function(ur){if(!(ur===fn.nodes[0].id||mr)){if(Ei[ur]===1/0){var Ha=ke[ur].node[s];if(Pn[Ha]--,Pn[Ha]<C[Ha].length){mr=!0;return}var hi=fn.nodes.indexOf(ke[ur].node);fn.nodes.splice(hi,1),ke[ur]=void 0;return}var oo=g[ur].node[s];if(!gr[oo]||!gr[oo].length||Ei[ur]>gr[oo][gr[oo].length-1]){var Ha=ke[ur].node[s];if(Pn[Ha]--,Pn[Ha]<C[Ha].length){mr=!0;return}var hi=fn.nodes.indexOf(ke[ur].node);fn.nodes.splice(hi,1),ke[ur]=void 0}}}),mr)return kn.splice(Tn,1),"continue";for(var pa=!0,Da=0;pa&&!mr;){pa=!1;var Ra=n?ke[Sn.id].degree<E[ae.id].degree||ke[Sn.id].inDegree<E[ae.id].inDegree||ke[Sn.id].outDegree<E[ae.id].outDegree:ke[Sn.id].degree<E[ae.id].degree;if(Ra){mr=!0;break}if(Pn[Sn[s]]<C[Sn[s]].length){mr=!0;break}for(var Oi=fn.nodes.length,_a=Oi-1;_a>=0;_a--){var Ho=fn.nodes[_a],IS=ke[Ho.id].degree,S6=ke[Ho.id].inDegree,M6=ke[Ho.id].outDegree,T6=Ho[s],D1=WB(Qe,T6,E,C),LS=D1.minPatternNodeLabelDegree,F6=D1.minPatternNodeLabelInDegree,O6=D1.minPatternNodeLabelOutDegree,I6=n?IS<LS||S6<F6||M6<O6:IS<LS;if(I6){if(Pn[Ho[s]]--,Pn[Ho[s]]<C[Ho[s]].length){mr=!0;break}fn.nodes.splice(_a,1),ke[Ho.id]=void 0,pa=!0}}if(mr||!pa&&Da!==0)break;zi=Fn.length;for(var Hv=zi-1;Hv>=0;Hv--){var Go=Fn[Hv];if(!ke[Go.source]||!ke[Go.target]){Fn.splice(Hv,1);var Gv=Go[o];if(En[Gv]--,ke[Go.source]&&(ke[Go.source].degree--,ke[Go.source].outDegree--),ke[Go.target]&&(ke[Go.target].degree--,ke[Go.target].inDegree--),I[Gv]&&En[Gv]<I[Gv].length){mr=!0;break}pa=!0}}Da++}if(mr||mr||fn.nodes.length<e.nodes.length||Fn.length<e.edges.length)return kn.splice(Tn,1),"continue"},Bn=va-1;Bn>=0;Bn--){var Ls=Gn(Bn);if(Ls==="break")break}for(var ui=kn.length,Ki=function(Tn){var fn=kn[Tn],Sn={};fn.edges.forEach(function(Fn){var En="".concat(Fn.source,"-").concat(Fn.target,"-").concat(Fn.label);Sn[En]?Sn[En]++:Sn[En]=1});for(var Pn=function(En){var cr=kn[En],$e={};cr.edges.forEach(function(pr){var zi="".concat(pr.source,"-").concat(pr.target,"-").concat(pr.label);$e[zi]?$e[zi]++:$e[zi]=1});var qe=!0;Object.keys($e).length!==Object.keys(Sn).length?qe=!1:Object.keys(Sn).forEach(function(pr){$e[pr]!==Sn[pr]&&(qe=!1)}),qe&&kn.splice(En,1)},ke=ui-1;ke>Tn;ke--)Pn(ke);ui=kn.length},Bn=0;Bn<=ui-1;Bn++)Ki(Bn);return kn}}},eL=tL,nL=function(){function r(t){t===void 0&&(t=10),this.linkedList=new uB,this.maxStep=t}return Object.defineProperty(r.prototype,"length",{get:function(){return this.linkedList.toArray().length},enumerable:!1,configurable:!0}),r.prototype.isEmpty=function(){return!this.linkedList.head},r.prototype.isMaxStack=function(){return this.toArray().length>=this.maxStep},r.prototype.peek=function(){return this.isEmpty()?null:this.linkedList.head.value},r.prototype.push=function(t){this.linkedList.prepend(t),this.length>this.maxStep&&this.linkedList.deleteTail()},r.prototype.pop=function(){var t=this.linkedList.deleteHead();return t?t.value:null},r.prototype.toArray=function(){return this.linkedList.toArray().map(function(t){return t.value})},r.prototype.clear=function(){for(;!this.isEmpty();)this.pop()},r}(),rL=nL,iL=yB,X8={getAdjMatrix:Td,breadthFirstSearch:PO,connectedComponent:dB,getDegree:Fm,getInDegree:RO,getOutDegree:_O,detectCycle:yB,detectDirectedCycle:iL,detectAllCycles:KO,detectAllDirectedCycle:mB,detectAllUndirectedCycle:pB,depthFirstSearch:vB,dijkstra:Nd,findAllPath:vI,findShortestPath:Um,floydWarshall:Pm,labelPropagation:yI,louvain:OB,iLouvain:MI,kCore:FI,kMeans:II,cosineSimilarity:LB,nodesCosineSimilarity:kI,minimumSpanningTree:GI,pageRank:kB,getNeighbors:ts,Stack:rL,GADDI:eL};function Pt(r){if(r.id!==void 0)return r.id;if(r.source!==void 0&&r.target!==void 0)return`${r.source}-${r.target}`;throw new Error(Oo("The datum does not have available id."))}function _d(r){return r.combo}function ZB(r,t){const e={nodes:(r.nodes||[]).map(Pt),edges:(r.edges||[]).map(Pt),combos:(r.combos||[]).map(Pt)};return t?Object.values(e).flat():e}const jB=(r,t,e)=>{var n;switch(e.type){case"degree":{const i=new Map;return(n=r.nodes)===null||n===void 0||n.forEach(a=>{const s=t(Pt(a),e.direction).length;i.set(Pt(a),s)}),i}case"betweenness":return aL(r,e.directed,e.weightPropertyName);case"closeness":return sL(r,e.directed,e.weightPropertyName);case"eigenvector":return AL(r,e.directed);case"pagerank":return oL(r,e.epsilon,e.linkProb);default:return YB(r)}},YB=r=>{var t;const e=new Map;return(t=r.nodes)===null||t===void 0||t.forEach(n=>{e.set(Pt(n),0)}),e},aL=(r,t,e)=>{const n=YB(r),{nodes:i=[]}=r;return i.forEach(a=>{i.forEach(s=>{if(a!==s){const{allPath:o}=Um(r,Pt(a),Pt(s),t,e),A=o.length;o.flat().forEach(l=>{l!==Pt(a)&&l!==Pt(s)&&n.set(l,n.get(l)+1/A)})}})}),n},sL=(r,t,e)=>{const n=new Map,{nodes:i=[]}=r;return i.forEach(a=>{const s=i.reduce((o,A)=>{if(a!==A){const{length:l}=Um(r,Pt(a),Pt(A),t,e);o+=l}return o},0);n.set(Pt(a),1/s)}),n},oL=(r,t,e)=>{var n;const i=new Map,a=kB(r,t,e);return(n=r.nodes)===null||n===void 0||n.forEach(s=>{i.set(Pt(s),a[Pt(s)])}),i},AL=(r,t)=>{const{nodes:e=[]}=r,n=lL(r,t),i=cL(n,e.length),a=new Map;return e.forEach((s,o)=>{a.set(Pt(s),i[o])}),a},lL=(r,t)=>{const{nodes:e=[],edges:n=[]}=r,i=Array(e.length).fill(null).map(()=>Array(e.length).fill(0));return n.forEach(({source:a,target:s})=>{const o=e.findIndex(l=>Pt(l)===a),A=e.findIndex(l=>Pt(l)===s);t?i[o][A]=1:(i[o][A]=1,i[A][o]=1)}),i},cL=(r,t,e=100,n=1e-6)=>{let i=Array(t).fill(1),a=1/0;for(let s=0;s<e&&a>n;s++){const o=Array(t).fill(0);for(let l=0;l<t;l++)for(let c=0;c<t;c++)o[l]+=r[l][c]*i[c];const A=Math.sqrt(o.reduce((l,c)=>l+c*c,0));for(let l=0;l<t;l++)o[l]/=A;a=Math.sqrt(o.reduce((l,c,u)=>l+(c-i[u])*c,0)),i=o}return i};function mA(r,t,e,n=Rr){const i=new Map(r.map(h=>[e(h),h])),a=new Map(t.map(h=>[e(h),h])),s=new Set(i.keys()),o=new Set(a.keys()),A=[],l=[],c=[],u=[];return o.forEach(h=>{s.has(h)?n(i.get(h),a.get(h))?u.push(a.get(h)):l.push(a.get(h)):A.push(a.get(h))}),s.forEach(h=>{o.has(h)||c.push(i.get(h))}),{enter:A,exit:c,keep:u,update:l}}function vl(r,t,e){const n=i=>{e&&!e(i)||(i.style.visibility=t)};r.forEach(i=>{n(i)})}function uL(r,t,e){const n={},i=a=>(a in n||(n[a]=0),`${t}-${a}-${n[a]++}`);return e.map(a=>typeof a=="string"?{type:a,key:i(a)}:typeof a=="function"?a.call(r):a.key?a:Object.assign(Object.assign({},a),{key:i(a.type)}))}class _m{constructor(t){this.extensions=[],this.extensionMap={},this.context=t}setExtensions(t){const e=uL(this.context.graph,this.category,t),{enter:n,update:i,exit:a,keep:s}=mA(this.extensions,e,o=>o.key);this.createExtensions(n),this.updateExtensions([...i,...s]),this.destroyExtensions(a),this.extensions=e}createExtension(t){const{category:e}=this,{key:n,type:i}=t,a=Fo(e,i);if(!a)return ha.warn(`The extension ${i} of ${e} is not registered.`);const s=new a(this.context,t);s.initialized=!0,this.extensionMap[n]=s}createExtensions(t){t.forEach(e=>this.createExtension(e))}updateExtension(t){const{key:e}=t,n=this.extensionMap[e];n&&n.update(t)}updateExtensions(t){t.forEach(e=>this.updateExtension(e))}destroyExtension(t){const e=this.extensionMap[t];e&&(e.initialized&&!e.destroyed&&e.destroy(),delete this.extensionMap[t])}destroyExtensions(t){t.forEach(({key:e})=>this.destroyExtension(e))}destroy(){this.destroyExtensions(this.extensions),this.context={},this.extensions=[],this.extensionMap={}}}class Hm{constructor(t,e){this.events=[],this.initialized=!1,this.destroyed=!1,this.context=t,this.options=e}update(t){this.options=Object.assign(this.options,t)}destroy(){this.context={},this.options={},this.destroyed=!0}}class Na extends Hm{}class Hd extends Na{constructor(t,e){super(t,Object.assign({},Hd.defaultOptions,e)),this.isOverlapping=(n,i)=>i.some(a=>n.intersects(a)),this.occupiedBounds=[],this.detectLabelCollision=n=>{const i=this.context.viewport,a={show:[],hide:[]};return this.occupiedBounds=[],n.forEach(s=>{const o=s.getShape("label").getRenderBounds();i.isInViewport(o,!0)&&!this.isOverlapping(o,this.occupiedBounds)?(a.show.push(s),this.occupiedBounds.push(pA(o,this.options.padding))):a.hide.push(s)}),a},this.hideLabelIfExceedViewport=(n,i)=>{const{exit:a}=mA(n,i,s=>s.id);a==null||a.forEach(this.hideLabel)},this.nodeCentralities=new Map,this.sortNodesByCentrality=(n,i)=>{const{model:a}=this.context,s=a.getData(),o=a.getRelatedEdgesData.bind(a);return n.map(l=>(this.nodeCentralities.has(l.id)||(this.nodeCentralities=jB(s,o,i)),{node:l,centrality:this.nodeCentralities.get(l.id)})).sort((l,c)=>c.centrality-l.centrality).map(l=>l.node)},this.sortLabelElementsInView=n=>{const{sort:i,sortNode:a,sortCombo:s,sortEdge:o}=this.options,{model:A}=this.context;if(jt(i))return n.sort((g,v)=>i(A.getElementDataById(g.id),A.getElementDataById(v.id)));const{node:l=[],edge:c=[],combo:u=[]}=Sd(n,g=>g.type),h=jt(s)?u.sort((g,v)=>s(...A.getComboData([g.id,v.id]))):u,f=jt(a)?l.sort((g,v)=>a(...A.getNodeData([g.id,v.id]))):this.sortNodesByCentrality(l,a),d=jt(o)?c.sort((g,v)=>o(...A.getEdgeData([g.id,v.id]))):c;return[...h,...f,...d]},this.labelElementsInView=[],this.isFirstRender=!0,this.onToggleVisibility=n=>{var i;if(((i=n.data)===null||i===void 0?void 0:i.stage)==="zIndex")return;if(!this.validate(n)){this.hiddenElements.size>0&&(this.hiddenElements.forEach(this.showLabel),this.hiddenElements.clear());return}const a=this.isFirstRender?this.getLabelElements():this.getLabelElementsInView();this.hideLabelIfExceedViewport(this.labelElementsInView,a),this.labelElementsInView=a;const s=this.sortLabelElementsInView(this.labelElementsInView),{show:o,hide:A}=this.detectLabelCollision(s);for(let l=o.length-1;l>=0;l--)this.showLabel(o[l]);A.forEach(this.hideLabel)},this.hiddenElements=new Map,this.hideLabel=n=>{const i=n.getShape("label");i&&vl(i,"hidden"),this.hiddenElements.set(n.id,n)},this.showLabel=n=>{const i=n.getShape("label");i&&vl(i,"visible"),n.toFront(),this.hiddenElements.delete(n.id)},this.onTransform=AB(this.onToggleVisibility,this.options.throttle,{leading:!0}),this.enableToggle=!0,this.toggle=n=>{this.enableToggle&&this.onToggleVisibility(n)},this.onBeforeRender=()=>{this.enableToggle=!1},this.onAfterRender=n=>{this.onToggleVisibility(n),this.enableToggle=!0},this.bindEvents()}update(t){this.unbindEvents(),super.update(t),this.bindEvents(),this.onToggleVisibility({})}getLabelElements(){const{elementMap:t}=this.context.element,e=[];for(const n in t){const i=t[n];i.isVisible()&&i.getShape("label")&&e.push(i)}return e}getLabelElementsInView(){const t=this.context.viewport;return this.getLabelElements().filter(e=>t.isInViewport(e.getShape("key").getRenderBounds()))}bindEvents(){const{graph:t}=this.context;t.on(ce.BEFORE_RENDER,this.onBeforeRender),t.on(ce.AFTER_RENDER,this.onAfterRender),t.on(ce.AFTER_DRAW,this.toggle),t.on(ce.AFTER_LAYOUT,this.toggle),t.on(ce.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:t}=this.context;t.off(ce.BEFORE_RENDER,this.onBeforeRender),t.off(ce.AFTER_RENDER,this.onAfterRender),t.off(ce.AFTER_DRAW,this.toggle),t.off(ce.AFTER_LAYOUT,this.toggle),t.off(ce.AFTER_TRANSFORM,this.onTransform)}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}destroy(){this.unbindEvents(),super.destroy()}}Hd.defaultOptions={enable:!0,throttle:100,padding:0,sortNode:{type:"degree"}};var hL=function(r){if(!Bm(r)||!gf(r,"Object"))return!1;if(Object.getPrototypeOf(r)===null)return!0;for(var t=r;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(r)===t},Lc=hL,fL=5;function dL(r,t){if(Object.hasOwn)return Object.hasOwn(r,t);if(r==null)throw new TypeError("Cannot convert undefined or null to object");return Object.prototype.hasOwnProperty.call(Object(r),t)}function XB(r,t,e,n){e=e||0,n=n||fL;for(var i in t)if(dL(t,i)){var a=t[i];a!==null&&Lc(a)?(Lc(r[i])||(r[i]={}),e<n?XB(r[i],a,e+1,n):r[i]=t[i]):Ni(a)?(r[i]=[],r[i]=r[i].concat(a)):a!==void 0&&(r[i]=a)}}var gL=function(r){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];for(var n=0;n<t.length;n+=1)XB(r,t[n]);return r},Ci=gL;const JB=[0,0,0];function tn(r,t){return r.map((e,n)=>e+t[n])}function tr(r,t){return r.map((e,n)=>e-t[n])}function Bs(r,t){return typeof t=="number"?r.map(e=>e*t):r.map((e,n)=>e*t[n])}function bs(r,t){return typeof t=="number"?r.map(e=>e/t):r.map((e,n)=>e/t[n])}function vL(r,t){return r.reduce((e,n,i)=>e+n*t[i],0)}function pL(r,t){const e=uh(r),n=uh(t);return[e[1]*n[2]-e[2]*n[1],e[2]*n[0]-e[0]*n[2],e[0]*n[1]-e[1]*n[0]]}function yA(r,t){return r.map(e=>e*t)}function lr(r,t){return Math.sqrt(r.reduce((e,n,i)=>e+Math.pow(n-t[i]||0,2),0))}function Gd(r,t){return r.reduce((e,n,i)=>e+Math.abs(n-t[i]),0)}function Io(r){const t=r.reduce((e,n)=>e+Math.pow(n,2),0);return r.map(e=>e/Math.sqrt(t))}function Gm(r,t,e=!1){const n=r[0]*t[1]-r[1]*t[0];let i=Math.acos(Bs(r,t).reduce((a,s)=>a+s,0)/(lr(r,JB)*lr(t,JB)));return e&&n<0&&(i=2*Math.PI-i),i}function J8(r,t){return r.every((e,n)=>e===t[n])}function Kd(r,t=!0){return t?[-r[1],r[0]]:[r[1],-r[0]]}function Km(r,t){return r.map(e=>e%t)}function pl(r){return[r[0],r[1]]}function uh(r){return BO(r)?[r[0],r[1],0]:r}function qB(r){const[t,e]=r;return!t&&!e?0:Math.atan2(e,t)}function $B(r,t){const[e,n]=r;if(t%360===0)return[e,n];const i=t*Math.PI/180,a=Math.cos(i),s=Math.sin(i);return[e*a-n*s,e*s+n*a]}function tb(r,t){const[e,n]=r,[i,a]=t,s=tr(e,n),o=tr(i,a);return pL(s,o).every(A=>A===0)}function zm(r,t,e=!1){if(tb(r,t))return;const[n,i]=r,[a,s]=t,o=((n[0]-a[0])*(a[1]-s[1])-(n[1]-a[1])*(a[0]-s[0]))/((n[0]-i[0])*(a[1]-s[1])-(n[1]-i[1])*(a[0]-s[0])),A=s[0]-a[0]?(n[0]-a[0]+o*(i[0]-n[0]))/(s[0]-a[0]):(n[1]-a[1]+o*(i[1]-n[1]))/(s[1]-a[1]);if(!(!e&&(!$s(o,0,1)||!$s(A,0,1))))return[n[0]+o*(i[0]-n[0]),n[1]+o*(i[1]-n[1])]}function eb(r){if(Array.isArray(r))return $s(r[0],0,1)&&$s(r[1],0,1)?r:[.5,.5];const t=r.split("-"),e=t.includes("left")?0:t.includes("right")?1:.5,n=t.includes("top")?0:t.includes("bottom")?1:.5;return[e,n]}function Ai(r){const{x:t=0,y:e=0,z:n=0}=r.style||{};return[+t,+e,+n]}function mL(r){const{x:t,y:e,z:n}=r.style||{};return t!==void 0||e!==void 0||n!==void 0}function nb(r,t){const[e,n]=t,{min:i,max:a}=r;return[i[0]+e*(a[0]-i[0]),i[1]+n*(a[1]-i[1])]}function Lo(r,t="center"){const e=eb(t);return nb(r,e)}function q8(r,t){const e=parseAnchor(t);return nb(r,e)}const $8=r=>{const[t,e]=r;return{left:Math.min(t[0],e[0]),right:Math.max(t[0],e[0]),top:Math.min(t[1],e[1]),bottom:Math.max(t[1],e[1])}};function Si(r){var t;return[r.x,r.y,(t=r.z)!==null&&t!==void 0?t:0]}function xs(r){var t;return{x:r[0],y:r[1],z:(t=r[2])!==null&&t!==void 0?t:0}}function t9(r){return r.sort((t,e)=>t[0]-e[0]||t[1]-e[1])}function e9(r){const t=new Set;return r.filter(e=>{const n=e.join(",");return t.has(n)?!1:(t.add(n),!0)})}function hh(r,t=0){return r.map(e=>parseFloat(e.toFixed(t)))}function wA(r,t,e,n=!1){if(Rr(r,t))return r;const i=n?tr(r,t):tr(t,r),a=Io(i),s=[a[0]*e,a[1]*e];return tn(pl(r),s)}function rb(r,t){return r[1]===t[1]}function yL(r,t){return r[0]===t[0]}function wL(r,t){return rb(r,t)||yL(r,t)}function ib(r,t,e){return tb([r,t],[t,e])}function ab(r,t){return[2*t[0]-r[0],2*t[1]-r[1]]}function sb(r,t,e,n=!0,i=!1){for(let a=0;a<e.length;a++){let s=e[a],o=e[(a+1)%e.length];n&&(s=tn(t,s),o=tn(t,o));const A=i?ab(r,t):r,l=zm([t,A],[s,o]);if(l)return{point:l,line:[s,o]}}return{point:t,line:void 0}}function EL(r,t,e,n){const i=r[0],a=r[1];let s=!1;e===void 0&&(e=0),n===void 0&&(n=t.length);const o=n-e;for(let A=0,l=o-1;A<o;l=A++){const c=t[A+e][0],u=t[A+e][1],h=t[l+e][0],f=t[l+e][1];u>a!=f>a&&i<(h-c)*(a-u)/(f-u)+c&&(s=!s)}return s}function BL(r,t,e=!1){const n=Lo(t,"center"),i=[Lo(t,"left-top"),Lo(t,"right-top"),Lo(t,"right-bottom"),Lo(t,"left-bottom")];return sb(r,n,i,!1,e).point}function zd(r,t,e=!1){const n=t.center,i=e?ab(r,n):r,a=tr(i,t.center),s=Math.atan2(a[1],a[0]);if(isNaN(s))return n;const o=to(t)/2,A=eo(t)/2,l=n[0]+o*Math.cos(s),c=n[1]+A*Math.sin(s);return[l,c]}function bL(r,t){let e=1/0,n=[r[0],t[0]];return r.forEach(i=>{t.forEach(a=>{const s=lr(i,a);s<e&&(e=s,n=[i,a])})}),n}function xL(r,t){let e=1/0,n=[[0,0],[0,0]];return t.forEach(i=>{const a=CL(r,i);a<e&&(e=a,n=i)}),n}function CL(r,t){const e=ob(r,t);return lr(r,e)}function ob(r,t){const[e,n]=t[0],[i,a]=t[1],[s,o]=r,A=i-e,l=a-n;if(A===0&&l===0)return[e,n];let c=((s-e)*A+(o-n)*l)/(A*A+l*l);c>1?c=1:c<0&&(c=0);const u=e+c*A,h=n+c*l;return[u,h]}function SL(r){const t=r.reduce((e,n)=>tn(e,n),[0,0]);return bs(t,r.length)}function Vm(r,t=!0){const e=SL(r);return r.sort(([n,i],[a,s])=>{const o=Math.atan2(i-e[1],n-e[0]),A=Math.atan2(s-e[1],a-e[0]);return t?A-o:o-A})}function Ab(r,t){return[r,[r[0],t[1]],t,[t[0],r[1]]]}class _r{constructor(t,e,n){if(this.phase=e,this.pointerByTouch=[],this.initialDistance=null,this.emitter=t,_r.instance)return _r.callbacks[this.phase].push(n),_r.instance;this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.bindEvents(),_r.instance=this,_r.callbacks[this.phase].push(n)}bindEvents(){const{emitter:t}=this;t.on(Jt.POINTER_DOWN,this.onPointerDown),t.on(Jt.POINTER_MOVE,this.onPointerMove),t.on(Jt.POINTER_UP,this.onPointerUp)}updatePointerPosition(t,e,n){const i=this.pointerByTouch.findIndex(a=>a.pointerId===t);i>=0&&(this.pointerByTouch[i]={x:e,y:n,pointerId:t})}onPointerDown(t){const{x:e,y:n}=t.client||{};if(!(e===void 0||n===void 0)&&(this.pointerByTouch.push({x:e,y:n,pointerId:t.pointerId}),t.pointerType==="touch"&&this.pointerByTouch.length===2)){_r.isPinching=!0;const i=this.pointerByTouch[0].x-this.pointerByTouch[1].x,a=this.pointerByTouch[0].y-this.pointerByTouch[1].y;this.initialDistance=Math.sqrt(i*i+a*a),_r.callbacks.pinchstart.forEach(s=>s(t,{scale:0}))}}onPointerMove(t){if(this.pointerByTouch.length!==2||this.initialDistance===null)return;const{x:e,y:n}=t.client||{};if(e===void 0||n===void 0)return;this.updatePointerPosition(t.pointerId,e,n);const i=this.pointerByTouch[0].x-this.pointerByTouch[1].x,a=this.pointerByTouch[0].y-this.pointerByTouch[1].y,o=Math.sqrt(i*i+a*a)/this.initialDistance;_r.callbacks.pinchmove.forEach(A=>A(t,{scale:(o-1)*5}))}onPointerUp(t){var e;_r.callbacks.pinchend.forEach(n=>n(t,{scale:0})),_r.isPinching=!1,this.initialDistance=null,this.pointerByTouch=[],(e=_r.instance)===null||e===void 0||e.tryDestroy()}destroy(){this.emitter.off(Jt.POINTER_DOWN,this.onPointerDown),this.emitter.off(Jt.POINTER_MOVE,this.onPointerMove),this.emitter.off(Jt.POINTER_UP,this.onPointerUp),_r.instance=null}off(t,e){const n=_r.callbacks[t].indexOf(e);n>-1&&_r.callbacks[t].splice(n,1),this.tryDestroy()}tryDestroy(){Object.values(_r.callbacks).every(t=>t.length===0)&&this.destroy()}}_r.isPinching=!1,_r.instance=null,_r.callbacks={pinchstart:[],pinchmove:[],pinchend:[]};const lb=r=>r.map(t=>gn(t)?t.toLocaleLowerCase():t);class Nc{constructor(t){this.map=new Map,this.boundHandlePinch=()=>{},this.recordKey=new Set,this.onKeyDown=e=>{e!=null&&e.key&&(this.recordKey.add(e.key),this.trigger(e))},this.onKeyUp=e=>{e!=null&&e.key&&this.recordKey.delete(e.key)},this.onWheel=e=>{this.triggerExtendKey(Jt.WHEEL,e)},this.onDrag=e=>{this.triggerExtendKey(Jt.DRAG,e)},this.handlePinch=(e,n)=>{this.triggerExtendKey(Jt.PINCH,Object.assign(Object.assign({},e),n))},this.onFocus=()=>{this.recordKey.clear()},this.emitter=t,this.bindEvents()}bind(t,e){t.length!==0&&(t.includes(Jt.PINCH)&&!this.pinchHandler&&(this.boundHandlePinch=this.handlePinch.bind(this),this.pinchHandler=new _r(this.emitter,"pinchmove",this.boundHandlePinch)),this.map.set(t,e))}unbind(t,e){this.map.forEach((n,i)=>{Rr(i,t)&&(!e||e===n)&&this.map.delete(i)})}unbindAll(){this.map.clear()}match(t){const e=lb(Array.from(this.recordKey)).sort(),n=lb(t).sort();return Rr(e,n)}bindEvents(){var t;const{emitter:e}=this;e.on(Jt.KEY_DOWN,this.onKeyDown),e.on(Jt.KEY_UP,this.onKeyUp),e.on(Jt.WHEEL,this.onWheel),e.on(Jt.DRAG,this.onDrag),(t=globalThis.addEventListener)===null||t===void 0||t.call(globalThis,"focus",this.onFocus)}trigger(t){this.map.forEach((e,n)=>{this.match(n)&&e(t)})}triggerExtendKey(t,e){this.map.forEach((n,i)=>{i.includes(t)&&Rr(Array.from(this.recordKey),i.filter(a=>a!==t))&&n(e)})}destroy(){var t,e;this.unbindAll(),this.emitter.off(Jt.KEY_DOWN,this.onKeyDown),this.emitter.off(Jt.KEY_UP,this.onKeyUp),this.emitter.off(Jt.WHEEL,this.onWheel),this.emitter.off(Jt.DRAG,this.onDrag),(t=this.pinchHandler)===null||t===void 0||t.off("pinchmove",this.boundHandlePinch),(e=globalThis.removeEventListener)===null||e===void 0||e.call(globalThis,"blur",this.onFocus)}}class fh extends Na{constructor(t,e){super(t,Ci({},fh.defaultOptions,e)),this.shortcut=new Nc(t.graph),this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.clearStates=this.clearStates.bind(this),this.bindEvents()}onPointerDown(t){if(!this.validate(t)||!this.isKeydown()||this.startPoint)return;const{canvas:e,graph:n}=this.context,i=Object.assign({},this.options.style);this.options.style.lineWidth&&(i.lineWidth=+this.options.style.lineWidth/n.getZoom()),this.rectShape=new xi({id:"g6-brush-select",style:i}),e.appendChild(this.rectShape),this.startPoint=[t.canvas.x,t.canvas.y]}onPointerMove(t){var e;if(!this.startPoint)return;const{immediately:n,mode:i}=this.options;this.endPoint=Vd(t,this.context.graph),(e=this.rectShape)===null||e===void 0||e.attr({x:Math.min(this.endPoint[0],this.startPoint[0]),y:Math.min(this.endPoint[1],this.startPoint[1]),width:Math.abs(this.endPoint[0]-this.startPoint[0]),height:Math.abs(this.endPoint[1]-this.startPoint[1])}),n&&i==="default"&&this.updateElementsStates(Ab(this.startPoint,this.endPoint))}onPointerUp(t){if(this.startPoint){if(!this.endPoint){this.clearBrush();return}this.endPoint=Vd(t,this.context.graph),this.updateElementsStates(Ab(this.startPoint,this.endPoint)),this.clearBrush()}}clearStates(){this.endPoint||this.clearElementsStates()}clearElementsStates(){const{graph:t}=this.context,e=Object.values(t.getData()).reduce((n,i)=>Object.assign({},n,i.reduce((a,s)=>{var o;const A=(o=s.states||[])===null||o===void 0?void 0:o.filter(l=>l!==this.options.state);return a[Pt(s)]=A,a},{})),{});t.setElementState(e,this.options.animation)}updateElementsStates(t){const{graph:e}=this.context,{enableElements:n,state:i,mode:a,onSelect:s}=this.options,o=this.selector(e,t,n);let A={};switch(a){case"union":o.forEach(l=>{A[l]=[...e.getElementState(l),i]});break;case"diff":o.forEach(l=>{const c=e.getElementState(l);A[l]=c.includes(i)?c.filter(u=>u!==i):[...c,i]});break;case"intersect":o.forEach(l=>{const c=e.getElementState(l);A[l]=c.includes(i)?[i]:[]});break;case"default":default:o.forEach(l=>{A[l]=[i]});break}jt(s)&&(A=s(A)),e.setElementState(A,this.options.animation)}selector(t,e,n){if(!n||n.length===0)return[];const i=[],a=t.getData();if(n.forEach(s=>{a[`${s}s`].forEach(o=>{const A=Pt(o);t.getElementVisibility(A)!=="hidden"&&EL(t.getElementPosition(A),e)&&i.push(A)})}),n.includes("edge")){const s=a.edges;s==null||s.forEach(o=>{const{source:A,target:l}=o;i.includes(A)&&i.includes(l)&&i.push(Pt(o))})}return i}clearBrush(){var t;(t=this.rectShape)===null||t===void 0||t.remove(),this.rectShape=void 0,this.startPoint=void 0,this.endPoint=void 0}isKeydown(){const{trigger:t}=this.options,e=Array.isArray(t)?t:[t];return this.shortcut.match(e.filter(n=>n!=="drag"))}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}bindEvents(){const{graph:t}=this.context;t.on(Jt.POINTER_DOWN,this.onPointerDown),t.on(Jt.POINTER_MOVE,this.onPointerMove),t.on(Jt.POINTER_UP,this.onPointerUp),t.on(To.CLICK,this.clearStates)}unbindEvents(){const{graph:t}=this.context;t.off(Jt.POINTER_DOWN,this.onPointerDown),t.off(Jt.POINTER_MOVE,this.onPointerMove),t.off(Jt.POINTER_UP,this.onPointerUp),t.off(To.CLICK,this.clearStates)}update(t){this.unbindEvents(),this.options=Ci(this.options,t),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}fh.defaultOptions={animation:!1,enable:!0,enableElements:["node","combo","edge"],immediately:!1,mode:"default",state:"selected",trigger:["shift"],style:{width:0,height:0,lineWidth:1,fill:"#1677FF",stroke:"#1677FF",fillOpacity:.1,zIndex:2,pointerEvents:"none"}};const Vd=(r,t)=>{if((r.targetType==="node"||r.targetType==="combo")&&!(r.nativeEvent.target instanceof HTMLCanvasElement)){const[e,n]=t.getCanvasByClient([r.client.x,r.client.y]);return[e,n]}return[r.canvas.x,r.canvas.y]},No=.8,ml=["node","edge","combo"];function yl(r,t,e,n,i=0){n==="TB"&&t(r,i);const a=e(r);if(a)for(const s of a)yl(s,t,e,n,i+1);n==="BT"&&t(r,i)}function ML(r,t,e){const n=[[r,0]];for(;n.length;){const[i,a]=n.shift();t(i,a);const s=e(i);if(s)for(const o of s)n.push([o,a+1])}}function cb(r,t,e,n,i="both"){if(t==="combo"||t==="node")return Wm(r,e,n,i);const a=r.getEdgeData(e);if(!a)return[];const s=Wm(r,a.source,n-1,i),o=Wm(r,a.target,n-1,i);return Array.from(new Set([...s,...o,e]))}function Wm(r,t,e,n="both"){const i=new Set,a=new Set,s=new Set;return ML(t,(o,A)=>{A>e||(s.add(o),r.getRelatedEdgesData(o,n).forEach(l=>{const c=Pt(l);!a.has(c)&&A<e&&(s.add(c),a.add(c))}))},o=>r.getRelatedEdgesData(o,n).map(A=>A.source===o?A.target:A.source).filter(A=>i.has(A)?!1:(i.add(A),!0))),Array.from(s)}function Zm(r){return r.states||[]}var Wd=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Zd extends Na{constructor(t,e){super(t,Object.assign({},Zd.defaultOptions,e)),this.onClickSelect=n=>Wd(this,void 0,void 0,function*(){var i,a;this.validate(n)&&(yield this.updateState(n),(a=(i=this.options).onClick)===null||a===void 0||a.call(i,n))}),this.onClickCanvas=n=>Wd(this,void 0,void 0,function*(){var i,a;this.validate(n)&&(yield this.clearState(),(a=(i=this.options).onClick)===null||a===void 0||a.call(i,n))}),this.shortcut=new Nc(t.graph),this.bindEvents()}bindEvents(){const{graph:t}=this.context;this.unbindEvents(),ml.forEach(e=>{t.on(`${e}:${Jt.CLICK}`,this.onClickSelect)}),t.on(To.CLICK,this.onClickCanvas)}get isMultipleSelect(){const{multiple:t,trigger:e}=this.options;return t&&this.shortcut.match(e)}getNeighborIds(t){const{target:e,targetType:n}=t,{graph:i}=this.context,{degree:a}=this.options;return cb(i,n,e.id,typeof a=="function"?a(t):a).filter(s=>s!==e.id)}updateState(t){return Wd(this,void 0,void 0,function*(){const{state:e,unselectedState:n,neighborState:i,animation:a}=this.options;if(!e&&!i&&!n)return;const{target:s}=t,{graph:o}=this.context,A=o.getElementData(s.id),l=Zm(A).includes(e)?"unselect":"select",c={},u=this.isMultipleSelect,h=[s.id],f=this.getNeighborIds(t);if(u)if(Object.assign(c,this.getDataStates()),l==="select"){const d=(g,v)=>{g.forEach(y=>{const E=new Set(o.getElementState(y));E.add(v),E.delete(n),c[y]=Array.from(E)})};d(h,e),d(f,i),n&&Object.keys(c).forEach(g=>{const v=c[g];!v.includes(e)&&!v.includes(i)&&!v.includes(n)&&c[g].push(n)})}else{const d=c[s.id];c[s.id]=d.filter(g=>g!==e&&g!==i),d.includes(n)||c[s.id].push(n),f.forEach(g=>{c[g]=c[g].filter(v=>v!==i),c[g].includes(e)||c[g].push(n)})}else if(l==="select"){Object.assign(c,this.getClearStates(!!n));const d=(g,v)=>{g.forEach(y=>{c[y]||(c[y]=o.getElementState(y)),c[y].push(v)})};d(h,e),d(f,i),n&&Object.keys(c).forEach(g=>{!h.includes(g)&&!f.includes(g)&&c[g].push(n)})}else Object.assign(c,this.getClearStates());yield o.setElementState(c,a)})}getDataStates(){const{graph:t}=this.context,{nodes:e,edges:n,combos:i}=t.getData(),a={};return[...e,...n,...i].forEach(s=>{a[Pt(s)]=Zm(s)}),a}getClearStates(t=!1){const{graph:e}=this.context,{state:n,unselectedState:i,neighborState:a}=this.options,s=new Set([n,i,a]),{nodes:o,edges:A,combos:l}=e.getData(),c={};return[...o,...A,...l].forEach(u=>{const h=Zm(u),f=h.filter(d=>!s.has(d));(t||f.length!==h.length)&&(c[Pt(u)]=f)}),c}clearState(){return Wd(this,void 0,void 0,function*(){const{graph:t}=this.context;yield t.setElementState(this.getClearStates(),this.options.animation)})}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}unbindEvents(){const{graph:t}=this.context;ml.forEach(e=>{t.off(`${e}:${Jt.CLICK}`,this.onClickSelect)}),t.off(To.CLICK,this.onClickCanvas)}destroy(){this.unbindEvents(),super.destroy()}}Zd.defaultOptions={animation:!0,enable:!0,multiple:!1,trigger:["shift"],state:"selected",neighborState:"selected",unselectedState:void 0,degree:0};function fa(r){var t;return!!(!((t=r.style)===null||t===void 0)&&t.collapsed)}var Mi=function(r,t,e){for(var n=0,i=gn(t)?t.split("."):t;r&&n<i.length;)r=r[i[n++]];return r===void 0||n<i.length?e:r},dh=function(r,t,e){var n=r,i=gn(t)?t.split("."):t;return i.forEach(function(a,s){s<i.length-1?(Br(n[a])||(n[a]=we(i[s+1])?[]:{}),n=n[a]):n[a]=e}),r},TL=function(r){var t=eB(r);return t.charAt(0).toLowerCase()+t.substring(1)},FL=TL;function gh(r,t){if(!r.startsWith(t))return!1;const e=r[t.length];return e>="A"&&e<="Z"}function ub(r,t){return`${t}${xd(r)}`}function hb(r,t,e=!0){if(!t||!gh(r,t))return r;const n=r.slice(t.length);return e?FL(n):n}function Ir(r,t){const e=Object.entries(r).reduce((n,[i,a])=>(i==="className"||i==="class"||gh(i,t)&&Object.assign(n,{[hb(i,t)]:a}),n),{});if("opacity"in r){const n=ub("opacity",t),i=r.opacity;if(n in r){const a=r[n];Object.assign(e,{opacity:i*a})}else Object.assign(e,{opacity:i})}return e}function jm(r,t){const e=t.length;return Object.keys(r).reduce((n,i)=>{if(i.startsWith(t)){const a=i.slice(e);n[a]=r[i]}return n},{})}function fb(r,t){const e=typeof t=="string"?[t]:t,n={};return Object.keys(r).forEach(i=>{e.find(a=>i.startsWith(a))||(n[i]=r[i])}),n}function n9(r,t,e){return Object.entries(r).reduce((n,[i,a])=>(gh(i,t)?n[ub(hb(i,t,!1),e)]=a:n[i]=a,n),{})}function ka(r=0){if(typeof r=="number")return[r,r,r];const[t,e=t,n=t]=r;return[t,e,n]}var OL=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};function db(r,t){const{datum:e,graph:n}=t;return typeof r=="function"?r.call(n,e):Object.fromEntries(Object.entries(r).map(([i,a])=>typeof a=="function"?[i,a.call(n,e)]:[i,a]))}function pi(r,t){const e=(r==null?void 0:r.style)||{},n=(t==null?void 0:t.style)||{};for(const i in e)i in n||(n[i]=e[i]);return Object.assign({},r,t,{style:n})}function IL(r){const{x:t,y:e,z:n,class:i,className:a,transform:s,transformOrigin:o,zIndex:A,visibility:l}=r;return OL(r,["x","y","z","class","className","transform","transformOrigin","zIndex","visibility"])}function LL(r,t){const e=ka(r);let n={};return t.text&&!t.fontSize&&(n={fontSize:Math.min(...e)*.5}),t.src&&(!t.width||!t.height)&&(n={width:e[0]*.5,height:e[1]*.5}),n}function gb(r){if(r)return typeof r=="string"||typeof r=="function"||Array.isArray(r)?{type:"group",field:t=>t.id,color:r,invert:!1}:r}function NL(r,t){if(!t)return{};const{type:e,color:n,field:i,invert:a}=t,s=A=>{const l=typeof n=="string"?Fo("palette",n):n;if(typeof l=="function"){const c={};return A.forEach(([u,h])=>{c[u]=l(a?1-h:h)}),c}else if(Array.isArray(l)){const c=a?[...l].reverse():l,u={};return A.forEach(([h,f])=>{u[h]=c[f%l.length]}),u}return{}},o=(A,l)=>{var c;return typeof A=="string"?(c=l.data)===null||c===void 0?void 0:c[A]:A==null?void 0:A(l)};if(e==="group"){const A=Sd(r,h=>{if(!i)return"default";const f=o(i,h);return f?String(f):"default"}),l=Object.keys(A),c=s(l.map((h,f)=>[h,f])),u={};return Object.entries(A).forEach(([h,f])=>{f.forEach(d=>{u[Pt(d)]=c[h]})}),u}else if(e==="value"){const[A,l]=r.reduce(([u,h],f)=>{const d=o(i,f);if(typeof d!="number")throw new Error(Oo(`Palette field ${i} is not a number`));return[Math.min(u,d),Math.max(h,d)]},[1/0,-1/0]),c=l-A;return s(r.map(u=>[u.id,(o(i,u)-A)/c]))}}function vb(r){const t=typeof r=="string"?Fo("palette",r):r;if(typeof t!="function")return t}function pb(r,t){let e=2*r;return typeof t=="string"?e=r*Number(t.replace("%",""))/100:typeof t=="number"&&(e=t),isNaN(e)&&(e=2*r),e}function mb(r,t,e=1,n=!1){const i=n?e:1,a=(r.max[0]-r.min[0])*i;return pb(a,t)}function kL(r,t,e=1){const n=lr(r[0],r[1])*e;return pb(n,t)}var QL={}.toString,UL=function(r){return QL.call(r).replace(/^\[object /,"").replace(/]$/,"")},PL=UL,DL=Object.prototype,RL=function(r){var t=r&&r.constructor,e=typeof t=="function"&&t.prototype||DL;return r===e},_L=RL,HL=Object.prototype.hasOwnProperty;function GL(r){if(Pe(r))return!0;if(ih(r))return!r.length;var t=PL(r);if(t==="Map"||t==="Set")return!r.size;if(_L(r))return!Object.keys(r).length;for(var e in r)if(HL.call(r,e))return!1;return!0}var ro=GL;class vh extends Ju{constructor(t){yb(t.style),super(t),this.shapeMap={},this.animateMap={},this.render(this.attributes,this),this.setVisibility(),this.bindEvents()}get parsedAttributes(){return this.attributes}upsert(t,e,n,i,a){var s,o,A,l,c,u,h,f;const d=this.shapeMap[t];if(n===!1){d&&((s=a==null?void 0:a.beforeDestroy)===null||s===void 0||s.call(a,d),i.removeChild(d),delete this.shapeMap[t],(o=a==null?void 0:a.afterDestroy)===null||o===void 0||o.call(a,d));return}const g=typeof e=="string"?Fo(ah.SHAPE,e):e;if(!g)throw new Error(Oo(`Shape ${e} not found`));if(!d||d.destroyed||!(d instanceof g)){d&&((A=a==null?void 0:a.beforeDestroy)===null||A===void 0||A.call(a,d),d==null||d.destroy(),(l=a==null?void 0:a.afterDestroy)===null||l===void 0||l.call(a,d)),(c=a==null?void 0:a.beforeCreate)===null||c===void 0||c.call(a);const v=new g({className:t,style:n});return i.appendChild(v),this.shapeMap[t]=v,(u=a==null?void 0:a.afterCreate)===null||u===void 0||u.call(a,v),v}return(h=a==null?void 0:a.beforeUpdate)===null||h===void 0||h.call(a,d),uy(d,n),(f=a==null?void 0:a.afterUpdate)===null||f===void 0||f.call(a,d),d}update(t={}){const e=Object.assign({},this.attributes,t);yb(e),Nk(this,e),this.render(e,this),this.setVisibility()}bindEvents(){}getGraphicStyle(t){return IL(t)}get compositeShapes(){return[["badges","badge-"],["ports","port-"]]}animate(t,e){if(t.length===0)return null;const n=[];if(t[0].x!==void 0||t[0].y!==void 0||t[0].z!==void 0){const{x:a=0,y:s=0,z:o=0}=this.attributes;t.forEach(A=>{const{x:l=a,y:c=s,z:u=o}=A;Object.assign(A,{transform:u?[["translate3d",l,c,u]]:[["translate",l,c]]})})}const i=super.animate(t,e);if(i&&(Ym(this,i),n.push(i)),Array.isArray(t)&&t.length>0){const a=["transform","transformOrigin","x","y","z","zIndex"];if(Object.keys(t[0]).some(s=>!a.includes(s))){Object.entries(this.shapeMap).forEach(([o,A])=>{const l=`get${xd(o)}Style`,c=this[l];if(jt(c)){const u=t.map(f=>c.call(this,Object.assign(Object.assign({},this.attributes),f))),h=A.animate(Sm(u),e);h&&(Ym(A,h),n.push(h))}});const s=(o,A)=>{if(!ro(o)){const l=`get${xd(A)}Style`,c=this[l];if(jt(c)){const u=t.map(h=>c.call(this,Object.assign(Object.assign({},this.attributes),h)));Object.entries(u[0]).map(([h])=>{const f=u.map(g=>g[h]),d=o[h];if(d){const g=d.animate(Sm(f),e);g&&(Ym(d,g),n.push(g))}})}}};this.compositeShapes.forEach(([o,A])=>{const l=jm(this.shapeMap,A);s(l,o)})}}return Cm(n)}getShape(t){return this.shapeMap[t]}setVisibility(){const{visibility:t}=this.attributes;vl(this,t)}destroy(){this.shapeMap={},this.animateMap={},super.destroy()}}function Ym(r,t){t==null||t.finished.then(()=>{const e=r.activeAnimations.findIndex(n=>n===t);e>-1&&r.activeAnimations.splice(e,1)})}function yb(r){if(!r)return{};if("x"in r||"y"in r||"z"in r){const{x:t=0,y:e=0,z:n,transform:i}=r,a=iB(t,e,n,i);a&&(r.transform=a)}return r}var KL=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class io extends vh{constructor(t){super(pi({style:io.defaultStyleProps},t))}isTextStyle(t){return gh(t,"label")}isBackgroundStyle(t){return gh(t,"background")}getTextStyle(t){const e=this.getGraphicStyle(t),{padding:n}=e,i=KL(e,["padding"]);return fb(i,"background")}getBackgroundStyle(t){if(t.background===!1)return!1;const e=this.getGraphicStyle(t),{wordWrap:n,wordWrapWidth:i,padding:a}=e,s=Ir(e,"background"),{min:[o,A],center:[l,c],halfExtents:[u,h]}=this.shapeMap.text.getGeometryBounds(),[f,d,g,v]=La(a),y=u*2+v+d,{width:E,height:C}=s;E&&C?Object.assign(s,{x:l-Number(E)/2,y:c-Number(C)/2}):Object.assign(s,{x:o-v,y:A-f,width:n?Math.min(y,i+v+d):y,height:h*2+f+g});const{radius:I}=s;if(typeof I=="string"&&I.endsWith("%")){const R=Number(I.replace("%",""))/100;s.radius=Math.min(+s.width,+s.height)*R}return s}render(t=this.parsedAttributes,e=this){this.upsert("text",hl,this.getTextStyle(t),e),this.upsert("background",xi,this.getBackgroundStyle(t),e)}getGeometryBounds(){return(this.getShape("background")||this.getShape("text")).getGeometryBounds()}}io.defaultStyleProps={padding:0,fontSize:12,fontFamily:"system-ui, sans-serif",wordWrap:!0,maxLines:1,wordWrapWidth:128,textOverflow:"...",textBaseline:"middle",backgroundOpacity:.75,backgroundZIndex:-1,backgroundLineWidth:0};class kc extends vh{constructor(t){super(pi({style:kc.defaultStyleProps},t))}getBadgeStyle(t){return this.getGraphicStyle(t)}render(t=this.parsedAttributes,e=this){this.upsert("label",io,this.getBadgeStyle(t),e)}getGeometryBounds(){const t=this.getShape("label");return(t.getShape("background")||t.getShape("text")).getGeometryBounds()}}kc.defaultStyleProps={padding:[2,4,2,4],fontSize:10,wordWrap:!1,backgroundRadius:"50%",backgroundOpacity:1};function zL(r,t=!0){const e=[];return r.forEach((n,i)=>{e.push([i===0?"M":"L",...n])}),t&&e.push(["Z"]),e}const wb={M:["x","y"],m:["dx","dy"],H:["x"],h:["dx"],V:["y"],v:["dy"],L:["x","y"],l:["dx","dy"],Z:[],z:[],C:["x1","y1","x2","y2","x","y"],c:["dx1","dy1","dx2","dy2","dx","dy"],S:["x2","y2","x","y"],s:["dx2","dy2","dx","dy"],Q:["x1","y1","x","y"],q:["dx1","dy1","dx","dy"],T:["x","y"],t:["dx","dy"],A:["rx","ry","rotation","large-arc","sweep","x","y"],a:["rx","ry","rotation","large-arc","sweep","dx","dy"]};function VL(r){const t=r.replace(/[\n\r]/g,"").replace(/-/g," -").replace(/(\d*\.)(\d+)(?=\.)/g,"$1$2 ").trim().split(/\s*,|\s+/),e=[];let n="",i={};for(;t.length>0;){let a=t.shift();a in wb?n=a:t.unshift(a),i={type:n},wb[n].forEach(A=>{a=t.shift(),i[A]=a}),n==="M"?n="L":n==="m"&&(n="l");const[s,...o]=Object.values(i);e.push([s,...o.map(Number)])}return e}function WL(r){const t=[];return(typeof r=="string"?VL(r):r).forEach(n=>{const i=n[0];if(i==="Z"){t.push(t[0]);return}if(i!=="A")for(let a=1;a<n.length;a=a+2)t.push([n[a],n[a+1],0]);else{const a=n.length;t.push([n[a-2],n[a-1],0])}}),t}const Eb=r=>{if(r.length<2)return[["M",0,0],["L",0,0]];const t=r[0],e=r[1],n=r[r.length-1],i=r[r.length-2];r.unshift(i,n),r.push(t,e);const a=[["M",n[0],n[1]]];for(let s=1;s<r.length-2;s+=1){const[o,A]=r[s-1],[l,c]=r[s],[u,h]=r[s+1],[f,d]=s!==r.length-2?r[s+2]:[u,h],g=l+(u-o)/6,v=c+(h-A)/6,y=u-(f-l)/6,E=h-(d-c)/6;a.push(["C",g,v,y,E,u,h])}return a};function ZL(r,t,e,n,i,a,s){const[o,A]=Lo(r,t),l={textAlign:t==="left"?"right":t==="right"?"left":"center",textBaseline:t==="top"?"bottom":t==="bottom"?"top":"middle",transform:[["translate",o+e,A+n]]};if(t==="center"||!i)return l;const c=WL(a);if(!c||c.length<=3)return l;const u=c.map((d,g)=>{const v=d,y=c[(g+1)%c.length];return Rr(v,y)?null:[v,y]}).filter(Boolean),h=xL([o,A],u),f=ob([o,A],h);if(f&&h&&(l.transform=[["translate",f[0]+e,f[1]+n]],s)){const d=Math.atan((h[0][1]-h[1][1])/(h[0][0]-h[1][0]));l.transform.push(["rotate",d/Math.PI*180]),l.textAlign="center",(t==="right"||t==="left")&&(d>0?l.textBaseline=t==="right"?"bottom":"top":l.textBaseline=t==="right"?"top":"bottom")}return l}var jL=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class ph extends vh{constructor(t){super(pi({style:ph.defaultStyleProps},t))}getLabelStyle(t){if(!t.label||!t.d||t.d.length===0)return!1;const e=Ir(this.getGraphicStyle(t),"label"),{maxWidth:n,offsetX:i,offsetY:a,autoRotate:s,placement:o,closeToPath:A}=e,l=jL(e,["maxWidth","offsetX","offsetY","autoRotate","placement","closeToPath"]),c=this.shapeMap.key,u=c==null?void 0:c.getRenderBounds();return Object.assign(ZL(u,o,i,a,A,t.d,s),{wordWrapWidth:mb(u,n)},l)}getKeyStyle(t){return this.getGraphicStyle(t)}render(t,e){this.upsert("key",Pi,this.getKeyStyle(t),e),this.upsert("label",io,this.getLabelStyle(t),e)}}ph.defaultStyleProps={label:!0,labelPlacement:"bottom",labelCloseToPath:!0,labelAutoRotate:!0,labelOffsetX:0,labelOffsetY:0};function YL(r){const t=[],e=n=>{n!=null&&n.children.length&&n.children.forEach(i=>{t.push(i),e(i)})};return e(r),t}function XL(r){const t=[];let e=r.parentNode;for(;e;)t.push(e),e=e.parentNode;return t}class Xm extends $u{constructor(t){super(t),this.onMounted=()=>{this.handleRadius()},this.onAttrModified=()=>{this.handleRadius()},Qc=this,this.isMutationObserved=!0,this.addEventListener(yn.MOUNTED,this.onMounted),this.addEventListener(yn.ATTR_MODIFIED,this.onAttrModified)}handleRadius(){const{radius:t,clipPath:e,width:n=0,height:i=0}=this.attributes;if(t&&n&&i){const[a,s]=this.getBounds().min,o={x:a,y:s,radius:t,width:n,height:i};if(e)Object.assign(this.parsedStyle.clipPath.style,o);else{const A=new xi({style:o});this.style.clipPath=A}}else e&&(this.style.clipPath=null)}}const Jm=new WeakMap;let Qc=null;const qm=r=>{if(Qc&&XL(Qc).includes(r)){const t=Jm.get(r);t?t.includes(Qc)||t.push(Qc):Jm.set(r,[Qc])}},$m=r=>{const t=Jm.get(r);t&&t.forEach(e=>e.handleRadius())};class Bb extends vh{constructor(t){super(t)}isImage(){const{src:t}=this.attributes;return!!t}getIconStyle(t=this.attributes){const{width:e=0,height:n=0}=t,i=this.getGraphicStyle(t);return this.isImage()?Object.assign({x:-e/2,y:-n/2},i):Object.assign({textBaseline:"middle",textAlign:"center"},i)}render(t=this.attributes,e=this){this.upsert("icon",this.isImage()?Xm:hl,this.getIconStyle(t),e)}}class bb extends vh{get context(){return this.config.context}get parsedAttributes(){return this.attributes}onframe(){}animate(t,e){const n=super.animate(t,e);return n&&(n.onframe=()=>this.onframe(),n.finished.then(()=>this.onframe())),n}}var jd=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class Cs extends bb{constructor(t){super(pi({style:Cs.defaultStyleProps},t)),this.type="node"}getSize(t=this.attributes){const{size:e}=t;return ka(e)}getKeyStyle(t){const e=this.getGraphicStyle(t);return Object.assign(fb(e,["label","halo","icon","badge","port"]))}getLabelStyle(t){if(t.label===!1||!t.labelText)return!1;const e=Ir(this.getGraphicStyle(t),"label"),{placement:n,maxWidth:i,offsetX:a,offsetY:s}=e,o=jd(e,["placement","maxWidth","offsetX","offsetY"]),A=this.getShape("key").getLocalBounds();return Object.assign(ix(A,n,a,s),{wordWrapWidth:mb(A,i)},o)}getHaloStyle(t){if(t.halo===!1)return!1;const e=this.getKeyStyle(t),{fill:n}=e,i=jd(e,["fill"]),a=Ir(this.getGraphicStyle(t),"halo");return Object.assign(Object.assign(Object.assign({},i),{stroke:n}),a)}getIconStyle(t){if(t.icon===!1||!t.iconText&&!t.iconSrc)return!1;const e=Ir(this.getGraphicStyle(t),"icon");return Object.assign(LL(t.size,e),e)}getBadgesStyle(t){var e;const n=jm(this.shapeMap,"badge-"),i={};if(Object.keys(n).forEach(u=>{i[u]=!1}),t.badge===!1||!(!((e=t.badges)===null||e===void 0)&&e.length))return i;const{badges:a=[],badgePalette:s,opacity:o=1}=t,A=jd(t,["badges","badgePalette","opacity"]),l=vb(s),c=Ir(this.getGraphicStyle(A),"badge");return a.forEach((u,h)=>{i[h]=Object.assign(Object.assign({backgroundFill:l?l[h%(l==null?void 0:l.length)]:void 0,opacity:o},c),this.getBadgeStyle(u))}),i}getBadgeStyle(t){const e=this.getShape("key"),{placement:n="top",offsetX:i,offsetY:a}=t,s=jd(t,["placement","offsetX","offsetY"]),o=ix(e.getLocalBounds(),n,i,a,!0);return Object.assign(Object.assign({},o),s)}getPortsStyle(t){var e;const n=this.getPorts(),i={};if(Object.keys(n).forEach(o=>{i[o]=!1}),t.port===!1||!(!((e=t.ports)===null||e===void 0)&&e.length))return i;const a=Ir(this.getGraphicStyle(t),"port"),{ports:s=[]}=t;return s.forEach((o,A)=>{const l=o.key||A,c=Object.assign(Object.assign({},a),o);if(ex(c))i[l]=!1;else{const[u,h]=this.getPortXY(t,o);i[l]=Object.assign({transform:[["translate",u,h]]},c)}}),i}getPortXY(t,e){const{placement:n="left"}=e,i=this.getShape("key");return Ay(JL(this.context,i),n)}getPorts(){return jm(this.shapeMap,"port-")}getCenter(){return this.getShape("key").getBounds().center}getIntersectPoint(t,e=!1){const n=this.getShape("key").getBounds();return BL(t,n,e)}drawHaloShape(t,e){const n=this.getHaloStyle(t),i=this.getShape("key");this.upsert("halo",i.constructor,n,e)}drawIconShape(t,e){const n=this.getIconStyle(t);this.upsert("icon",Bb,n,e),qm(this)}drawBadgeShapes(t,e){const n=this.getBadgesStyle(t);Object.keys(n).forEach(i=>{const a=n[i];this.upsert(`badge-${i}`,kc,a,e)})}drawPortShapes(t,e){const n=this.getPortsStyle(t);Object.keys(n).forEach(i=>{const a=n[i],s=`port-${i}`;this.upsert(s,Js,a,e)})}drawLabelShape(t,e){const n=this.getLabelStyle(t);this.upsert("label",io,n,e)}_drawKeyShape(t,e){return this.drawKeyShape(t,e)}render(t=this.parsedAttributes,e=this){this._drawKeyShape(t,e),this.getShape("key")&&(this.drawHaloShape(t,e),this.drawIconShape(t,e),this.drawBadgeShapes(t,e),this.drawLabelShape(t,e),this.drawPortShapes(t,e))}update(t){super.update(t),t&&("x"in t||"y"in t||"z"in t)&&$m(this)}onframe(){this.drawBadgeShapes(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this)}}Cs.defaultStyleProps={x:0,y:0,size:32,droppable:!0,draggable:!0,port:!0,ports:[],portZIndex:2,portLinkToCenter:!1,badge:!0,badges:[],badgeZIndex:3,halo:!1,haloDroppable:!1,haloLineDash:0,haloLineWidth:12,haloStrokeOpacity:.25,haloPointerEvents:"none",haloZIndex:-1,icon:!0,iconZIndex:1,label:!0,labelIsBillboard:!0,labelMaxWidth:"200%",labelPlacement:"bottom",labelWordWrap:!1,labelZIndex:0};function JL(r,t){if(!r)return t.getLocalBounds();const e=r.canvas.getLayer(),n=t.cloneNode();vl(n,"hidden"),e.appendChild(n);const i=n.getLocalBounds();return n.destroy(),i}class wl extends Cs{constructor(t){super(pi({style:wl.defaultStyleProps},t))}drawKeyShape(t,e){return this.upsert("key",Js,this.getKeyStyle(t),e)}getKeyStyle(t){const e=super.getKeyStyle(t);return Object.assign(Object.assign({},e),{r:Math.min(...this.getSize(t))/2})}getIconStyle(t){const e=super.getIconStyle(t),{r:n}=this.getShape("key").attributes,i=n*2*No;return e?Object.assign({width:i,height:i},e):!1}getIntersectPoint(t,e=!1){const n=this.getShape("key").getBounds();return zd(t,n,e)}}wl.defaultStyleProps={size:32};class Yd extends Cs{constructor(t){super(t)}get parsedAttributes(){return this.attributes}drawKeyShape(t,e){return this.upsert("key",ul,this.getKeyStyle(t),e)}getKeyStyle(t){const e=super.getKeyStyle(t);return Object.assign(Object.assign({},e),{points:this.getPoints(t)})}getIntersectPoint(t,e=!1){var n,i;const{points:a}=this.getShape("key").attributes,s=[+(((n=this.attributes)===null||n===void 0?void 0:n.x)||0),+(((i=this.attributes)===null||i===void 0?void 0:i.y)||0)];return sb(t,s,a,!0,e).point}}class qL extends Yd{constructor(t){super(t)}getPoints(t){const[e,n]=this.getSize(t);return Lk(e,n)}}var $L=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class Xd extends wl{constructor(t){super(pi({style:Xd.defaultStyleProps},t))}parseOuterR(){const{size:t}=this.parsedAttributes;return Math.min(...ka(t))/2}parseInnerR(){const{innerR:t}=this.parsedAttributes;return gn(t)?parseInt(t)/100*this.parseOuterR():t}drawDonutShape(t,e){const{donuts:n}=t;if(!(n!=null&&n.length))return;const i=n.map(u=>we(u)?{value:u}:u),a=Ir(this.getGraphicStyle(t),"donut"),s=vb(t.donutPalette);if(!s)return;const o=i.reduce((u,h)=>{var f;return u+((f=h.value)!==null&&f!==void 0?f:0)},0),A=this.parseOuterR(),l=this.parseInnerR();let c=0;i.forEach((u,h)=>{const{value:f=0,color:d=s[h%s.length]}=u,g=$L(u,["value","color"]),v=(o===0?1/i.length:f/o)*360;this.upsert(`round${h}`,Pi,Object.assign(Object.assign(Object.assign({},a),{d:nN(A,l,c,c+v),fill:d}),g),e),c+=v})}render(t,e=this){super.render(t,e),this.drawDonutShape(t,e)}}Xd.defaultStyleProps={innerR:"50%",donuts:[],donutPalette:"tableau"};const Jd=(r,t,e,n)=>[r+Math.sin(n)*e,t-Math.cos(n)*e],tN=(r,t,e,n)=>n<=0||e<=n?[["M",r-e,t],["A",e,e,0,1,1,r+e,t],["A",e,e,0,1,1,r-e,t],["Z"]]:[["M",r-e,t],["A",e,e,0,1,1,r+e,t],["A",e,e,0,1,1,r-e,t],["Z"],["M",r+n,t],["A",n,n,0,1,0,r-n,t],["A",n,n,0,1,0,r+n,t],["Z"]],eN=(r,t,e,n,i,a)=>{const[s,o]=[i/360*2*Math.PI,a/360*2*Math.PI],A=[Jd(r,t,n,s),Jd(r,t,e,s),Jd(r,t,e,o),Jd(r,t,n,o)],l=o-s>Math.PI?1:0;return[["M",A[0][0],A[0][1]],["L",A[1][0],A[1][1]],["A",e,e,0,l,1,A[2][0],A[2][1]],["L",A[3][0],A[3][1]],["A",n,n,0,l,0,A[0][0],A[0][1]],["Z"]]},nN=(r=0,t=0,e,n)=>{const[i,a]=[0,0];return Math.abs(e-n)%360<1e-6?tN(i,a,r,t):eN(i,a,r,t,e,n)};class qd extends Cs{constructor(t){super(pi({style:qd.defaultStyleProps},t))}drawKeyShape(t,e){return this.upsert("key",qu,this.getKeyStyle(t),e)}getKeyStyle(t){const e=super.getKeyStyle(t),[n,i]=this.getSize(t);return Object.assign(Object.assign({},e),{rx:n/2,ry:i/2})}getIconStyle(t){const e=super.getIconStyle(t),{rx:n,ry:i}=this.getShape("key").attributes,a=Math.min(+n,+i)*2*No;return e?Object.assign({width:a,height:a},e):!1}getIntersectPoint(t,e=!1){const n=this.getShape("key").getBounds();return zd(t,n,e)}}qd.defaultStyleProps={size:[45,35]};class rN extends Yd{constructor(t){super(t)}getOuterR(t){return t.outerR||Math.min(...this.getSize(t))/2}getPoints(t){return kk(this.getOuterR(t))}getIconStyle(t){const e=super.getIconStyle(t),n=this.getOuterR(t)*No;return e?Object.assign({width:n,height:n},e):!1}}function ao(r,t){if(!{}.hasOwnProperty.call(r,t))throw new TypeError("attempted to use private field on non-instance");return r}var iN=0;function aN(r){return"__private_"+iN+++"_"+r}var Hr=aN("renderState"),xb=function(){function r(t){(0,N.Z)(this,r),this.renderQueue=[],Object.defineProperty(this,Hr,{writable:!0,value:{restoreStack:[],prevObject:null,currentContext:new Map}}),this.clearFullScreenLastFrame=!1,this.clearFullScreen=!1,this.vpMatrix=ne(),this.dprMatrix=ne(),this.tmpMat4=ne(),this.vec3a=xt(),this.vec3b=xt(),this.vec3c=xt(),this.vec3d=xt(),this.canvasRendererPluginOptions=t}return(0,O.Z)(r,[{key:"apply",value:function(e,n){var i=this;this.context=e;var a=this.context,s=a.config,o=a.camera,A=a.renderingService,l=a.renderingContext,c=a.pathGeneratorFactory,u=s.renderer.getConfig().enableRenderingOptimization;s.renderer.getConfig().enableDirtyCheck=!1,s.renderer.getConfig().enableDirtyRectangleRendering=!1,this.pathGeneratorFactory=c;var h=e.contextService,f=l.root.ownerDocument.defaultView;A.hooks.init.tap(r.tag,function(){var v=h.getDPR(),y=s.width,E=s.height,C=h.getContext();i.clearRect(C,0,0,y*v,E*v,s.background)}),A.hooks.destroy.tap(r.tag,function(){i.renderQueue=[],ao(i,Hr)[Hr]={restoreStack:[],prevObject:null,currentContext:null}});var d=function(){var y,E=h.getContext(),C=h.getDPR(),I=s.width,R=s.height,K=i.canvasRendererPluginOptions,W=K.dirtyObjectNumThreshold,V=K.dirtyObjectRatioThreshold,J=A.getStats(),et=J.total,at=J.rendered,ct=at/et;i.clearFullScreen=i.clearFullScreenLastFrame||!((y=f.context.renderingPlugins[1])!==null&&y!==void 0&&y.isFirstTimeRenderingFinished)||A.disableDirtyRectangleRendering()||at>W&&ct>V,E&&(typeof E.resetTransform=="function"?E.resetTransform():E.setTransform(1,0,0,1,0,0),i.clearFullScreen&&i.clearRect(E,0,0,I*C,R*C,s.background))},g=function(y,E){for(var C=[y];C.length>0;){var I,R=C.pop();R.isVisible()&&!R.isCulled()&&(u?i.renderDisplayObjectOptimized(R,E,i.context,ao(i,Hr)[Hr],n):i.renderDisplayObject(R,E,i.context,ao(i,Hr)[Hr],n));for(var K=((I=R.sortable)===null||I===void 0||(I=I.sorted)===null||I===void 0?void 0:I.length)>0?R.sortable.sorted:R.childNodes,W=K.length-1;W>=0;W--)C.push(K[W])}};A.hooks.endFrame.tap(r.tag,function(){if(d(),l.root.childNodes.length===0){i.clearFullScreenLastFrame=!0;return}u=s.renderer.getConfig().enableRenderingOptimization,ao(i,Hr)[Hr]={restoreStack:[],prevObject:null,currentContext:ao(i,Hr)[Hr].currentContext},ao(i,Hr)[Hr].currentContext.clear(),i.clearFullScreenLastFrame=!1;var v=h.getContext(),y=h.getDPR();if(Rn(i.dprMatrix,[y,y,1]),de(i.vpMatrix,i.dprMatrix,o.getOrthoMatrix()),i.clearFullScreen)u?(v.save(),g(l.root,v),v.restore()):g(l.root,v);else{var E=i.safeMergeAABB(i.mergeDirtyAABBs(i.renderQueue));if(Yn.isEmpty(E)){i.renderQueue=[];return}var C=i.convertAABB2Rect(E),I=C.x,R=C.y,K=C.width,W=C.height,V=ye(i.vec3a,[I,R,0],i.vpMatrix),J=ye(i.vec3b,[I+K,R,0],i.vpMatrix),et=ye(i.vec3c,[I,R+W,0],i.vpMatrix),at=ye(i.vec3d,[I+K,R+W,0],i.vpMatrix),ct=Math.min(V[0],J[0],at[0],et[0]),pt=Math.min(V[1],J[1],at[1],et[1]),wt=Math.max(V[0],J[0],at[0],et[0]),Ct=Math.max(V[1],J[1],at[1],et[1]),Ht=Math.floor(ct),Rt=Math.floor(pt),St=Math.ceil(wt-ct),Ot=Math.ceil(Ct-pt);v.save(),i.clearRect(v,Ht,Rt,St,Ot,s.background),v.beginPath(),v.rect(Ht,Rt,St,Ot),v.clip(),v.setTransform(i.vpMatrix[0],i.vpMatrix[1],i.vpMatrix[4],i.vpMatrix[5],i.vpMatrix[12],i.vpMatrix[13]);var Gt=s.renderer.getConfig(),qt=Gt.enableDirtyRectangleRenderingDebug;qt&&f.dispatchEvent(new Wr(Fa.DIRTY_RECTANGLE,{dirtyRect:{x:Ht,y:Rt,width:St,height:Ot}}));var ae=E.getMin(),ue=(0,Q.Z)(ae,2),pe=ue[0],Ce=ue[1],Qe=E.getMax(),Re=(0,Q.Z)(Qe,2),nn=Re[0],mn=Re[1],on=l.root.ownerDocument.elementsFromBBox(pe,Ce,nn,mn);on.sort(function(er,kn){return er.sortable.renderOrder-kn.sortable.renderOrder}).forEach(function(er){er&&er.isVisible()&&!er.isCulled()&&i.renderDisplayObject(er,v,i.context,ao(i,Hr)[Hr],n)}),v.restore(),i.renderQueue.forEach(function(er){i.saveDirtyAABB(er)}),i.renderQueue=[]}ao(i,Hr)[Hr].restoreStack.forEach(function(){v.restore()}),ao(i,Hr)[Hr].restoreStack=[]}),A.hooks.render.tap(r.tag,function(v){i.clearFullScreen||i.renderQueue.push(v)})}},{key:"clearRect",value:function(e,n,i,a,s,o){e.clearRect(n,i,a,s),o&&(e.fillStyle=o,e.fillRect(n,i,a,s))}},{key:"renderDisplayObjectOptimized",value:function(e,n,i,a,s){var o=e.nodeName,A=!1,l=!1,c=this.context.styleRendererFactory[o],u=this.pathGeneratorFactory[o],h=e.parsedStyle.clipPath;if(h){A=!a.prevObject||!zr(h.getWorldTransform(),a.prevObject.getWorldTransform()),A&&(this.applyWorldTransform(n,h),a.prevObject=null);var f=this.pathGeneratorFactory[h.nodeName];f&&(n.save(),l=!0,n.beginPath(),f(n,h.parsedStyle),n.closePath(),n.clip())}if(c){A=!a.prevObject||!zr(e.getWorldTransform(),a.prevObject.getWorldTransform()),A&&this.applyWorldTransform(n,e);var d=!a.prevObject;if(!d){var g=a.prevObject.nodeName;o===Zt.TEXT?d=g!==Zt.TEXT:o===Zt.IMAGE?d=g!==Zt.IMAGE:d=g===Zt.TEXT||g===Zt.IMAGE}c.applyStyleToContext(n,e,d,a),a.prevObject=e}u&&(n.beginPath(),u(n,e.parsedStyle),o!==Zt.LINE&&o!==Zt.PATH&&o!==Zt.POLYLINE&&n.closePath()),c&&c.drawToContext(n,e,ao(this,Hr)[Hr],this,s),l&&n.restore(),e.dirty(!1)}},{key:"renderDisplayObject",value:function(e,n,i,a,s){var o=e.nodeName,A=a.restoreStack[a.restoreStack.length-1];A&&!(e.compareDocumentPosition(A)&vr.DOCUMENT_POSITION_CONTAINS)&&(n.restore(),a.restoreStack.pop());var l=this.context.styleRendererFactory[o],c=this.pathGeneratorFactory[o],u=e.parsedStyle.clipPath;if(u){this.applyWorldTransform(n,u);var h=this.pathGeneratorFactory[u.nodeName];h&&(n.save(),a.restoreStack.push(e),n.beginPath(),h(n,u.parsedStyle),n.closePath(),n.clip())}l&&(this.applyWorldTransform(n,e),n.save(),this.applyAttributesToContext(n,e)),c&&(n.beginPath(),c(n,e.parsedStyle),o!==Zt.LINE&&o!==Zt.PATH&&o!==Zt.POLYLINE&&n.closePath()),l&&(l.render(n,e.parsedStyle,e,i,this,s),n.restore()),e.dirty(!1)}},{key:"applyAttributesToContext",value:function(e,n){var i=n.parsedStyle,a=i.stroke,s=i.fill,o=i.opacity,A=i.lineDash,l=i.lineDashOffset;A&&e.setLineDash(A),Pe(l)||(e.lineDashOffset=l),Pe(o)||(e.globalAlpha*=o),!Pe(a)&&!Array.isArray(a)&&!a.isNone&&(e.strokeStyle=n.attributes.stroke),!Pe(s)&&!Array.isArray(s)&&!s.isNone&&(e.fillStyle=n.attributes.fill)}},{key:"convertAABB2Rect",value:function(e){var n=e.getMin(),i=e.getMax(),a=Math.floor(n[0]),s=Math.floor(n[1]),o=Math.ceil(i[0]),A=Math.ceil(i[1]),l=o-a,c=A-s;return{x:a,y:s,width:l,height:c}}},{key:"mergeDirtyAABBs",value:function(e){var n=new Yn;return e.forEach(function(i){var a=i.getRenderBounds();n.add(a);var s=i.renderable.dirtyRenderBounds;s&&n.add(s)}),n}},{key:"saveDirtyAABB",value:function(e){var n=e.renderable;n.dirtyRenderBounds||(n.dirtyRenderBounds=new Yn);var i=e.getRenderBounds();i&&n.dirtyRenderBounds.update(i.center,i.halfExtents)}},{key:"applyWorldTransform",value:function(e,n,i){i?(Ge(this.tmpMat4,n.getLocalTransform()),de(this.tmpMat4,i,this.tmpMat4),de(this.tmpMat4,this.vpMatrix,this.tmpMat4)):(Ge(this.tmpMat4,n.getWorldTransform()),de(this.tmpMat4,this.vpMatrix,this.tmpMat4)),e.setTransform(this.tmpMat4[0],this.tmpMat4[1],this.tmpMat4[4],this.tmpMat4[5],this.tmpMat4[12],this.tmpMat4[13])}},{key:"safeMergeAABB",value:function(){for(var e=new Yn,n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return i.forEach(function(s){e.add(s)}),e}}])}();xb.tag="CanvasRenderer";function $d(r,t,e,n,i,a,s){var o,A;if(r.image.nodeName==="rect"){var l=r.image.parsedStyle,c=l.width,u=l.height;A=n.contextService.getDPR();var h=n.config.offscreenCanvas;o=a.offscreenCanvasCreator.getOrCreateCanvas(h),o.width=c*A,o.height=u*A;var f=a.offscreenCanvasCreator.getOrCreateContext(h),d={restoreStack:[],prevObject:null,currentContext:new Map};r.image.forEach(function(v){i.renderDisplayObject(v,f,n,d,a)}),d.restoreStack.forEach(function(){f.restore()})}var g=s.getOrCreatePatternSync(t,r,e,o,A,t.getGeometryBounds().min,function(){t.dirty(),n.renderingService.dirty()});return g}function tg(r,t,e,n){var i;if(r.type===vs.LinearGradient||r.type===vs.RadialGradient){var a=t.getGeometryBounds(),s=a&&a.halfExtents[0]*2||1,o=a&&a.halfExtents[1]*2||1,A=a&&a.min||[0,0];i=n.getOrCreateGradient((0,D.Z)((0,D.Z)({type:r.type},r.value),{},{min:A,width:s,height:o}),e)}return i}var eg=["shadowBlur","shadowOffsetX","shadowOffsetY"],Cb=["lineCap","lineJoin","miterLimit"],Zr={globalAlpha:1,shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",filter:"none",globalCompositeOperation:"source-over",strokeStyle:"#000",strokeOpacity:1,lineWidth:1,lineDash:[],lineDashOffset:0,lineCap:"butt",lineJoin:"miter",miterLimit:10,fillStyle:"#000",fillOpacity:1},Sb={};function Cr(r,t,e,n){var i=n.has(t)?n.get(t):Zr[t];return i!==e&&(t==="lineDash"?r.setLineDash(e):r[t]=e,n.set(t,e)),i}var sN=function(){function r(t){(0,N.Z)(this,r),this.imagePool=t}return(0,O.Z)(r,[{key:"applyAttributesToContext",value:function(e,n){}},{key:"render",value:function(e,n,i,a,s,o){}},{key:"applyCommonStyleToContext",value:function(e,n,i,a){var s=i?Sb:a.prevObject.parsedStyle,o=n.parsedStyle;(i||o.opacity!==s.opacity)&&Cr(e,"globalAlpha",Pe(o.opacity)?Zr.globalAlpha:o.opacity,a.currentContext),(i||o.blend!==s.blend)&&Cr(e,"globalCompositeOperation",Pe(o.blend)?Zr.globalCompositeOperation:o.blend,a.currentContext)}},{key:"applyStrokeFillStyleToContext",value:function(e,n,i,a){var s=i?Sb:a.prevObject.parsedStyle,o=n.parsedStyle,A=o.lineWidth,l=A===void 0?Zr.lineWidth:A,c=o.fill&&!o.fill.isNone,u=o.stroke&&!o.stroke.isNone&&l>0;if(u){if(i||n.attributes.stroke!==a.prevObject.attributes.stroke){var h=!Pe(o.stroke)&&!Array.isArray(o.stroke)&&!o.stroke.isNone?n.attributes.stroke:Zr.strokeStyle;Cr(e,"strokeStyle",h,a.currentContext)}(i||o.lineWidth!==s.lineWidth)&&Cr(e,"lineWidth",Pe(o.lineWidth)?Zr.lineWidth:o.lineWidth,a.currentContext),(i||o.lineDash!==s.lineDash)&&Cr(e,"lineDash",o.lineDash||Zr.lineDash,a.currentContext),(i||o.lineDashOffset!==s.lineDashOffset)&&Cr(e,"lineDashOffset",Pe(o.lineDashOffset)?Zr.lineDashOffset:o.lineDashOffset,a.currentContext);for(var f=0;f<Cb.length;f++){var d=Cb[f];(i||o[d]!==s[d])&&Cr(e,d,Pe(o[d])?Zr[d]:o[d],a.currentContext)}}if(c&&(i||n.attributes.fill!==a.prevObject.attributes.fill)){var g=!Pe(o.fill)&&!Array.isArray(o.fill)&&!o.fill.isNone?n.attributes.fill:Zr.fillStyle;Cr(e,"fillStyle",g,a.currentContext)}}},{key:"applyStyleToContext",value:function(e,n,i,a){var s=n.nodeName;this.applyCommonStyleToContext(e,n,i,a),s===Zt.IMAGE||this.applyStrokeFillStyleToContext(e,n,i,a)}},{key:"applyShadowAndFilterStyleToContext",value:function(e,n,i,a){var s=n.parsedStyle;if(i){Cr(e,"shadowColor",s.shadowColor.toString(),a.currentContext);for(var o=0;o<eg.length;o++){var A=eg[o];Cr(e,A,s[A]||Zr[A],a.currentContext)}}s.filter&&s.filter.length&&Cr(e,"filter",n.attributes.filter,a.currentContext)}},{key:"clearShadowAndFilterStyleForContext",value:function(e,n,i,a){var s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;if(n){Cr(e,"shadowColor",Zr.shadowColor,a.currentContext);for(var o=0;o<eg.length;o++){var A=eg[o];Cr(e,A,Zr[A],a.currentContext)}}if(i)if(n&&s){var l=e.filter;!Pe(l)&&l.indexOf("drop-shadow")>-1&&Cr(e,"filter",l.replace(/drop-shadow\([^)]*\)/,"").trim()||Zr.filter,a.currentContext)}else Cr(e,"filter",Zr.filter,a.currentContext)}},{key:"fillToContext",value:function(e,n,i,a,s){var o=this,A=n.parsedStyle,l=A.fill,c=A.fillRule,u=null;if(Array.isArray(l)&&l.length>0)l.forEach(function(f){var d=Cr(e,"fillStyle",tg(f,n,e,o.imagePool),i.currentContext);u=u!=null?u:d,c?e.fill(c):e.fill()});else{if(Bo(l)){var h=$d(l,n,e,n.ownerDocument.defaultView.context,a,s,this.imagePool);h&&(e.fillStyle=h,u=!0)}c?e.fill(c):e.fill()}u!==null&&Cr(e,"fillStyle",u,i.currentContext)}},{key:"strokeToContext",value:function(e,n,i,a,s){var o=this,A=n.parsedStyle.stroke,l=null;if(Array.isArray(A)&&A.length>0)A.forEach(function(h){var f=Cr(e,"strokeStyle",tg(h,n,e,o.imagePool),i.currentContext);l=l!=null?l:f,e.stroke()});else{if(Bo(A)){var c=$d(A,n,e,n.ownerDocument.defaultView.context,a,s,this.imagePool);if(c){var u=Cr(e,"strokeStyle",c,i.currentContext);l=l!=null?l:u}}e.stroke()}l!==null&&Cr(e,"strokeStyle",l,i.currentContext)}},{key:"drawToContext",value:function(e,n,i,a,s){var o,A=n.nodeName,l=n.parsedStyle,c=l.opacity,u=c===void 0?Zr.globalAlpha:c,h=l.fillOpacity,f=h===void 0?Zr.fillOpacity:h,d=l.strokeOpacity,g=d===void 0?Zr.strokeOpacity:d,v=l.lineWidth,y=v===void 0?Zr.lineWidth:v,E=l.fill&&!l.fill.isNone,C=l.stroke&&!l.stroke.isNone&&y>0;if(!(!E&&!C)){var I=!Pe(l.shadowColor)&&l.shadowBlur>0,R=l.shadowType==="inner",K=((o=l.fill)===null||o===void 0?void 0:o.alpha)===0,W=!!(l.filter&&l.filter.length),V=I&&C&&(A===Zt.PATH||A===Zt.LINE||A===Zt.POLYLINE||K||R),J=null;if(E){V||this.applyShadowAndFilterStyleToContext(e,n,I,i);var et=u*f;J=Cr(e,"globalAlpha",et,i.currentContext),this.fillToContext(e,n,i,a,s),V||this.clearShadowAndFilterStyleForContext(e,I,W,i)}if(C){var at=!1,ct=u*g,pt=Cr(e,"globalAlpha",ct,i.currentContext);if(J=E?J:pt,V&&(this.applyShadowAndFilterStyleToContext(e,n,I,i),at=!0,R)){var wt=e.globalCompositeOperation;e.globalCompositeOperation="source-atop",this.strokeToContext(e,n,i,a,s),e.globalCompositeOperation=wt,this.clearShadowAndFilterStyleForContext(e,I,W,i,!0)}this.strokeToContext(e,n,i,a,s),at&&this.clearShadowAndFilterStyleForContext(e,I,W,i)}J!==null&&Cr(e,"globalAlpha",J,i.currentContext)}}}])}(),Ss=function(r){function t(){return(0,N.Z)(this,t),(0,U.Z)(this,t,arguments)}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"render",value:function(n,i,a,s,o,A){var l=i.fill,c=i.fillRule,u=i.opacity,h=u===void 0?1:u,f=i.fillOpacity,d=f===void 0?1:f,g=i.stroke,v=i.strokeOpacity,y=v===void 0?1:v,E=i.lineWidth,C=E===void 0?1:E,I=i.lineCap,R=i.lineJoin,K=i.shadowType,W=i.shadowColor,V=i.shadowBlur,J=i.filter,et=i.miterLimit,at=l&&!l.isNone,ct=g&&!g.isNone&&C>0,pt=(l==null?void 0:l.alpha)===0,wt=!!(J&&J.length),Ct=!Pe(W)&&V>0,Ht=a.nodeName,Rt=K==="inner",St=ct&&Ct&&(Ht===Zt.PATH||Ht===Zt.LINE||Ht===Zt.POLYLINE||pt||Rt);at&&(n.globalAlpha=h*d,St||ng(a,n,Ct),Mb(n,a,l,c,s,o,A,this.imagePool),St||this.clearShadowAndFilter(n,wt,Ct)),ct&&(n.globalAlpha=h*y,n.lineWidth=C,Pe(et)||(n.miterLimit=et),Pe(I)||(n.lineCap=I),Pe(R)||(n.lineJoin=R),St&&(Rt&&(n.globalCompositeOperation="source-atop"),ng(a,n,!0),Rt&&(ty(n,a,g,s,o,A,this.imagePool),n.globalCompositeOperation=Zr.globalCompositeOperation,this.clearShadowAndFilter(n,wt,!0))),ty(n,a,g,s,o,A,this.imagePool))}},{key:"clearShadowAndFilter",value:function(n,i,a){if(a&&(n.shadowColor="transparent",n.shadowBlur=0),i){var s=n.filter;!Pe(s)&&s.indexOf("drop-shadow")>-1&&(n.filter=s.replace(/drop-shadow\([^)]*\)/,"").trim()||"none")}}}])}(sN);function ng(r,t,e){var n=r.parsedStyle,i=n.filter,a=n.shadowColor,s=n.shadowBlur,o=n.shadowOffsetX,A=n.shadowOffsetY;i&&i.length&&(t.filter=r.style.filter),e&&(t.shadowColor=a.toString(),t.shadowBlur=s||0,t.shadowOffsetX=o||0,t.shadowOffsetY=A||0)}function Mb(r,t,e,n,i,a,s,o){var A=arguments.length>8&&arguments[8]!==void 0?arguments[8]:!1;Array.isArray(e)?e.forEach(function(l){r.fillStyle=tg(l,t,r,o),A||(n?r.fill(n):r.fill())}):(Bo(e)&&(r.fillStyle=$d(e,t,r,i,a,s,o)),A||(n?r.fill(n):r.fill()))}function ty(r,t,e,n,i,a,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1;Array.isArray(e)?e.forEach(function(A){r.strokeStyle=tg(A,t,r,s),o||r.stroke()}):(Bo(e)&&(r.strokeStyle=$d(e,t,r,n,i,a,s)),o||r.stroke())}function oN(r,t){var e=(0,Q.Z)(r,4),n=e[0],i=e[1],a=e[2],s=e[3],o=(0,Q.Z)(t,4),A=o[0],l=o[1],c=o[2],u=o[3],h=Math.max(n,A),f=Math.max(i,l),d=Math.min(n+a,A+c),g=Math.min(i+s,l+u);return d<=h||g<=f?null:[h,f,d-h,g-f]}function AN(r,t){var e=ye(xt(),[r[0],r[1],0],t),n=ye(xt(),[r[0]+r[2],r[1],0],t),i=ye(xt(),[r[0],r[1]+r[3],0],t),a=ye(xt(),[r[0]+r[2],r[1]+r[3],0],t);return[Math.min(e[0],n[0],i[0],a[0]),Math.min(e[1],n[1],i[1],a[1]),Math.max(e[0],n[0],i[0],a[0])-Math.min(e[0],n[0],i[0],a[0]),Math.max(e[1],n[1],i[1],a[1])-Math.min(e[1],n[1],i[1],a[1])]}var Tb=function(r){function t(){return(0,N.Z)(this,t),(0,U.Z)(this,t,arguments)}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"renderDownSampled",value:function(n,i,a,s){var o=s.src,A=s.imageCache;if(!A.downSampled){this.imagePool.createDownSampledImage(o,a).then(function(){a.ownerDocument&&(a.dirty(),a.ownerDocument.defaultView.context.renderingService.dirty())}).catch(function(l){console.error(l)});return}n.drawImage(A.downSampled,Math.floor(s.drawRect[0]),Math.floor(s.drawRect[1]),Math.ceil(s.drawRect[2]),Math.ceil(s.drawRect[3]))}},{key:"renderTile",value:function(n,i,a,s){var o=s.src,A=s.imageCache,l=s.imageRect,c=s.drawRect,u=A.size,h=n.getTransform(),f=h.a,d=h.b,g=h.c,v=h.d,y=h.e,E=h.f;if(n.resetTransform(),!(A!=null&&A.gridSize)){this.imagePool.createImageTiles(o,[],function(){a.ownerDocument&&(a.dirty(),a.ownerDocument.defaultView.context.renderingService.dirty())},a).catch(function(Ct){console.error(Ct)});return}for(var C=[u[0]/l[2],u[1]/l[3]],I=[A.tileSize[0]/C[0],A.tileSize[1]/C[1]],R=[Math.floor((c[0]-l[0])/I[0]),Math.ceil((c[0]+c[2]-l[0])/I[0])],K=R[0],W=R[1],V=[Math.floor((c[1]-l[1])/I[1]),Math.ceil((c[1]+c[3]-l[1])/I[1])],J=V[0],et=V[1],at=J;at<=et;at++)for(var ct=K;ct<=W;ct++){var pt=A.tiles[at][ct];if(pt){var wt=[Math.floor(l[0]+pt.tileX*I[0]),Math.floor(l[1]+pt.tileY*I[1]),Math.ceil(I[0]),Math.ceil(I[1])];n.drawImage(pt.data,wt[0],wt[1],wt[2],wt[3])}}n.setTransform(f,d,g,v,y,E)}},{key:"render",value:function(n,i,a){var s=i.x,o=s===void 0?0:s,A=i.y,l=A===void 0?0:A,c=i.width,u=i.height,h=i.src,f=i.shadowColor,d=i.shadowBlur,g=this.imagePool.getImageSync(h,a),v=g==null?void 0:g.img,y=c,E=u;if(v){y||(y=v.width),E||(E=v.height);var C=!Pe(f)&&d>0;ng(a,n,C);try{var I=a.ownerDocument.defaultView.getContextService().getDomElement(),R=I.width,K=I.height,W=n.getTransform(),V=W.a,J=W.b,et=W.c,at=W.d,ct=W.e,pt=W.f,wt=je(V,et,0,0,J,at,0,0,0,0,1,0,ct,pt,0,1),Ct=AN([o,l,y,E],wt),Ht=oN([0,0,R,K],Ct);if(!Ht)return;if(!a.ownerDocument.defaultView.getConfig().enableLargeImageOptimization){t.renderFull(n,i,a,{image:v,drawRect:[o,l,y,E]});return}var Rt=Ct[2]/g.size[0];if(Rt<(g.downSamplingRate||.5)){this.renderDownSampled(n,i,a,{src:h,imageCache:g,drawRect:[o,l,y,E]});return}if(!ImagePool.isSupportTile){t.renderFull(n,i,a,{image:v,drawRect:[o,l,y,E]});return}this.renderTile(n,i,a,{src:h,imageCache:g,imageRect:Ct,drawRect:Ht})}catch(St){}}}},{key:"drawToContext",value:function(n,i,a,s,o){this.render(n,i.parsedStyle,i)}}],[{key:"renderFull",value:function(n,i,a,s){n.drawImage(s.image,Math.floor(s.drawRect[0]),Math.floor(s.drawRect[1]),Math.ceil(s.drawRect[2]),Math.ceil(s.drawRect[3]))}}])}(Ss),Fb=function(r){function t(){return(0,N.Z)(this,t),(0,U.Z)(this,t,arguments)}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"render",value:function(n,i,a,s,o,A){a.getBounds();var l=i.lineWidth,c=l===void 0?1:l,u=i.textAlign,h=u===void 0?"start":u,f=i.textBaseline,d=f===void 0?"alphabetic":f,g=i.lineJoin,v=g===void 0?"miter":g,y=i.miterLimit,E=y===void 0?10:y,C=i.letterSpacing,I=C===void 0?0:C,R=i.stroke,K=i.fill,W=i.fillRule,V=i.fillOpacity,J=V===void 0?1:V,et=i.strokeOpacity,at=et===void 0?1:et,ct=i.opacity,pt=ct===void 0?1:ct,wt=i.metrics,Ct=i.x,Ht=Ct===void 0?0:Ct,Rt=i.y,St=Rt===void 0?0:Rt,Ot=i.dx,Gt=i.dy,qt=i.shadowColor,ae=i.shadowBlur,ue=i.textDecorationLine,pe=wt.font,Ce=wt.lines,Qe=wt.height,Re=wt.lineHeight,nn=wt.lineMetrics;n.font=pe,n.lineWidth=c,n.textAlign=h==="middle"?"center":h;var mn=d;mn==="alphabetic"&&(mn="bottom"),n.lineJoin=v,Pe(E)||(n.miterLimit=E);var on=St;d==="middle"?on+=-Qe/2-Re/2:d==="bottom"||d==="alphabetic"||d==="ideographic"?on+=-Qe:(d==="top"||d==="hanging")&&(on+=-Re);var er=Ht+(Ot||0);on+=Gt||0,Ce.length===1&&(mn==="bottom"?(mn="middle",on-=.5*Qe):mn==="top"&&(mn="middle",on+=.5*Qe)),n.textBaseline=mn;var kn=!Pe(qt)&&ae>0;ng(a,n,kn);for(var Cn=0;Cn<Ce.length;Cn++){var gr=c/2+er;on+=Re,!Pe(R)&&!R.isNone&&c&&this.drawLetterSpacing(n,a,Ce[Cn],nn[Cn],h,gr,on,I,K,W,J,R,at,pt,!0,s,o,A),Pe(K)||this.drawLetterSpacing(n,a,Ce[Cn],nn[Cn],h,gr,on,I,K,W,J,R,at,pt,!1,s,o,A)}ue&&ue!=="none"&&this.drawTextDecorations(n,i,a,Ce,Re,er,St+(Gt||0),s,o,A)}},{key:"drawLetterSpacing",value:function(n,i,a,s,o,A,l,c,u,h,f,d,g,v,y,E,C,I){if(c===0){y?this.strokeText(n,i,a,A,l,d,g,E,C,I):this.fillText(n,i,a,A,l,u,h,f,v,E,C,I);return}var R=n.textAlign;n.textAlign="left";var K=A;o==="center"||o==="middle"?K=A-s.width/2:(o==="right"||o==="end")&&(K=A-s.width);for(var W=Array.from(a),V=n.measureText(a).width,J=0,et=0;et<W.length;++et){var at=W[et];y?this.strokeText(n,i,at,K,l,d,g,E,C,I):this.fillText(n,i,at,K,l,u,h,f,v,E,C,I),J=n.measureText(a.substring(et+1)).width,K+=V-J+c,V=J}n.textAlign=R}},{key:"fillText",value:function(n,i,a,s,o,A,l,c,u,h,f,d){Mb(n,i,A,l,h,f,d,this.imagePool,!0);var g,v=!Pe(c)&&c!==1;v&&(g=n.globalAlpha,n.globalAlpha=c*u),n.fillText(a,s,o),v&&(n.globalAlpha=g)}},{key:"strokeText",value:function(n,i,a,s,o,A,l,c,u,h){ty(n,i,A,c,u,h,this.imagePool,!0);var f,d=!Pe(l)&&l!==1;d&&(f=n.globalAlpha,n.globalAlpha=l),n.strokeText(a,s,o),d&&(n.globalAlpha=f)}},{key:"drawTextDecorations",value:function(n,i,a,s,o,A,l,c,u,h){var f=i.textDecorationLine,d=i.textDecorationColor,g=i.textDecorationStyle,v=i.textDecorationThickness,y=v===void 0?1:v,E=i.textAlign,C=E===void 0?"start":E,I=i.lineWidth,R=I===void 0?1:I,K=i.metrics;if(!(!f||f==="none")){var W=K.lineMetrics,V=f.split(" ");switch(n.lineWidth=y,d&&(n.strokeStyle="rgba(".concat(d.r,", ").concat(d.g,", ").concat(d.b,", ").concat(d.alpha,")")),g){case"dashed":n.setLineDash([5,5]);break;case"dotted":n.setLineDash([2,2]);break;case"wavy":n.setLineDash([]);break;default:n.setLineDash([]);break}var J=l,et=i.textBaseline,at=et===void 0?"alphabetic":et;at==="middle"?J+=-K.height/2-o/2:at==="bottom"||at==="alphabetic"||at==="ideographic"?J+=-K.height:(at==="top"||at==="hanging")&&(J+=-o);for(var ct=0;ct<s.length;ct++){J+=o;var pt=W[ct];if(pt){var wt=R/2,Ct=A,Ht=A+pt.width;C==="center"||C==="middle"?(Ct=A-pt.width/2,Ht=A+pt.width/2):(C==="right"||C==="end")&&(Ct=A-pt.width,Ht=A),Ct+=wt,Ht+=wt;var Rt=(0,Gs.Z)(V),St;try{for(Rt.s();!(St=Rt.n()).done;){var Ot=St.value,Gt=J;switch(Ot){case"underline":Gt+=2;break;case"overline":Gt-=o-2;break;case"line-through":Gt-=o/2;break;default:continue}g==="wavy"?this.drawWavyLine(n,Ct,Ht,Gt):(n.beginPath(),n.moveTo(Ct,Gt),n.lineTo(Ht,Gt),n.stroke())}}catch(qt){Rt.e(qt)}finally{Rt.f()}}}n.setLineDash([])}}},{key:"drawWavyLine",value:function(n,i,a,s){var o=2,A=10,l=Math.floor((a-i)/A);n.beginPath(),n.moveTo(i,s);for(var c=0;c<l;c++){var u=i+c*A+A/4,h=s+o,f=i+c*A+A/2,d=s;n.quadraticCurveTo(u,h,f,d);var g=i+c*A+A*3/4,v=s-o,y=i+(c+1)*A,E=s;n.quadraticCurveTo(g,v,y,E)}n.stroke()}},{key:"drawToContext",value:function(n,i,a,s,o){this.render(n,i.parsedStyle,i,i.ownerDocument.defaultView.context,s,o)}}])}(Ss),Ob=function(r){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,N.Z)(this,t),e=(0,U.Z)(this,t),e.name="canvas-renderer",e.options=n,e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"init",value:function(){var n,i=(0,D.Z)({dirtyObjectNumThreshold:500,dirtyObjectRatioThreshold:.8},this.options),a=this.context.imagePool,s=new Ss(a),o=(n={},(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(n,Zt.CIRCLE,s),Zt.ELLIPSE,s),Zt.RECT,s),Zt.IMAGE,new Tb(a)),Zt.TEXT,new Fb(a)),Zt.LINE,s),Zt.POLYLINE,s),Zt.POLYGON,s),Zt.PATH,s),Zt.GROUP,void 0),(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(n,Zt.HTML,void 0),Zt.MESH,void 0),Zt.FRAGMENT,void 0));this.context.defaultStyleRendererFactory=o,this.context.styleRendererFactory=o,this.addRenderingPlugin(new xb(i))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins(),delete this.context.defaultStyleRendererFactory,delete this.context.styleRendererFactory}}])}(ls),r9=Object.freeze({__proto__:null,CircleRenderer:Ss,DefaultRenderer:Ss,EllipseRenderer:Ss,ImageRenderer:Tb,LineRenderer:Ss,PathRenderer:Ss,Plugin:Ob,PolygonRenderer:Ss,PolylineRenderer:Ss,RectRenderer:Ss,TextRenderer:Fb}),lN=xt(),cN=xt(),uN=xt(),hN=ne(),Ib=function(){function r(){var t=this;(0,N.Z)(this,r),this.isHit=function(e,n,i,a){var s=t.context.pointInPathPickerFactory[e.nodeName];if(s){var o=An(hN,i),A=ye(cN,$t(uN,n[0],n[1],0),o);if(s(e,new ii(A[0],A[1]),a,t.isPointInPath,t.context,t.runtime))return!0}return!1},this.isPointInPath=function(e,n){var i=t.runtime.offscreenCanvasCreator.getOrCreateContext(t.context.config.offscreenCanvas),a=t.context.pathGeneratorFactory[e.nodeName];return a&&(i.beginPath(),a(i,e.parsedStyle),i.closePath()),i.isPointInPath(n.x,n.y)}}return(0,O.Z)(r,[{key:"apply",value:function(e,n){var i,a=this,s=e.renderingService,o=e.renderingContext;this.context=e,this.runtime=n;var A=(i=o.root)===null||i===void 0?void 0:i.ownerDocument;s.hooks.pick.tapPromise(r.tag,function(){var l=(0,Wa.Z)((0,ri.Z)().mark(function c(u){return(0,ri.Z)().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:return h.abrupt("return",a.pick(A,u));case 1:case"end":return h.stop()}},c)}));return function(c){return l.apply(this,arguments)}}()),s.hooks.pickSync.tap(r.tag,function(l){return a.pick(A,l)})}},{key:"pick",value:function(e,n){var i=n.topmost,a=n.position,s=a.x,o=a.y,A=$t(lN,s,o,0),l=e.elementsFromBBox(A[0],A[1],A[0],A[1]),c=[],u=(0,Gs.Z)(l),h;try{for(u.s();!(h=u.n()).done;){var f=h.value,d=f.getWorldTransform(),g=this.isHit(f,A,d,!1);if(g){var v=sE(f);if(v){var y=v.parsedStyle.clipPath,E=this.isHit(y,A,y.getWorldTransform(),!0);if(E){if(i)return n.picked=[f],n;c.push(f)}}else{if(i)return n.picked=[f],n;c.push(f)}}}}catch(C){u.e(C)}finally{u.f()}return n.picked=c,n}}])}();Ib.tag="CanvasPicker";function fN(r,t,e){var n=r.parsedStyle,i=n.cx,a=i===void 0?0:i,s=n.cy,o=s===void 0?0:s,A=n.r,l=n.fill,c=n.stroke,u=n.lineWidth,h=u===void 0?1:u,f=n.increasedLineWidthForHitTesting,d=f===void 0?0:f,g=n.pointerEvents,v=g===void 0?"auto":g,y=(h+d)/2,E=gi(a,o,t.x,t.y),C=il(v,l,c),I=(0,Q.Z)(C,2),R=I[0],K=I[1];return R&&K||e?E<=A+y:R?E<=A:K?E>=A-y&&E<=A+y:!1}function rg(r,t,e,n){return r/(e*e)+t/(n*n)}function dN(r,t,e){var n=r.parsedStyle,i=n.cx,a=i===void 0?0:i,s=n.cy,o=s===void 0?0:s,A=n.rx,l=n.ry,c=n.fill,u=n.stroke,h=n.lineWidth,f=h===void 0?1:h,d=n.increasedLineWidthForHitTesting,g=d===void 0?0:d,v=n.pointerEvents,y=v===void 0?"auto":v,E=t.x,C=t.y,I=il(y,c,u),R=(0,Q.Z)(I,2),K=R[0],W=R[1],V=(f+g)/2,J=(E-a)*(E-a),et=(C-o)*(C-o);return K&&W||e?rg(J,et,A+V,l+V)<=1:K?rg(J,et,A,l)<=1:W?rg(J,et,A-V,l-V)>=1&&rg(J,et,A+V,l+V)<=1:!1}function El(r,t,e,n,i,a){return i>=r&&i<=r+e&&a>=t&&a<=t+n}function gN(r,t,e,n,i,a,s){var o=i/2;return El(r-o,t-o,e,i,a,s)||El(r+e-o,t-o,i,n,a,s)||El(r+o,t+n-o,e,i,a,s)||El(r-o,t+o,i,n,a,s)}function ig(r,t,e,n,i,a,s,o){var A=(Math.atan2(o-t,s-r)+Math.PI*2)%(Math.PI*2),l={x:r+e*Math.cos(A),y:t+e*Math.sin(A)};return gi(l.x,l.y,s,o)<=a/2}function EA(r,t,e,n,i,a,s){var o=Math.min(r,e),A=Math.max(r,e),l=Math.min(t,n),c=Math.max(t,n),u=i/2;return a>=o-u&&a<=A+u&&s>=l-u&&s<=c+u?jA(r,t,e,n,a,s)<=i/2:!1}function Lb(r,t,e,n,i){var a=r.length;if(a<2)return!1;for(var s=0;s<a-1;s++){var o=r[s][0],A=r[s][1],l=r[s+1][0],c=r[s+1][1];if(EA(o,A,l,c,t,e,n))return!0}if(i){var u=r[0],h=r[a-1];if(EA(u[0],u[1],h[0],h[1],t,e,n))return!0}return!1}var vN=1e-6;function ey(r){return Math.abs(r)<vN?0:r<0?-1:1}function pN(r,t,e){return(e[0]-r[0])*(t[1]-r[1])===(t[0]-r[0])*(e[1]-r[1])&&Math.min(r[0],t[0])<=e[0]&&e[0]<=Math.max(r[0],t[0])&&Math.min(r[1],t[1])<=e[1]&&e[1]<=Math.max(r[1],t[1])}function Nb(r,t,e){var n=!1,i=r.length;if(i<=2)return!1;for(var a=0;a<i;a++){var s=r[a],o=r[(a+1)%i];if(pN(s,o,[t,e]))return!0;ey(s[1]-e)>0!=ey(o[1]-e)>0&&ey(t-(e-s[1])*(s[0]-o[0])/(s[1]-o[1])-s[0])<0&&(n=!n)}return n}function kb(r,t,e){for(var n=!1,i=0;i<r.length;i++){var a=r[i];if(n=Nb(a,t,e),n)break}return n}function mN(r,t,e){var n=r.parsedStyle,i=n.x1,a=n.y1,s=n.x2,o=n.y2,A=n.lineWidth,l=A===void 0?1:A,c=n.increasedLineWidthForHitTesting,u=c===void 0?0:c,h=n.pointerEvents,f=h===void 0?"auto":h,d=n.fill,g=n.stroke,v=il(f,d,g),y=(0,Q.Z)(v,2),E=y[1];return!E&&!e||!l?!1:EA(i,a,s,o,l+u,t.x,t.y)}function yN(r,t,e,n,i){for(var a=!1,s=t/2,o=0;o<r.length;o++){var A=r[o],l=A.currentPoint,c=A.params,u=A.prePoint,h=A.box;if(!(h&&!El(h.x-s,h.y-s,h.width+t,h.height+t,e,n)))switch(A.command){case"L":case"Z":if(a=EA(u[0],u[1],l[0],l[1],t,e,n),a)return!0;break;case"Q":var f=lp(u[0],u[1],c[1],c[2],c[3],c[4],e,n);if(a=f<=t/2,a)return!0;break;case"C":var d=Ou(u[0],u[1],c[1],c[2],c[3],c[4],c[5],c[6],e,n,i);if(a=d<=t/2,a)return!0;break;case"A":A.cubicParams||(A.cubicParams=$l(u[0],u[1],c[1],c[2],c[3],c[4],c[5],c[6],c[7],void 0));for(var g=A.cubicParams,v=u,y=0;y<g.length;y+=6){var E=Ou(v[0],v[1],g[y],g[y+1],g[y+2],g[y+3],g[y+4],g[y+5],e,n,i);if(v=[g[y+4],g[y+5]],a=E<=t/2,a)return!0}break}}return a}function wN(r,t,e,n,i,a){var s=r.parsedStyle,o=s.lineWidth,A=o===void 0?1:o,l=s.increasedLineWidthForHitTesting,c=l===void 0?0:l,u=s.stroke,h=s.fill,f=s.d,d=s.pointerEvents,g=d===void 0?"auto":d,v=f.segments,y=f.hasArc,E=f.polylines,C=f.polygons,I=il(g,(C==null?void 0:C.length)&&h,u),R=(0,Q.Z)(I,2),K=R[0],W=R[1],V=ln(r),J=!1;return K||e?(y?J=n(r,t):J=kb(C,t.x,t.y)||kb(E,t.x,t.y),J):((W||e)&&(J=yN(v,A+c,t.x,t.y,V)),J)}function EN(r,t,e){var n=r.parsedStyle,i=n.stroke,a=n.fill,s=n.lineWidth,o=s===void 0?1:s,A=n.increasedLineWidthForHitTesting,l=A===void 0?0:A,c=n.points,u=n.pointerEvents,h=u===void 0?"auto":u,f=il(h,a,i),d=(0,Q.Z)(f,2),g=d[0],v=d[1],y=!1;return(v||e)&&(y=Lb(c.points,o+l,t.x,t.y,!0)),!y&&(g||e)&&(y=Nb(c.points,t.x,t.y)),y}function BN(r,t,e){var n=r.parsedStyle,i=n.lineWidth,a=i===void 0?1:i,s=n.increasedLineWidthForHitTesting,o=s===void 0?0:s,A=n.points,l=n.pointerEvents,c=l===void 0?"auto":l,u=n.fill,h=n.stroke,f=il(c,u,h),d=(0,Q.Z)(f,2),g=d[1];return!g&&!e||!a?!1:Lb(A.points,a+o,t.x,t.y,!1)}function bN(r,t,e,n,i){var a=r.parsedStyle,s=a.radius,o=a.fill,A=a.stroke,l=a.lineWidth,c=l===void 0?1:l,u=a.increasedLineWidthForHitTesting,h=u===void 0?0:u,f=a.x,d=f===void 0?0:f,g=a.y,v=g===void 0?0:g,y=a.width,E=a.height,C=a.pointerEvents,I=C===void 0?"auto":C,R=il(I,o,A),K=(0,Q.Z)(R,2),W=K[0],V=K[1],J=s&&s.some(function(pt){return pt!==0}),et=c+h;if(J){var ct=!1;return(V||e)&&(ct=xN(d,v,y,E,s.map(function(pt){return hr(pt,0,Math.min(Math.abs(y)/2,Math.abs(E)/2))}),et,t.x,t.y)),!ct&&(W||e)&&(ct=n(r,t)),ct}else{var at=et/2;if(W&&V||e)return El(d-at,v-at,y+at,E+at,t.x,t.y);if(W)return El(d,v,y,E,t.x,t.y);if(V)return gN(d,v,y,E,et,t.x,t.y)}return!1}function xN(r,t,e,n,i,a,s,o){var A=(0,Q.Z)(i,4),l=A[0],c=A[1],u=A[2],h=A[3];return EA(r+l,t,r+e-c,t,a,s,o)||EA(r+e,t+c,r+e,t+n-u,a,s,o)||EA(r+e-u,t+n,r+h,t+n,a,s,o)||EA(r,t+n-h,r,t+l,a,s,o)||ig(r+e-c,t+c,c,1.5*Math.PI,2*Math.PI,a,s,o)||ig(r+e-u,t+n-u,u,0,.5*Math.PI,a,s,o)||ig(r+h,t+n-h,h,.5*Math.PI,Math.PI,a,s,o)||ig(r+l,t+l,l,Math.PI,1.5*Math.PI,a,s,o)}function CN(r,t,e,n,i,a){var s=r.parsedStyle,o=s.pointerEvents,A=o===void 0?"auto":o,l=s.x,c=l===void 0?0:l,u=s.y,h=u===void 0?0:u,f=s.width,d=s.height;if(A==="non-transparent-pixel"){var g=i.config.offscreenCanvas,v=a.offscreenCanvasCreator.getOrCreateCanvas(g),y=a.offscreenCanvasCreator.getOrCreateContext(g,{willReadFrequently:!0});v.width=f,v.height=d,i.defaultStyleRendererFactory[Zt.IMAGE].render(y,(0,D.Z)((0,D.Z)({},r.parsedStyle),{},{x:0,y:0}),r,void 0,void 0,void 0);var E=y.getImageData(t.x-c,t.y-h,1,1).data;return E.every(function(C){return C!==0})}return!0}function SN(r,t,e,n){var i=r.getGeometryBounds();return t.x>=i.min[0]&&t.y>=i.min[1]&&t.x<=i.max[0]&&t.y<=i.max[1]}var Qb=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.name="canvas-picker",e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"init",value:function(){var n,i=(n={},(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(n,Zt.CIRCLE,fN),Zt.ELLIPSE,dN),Zt.RECT,bN),Zt.LINE,mN),Zt.POLYLINE,BN),Zt.POLYGON,EN),Zt.PATH,wN),Zt.TEXT,SN),Zt.GROUP,null),Zt.IMAGE,CN),(0,Ee.Z)((0,Ee.Z)(n,Zt.HTML,null),Zt.MESH,null));this.context.pointInPathPickerFactory=i,this.addRenderingPlugin(new Ib)}},{key:"destroy",value:function(){delete this.context.pointInPathPickerFactory,this.removeAllRenderingPlugins()}}])}(ls),i9=Object.freeze({__proto__:null,Plugin:Qb});function MN(r,t){var e=t.cx,n=e===void 0?0:e,i=t.cy,a=i===void 0?0:i,s=t.r;r.arc(n,a,s,0,Math.PI*2,!1)}function TN(r,t){var e=t.cx,n=e===void 0?0:e,i=t.cy,a=i===void 0?0:i,s=t.rx,o=t.ry;if(r.ellipse)r.ellipse(n,a,s,o,0,0,Math.PI*2,!1);else{var A=s>o?s:o,l=s>o?1:s/o,c=s>o?o/s:1;r.save(),r.scale(l,c),r.arc(n,a,A,0,Math.PI*2)}}function FN(r,t){var e=t.x1,n=t.y1,i=t.x2,a=t.y2,s=t.markerStart,o=t.markerEnd,A=t.markerStartOffset,l=t.markerEndOffset,c=0,u=0,h=0,f=0,d=0,g,v;s&&Nn(s)&&A&&(g=i-e,v=a-n,d=Math.atan2(v,g),c=Math.cos(d)*(A||0),u=Math.sin(d)*(A||0)),o&&Nn(o)&&l&&(g=e-i,v=n-a,d=Math.atan2(v,g),h=Math.cos(d)*(l||0),f=Math.sin(d)*(l||0)),r.moveTo(e+c,n+u),r.lineTo(i+h,a+f)}function ON(r,t){var e=t.markerStart,n=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,s=t.d,o=s.absolutePath,A=s.segments,l=0,c=0,u=0,h=0,f=0,d,g;if(e&&Nn(e)&&i){var v=e.parentNode.getStartTangent(),y=(0,Q.Z)(v,2),E=y[0],C=y[1];d=E[0]-C[0],g=E[1]-C[1],f=Math.atan2(g,d),l=Math.cos(f)*(i||0),c=Math.sin(f)*(i||0)}if(n&&Nn(n)&&a){var I=n.parentNode.getEndTangent(),R=(0,Q.Z)(I,2),K=R[0],W=R[1];d=K[0]-W[0],g=K[1]-W[1],f=Math.atan2(g,d),u=Math.cos(f)*(a||0),h=Math.sin(f)*(a||0)}for(var V=0;V<o.length;V++){var J=o[V],et=J[0],at=o[V+1],ct=V===0&&(l!==0||c!==0),pt=(V===o.length-1||at&&(at[0]==="M"||at[0]==="Z"))&&u!==0&&h!==0,wt=ct?[l,c]:[0,0],Ct=(0,Q.Z)(wt,2),Ht=Ct[0],Rt=Ct[1],St=pt?[u,h]:[0,0],Ot=(0,Q.Z)(St,2),Gt=Ot[0],qt=Ot[1];switch(et){case"M":r.moveTo(J[1]+Ht,J[2]+Rt);break;case"L":r.lineTo(J[1]+Gt,J[2]+qt);break;case"Q":r.quadraticCurveTo(J[1],J[2],J[3]+Gt,J[4]+qt);break;case"C":r.bezierCurveTo(J[1],J[2],J[3],J[4],J[5]+Gt,J[6]+qt);break;case"A":{var ae=A[V].arcParams,ue=ae.cx,pe=ae.cy,Ce=ae.rx,Qe=ae.ry,Re=ae.startAngle,nn=ae.endAngle,mn=ae.xRotation,on=ae.sweepFlag;if(r.ellipse)r.ellipse(ue,pe,Ce,Qe,mn,Re,nn,!!(1-on));else{var er=Ce>Qe?Ce:Qe,kn=Ce>Qe?1:Ce/Qe,Cn=Ce>Qe?Qe/Ce:1;r.translate(ue,pe),r.rotate(mn),r.scale(kn,Cn),r.arc(0,0,er,Re,nn,!!(1-on)),r.scale(1/kn,1/Cn),r.rotate(-mn),r.translate(-ue,-pe)}pt&&r.lineTo(J[6]+u,J[7]+h);break}case"Z":r.closePath();break}}}function IN(r,t){var e=t.markerStart,n=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,s=t.points.points,o=s.length,A=s[0][0],l=s[0][1],c=s[o-1][0],u=s[o-1][1],h=0,f=0,d=0,g=0,v=0,y,E;e&&Nn(e)&&i&&(y=s[1][0]-s[0][0],E=s[1][1]-s[0][1],v=Math.atan2(E,y),h=Math.cos(v)*(i||0),f=Math.sin(v)*(i||0)),n&&Nn(n)&&a&&(y=s[o-1][0]-s[0][0],E=s[o-1][1]-s[0][1],v=Math.atan2(E,y),d=Math.cos(v)*(a||0),g=Math.sin(v)*(a||0)),r.moveTo(A+(h||d),l+(f||g));for(var C=1;C<o-1;C++){var I=s[C];r.lineTo(I[0],I[1])}r.lineTo(c,u)}function LN(r,t){var e=t.markerStart,n=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,s=t.points.points,o=s.length,A=s[0][0],l=s[0][1],c=s[o-1][0],u=s[o-1][1],h=0,f=0,d=0,g=0,v=0,y,E;e&&Nn(e)&&i&&(y=s[1][0]-s[0][0],E=s[1][1]-s[0][1],v=Math.atan2(E,y),h=Math.cos(v)*(i||0),f=Math.sin(v)*(i||0)),n&&Nn(n)&&a&&(y=s[o-2][0]-s[o-1][0],E=s[o-2][1]-s[o-1][1],v=Math.atan2(E,y),d=Math.cos(v)*(a||0),g=Math.sin(v)*(a||0)),r.moveTo(A+h,l+f);for(var C=1;C<o-1;C++){var I=s[C];r.lineTo(I[0],I[1])}r.lineTo(c+d,u+g)}function NN(r,t){var e=t.x,n=e===void 0?0:e,i=t.y,a=i===void 0?0:i,s=t.radius,o=t.width,A=t.height,l=o,c=A,u=s&&s.some(function(R){return R!==0});if(!u)r.rect(n,a,l,c);else{var h=o>0?1:-1,f=A>0?1:-1,d=h+f===0,g=s.map(function(R){return hr(R,0,Math.min(Math.abs(l)/2,Math.abs(c)/2))}),v=(0,Q.Z)(g,4),y=v[0],E=v[1],C=v[2],I=v[3];r.moveTo(h*y+n,a),r.lineTo(l-h*E+n,a),E!==0&&r.arc(l-h*E+n,f*E+a,E,-f*Math.PI/2,h>0?0:Math.PI,d),r.lineTo(l+n,c-f*C+a),C!==0&&r.arc(l-h*C+n,c-f*C+a,C,h>0?0:Math.PI,f>0?Math.PI/2:1.5*Math.PI,d),r.lineTo(h*I+n,c+a),I!==0&&r.arc(h*I+n,c-f*I+a,I,f>0?Math.PI/2:-Math.PI/2,h>0?Math.PI:0,d),r.lineTo(n,f*y+a),y!==0&&r.arc(h*y+n,f*y+a,y,h>0?Math.PI:0,f>0?Math.PI*1.5:Math.PI/2,d)}}var Ub=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.name="canvas-path-generator",e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"init",value:function(){var n,i=(n={},(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(n,Zt.CIRCLE,MN),Zt.ELLIPSE,TN),Zt.RECT,NN),Zt.LINE,FN),Zt.POLYLINE,LN),Zt.POLYGON,IN),Zt.PATH,ON),Zt.TEXT,void 0),Zt.GROUP,void 0),Zt.IMAGE,void 0),(0,Ee.Z)((0,Ee.Z)((0,Ee.Z)(n,Zt.HTML,void 0),Zt.MESH,void 0),Zt.FRAGMENT,void 0));this.context.pathGeneratorFactory=i}},{key:"destroy",value:function(){delete this.context.pathGeneratorFactory}}])}(ls),a9=Object.freeze({__proto__:null,Plugin:Ub}),kN=function(){function r(t){(0,N.Z)(this,r),this.renderingContext=t.renderingContext,this.canvasConfig=t.config}return(0,O.Z)(r,[{key:"init",value:function(){var e=this.canvasConfig,n=e.container,i=e.canvas;if(i)this.$canvas=i,n&&i.parentElement!==n&&n.appendChild(i),this.$container=i.parentElement,this.canvasConfig.container=this.$container;else if(n&&(this.$container=gn(n)?document.getElementById(n):n,this.$container)){var a=document.createElement("canvas");this.$container.appendChild(a),this.$container.style.position||(this.$container.style.position="relative"),this.$canvas=a}this.context=this.$canvas.getContext("2d"),this.resize(this.canvasConfig.width,this.canvasConfig.height)}},{key:"getContext",value:function(){return this.context}},{key:"getDomElement",value:function(){return this.$canvas}},{key:"getDPR",value:function(){return this.dpr}},{key:"getBoundingClientRect",value:function(){if(this.$canvas.getBoundingClientRect)return this.$canvas.getBoundingClientRect()}},{key:"destroy",value:function(){this.$container&&this.$canvas&&this.$canvas.parentNode&&this.$container.removeChild(this.$canvas)}},{key:"resize",value:function(e,n){var i=this.canvasConfig.devicePixelRatio;this.dpr=i,this.$canvas&&(this.$canvas.width=this.dpr*e,this.$canvas.height=this.dpr*n,EM(this.$canvas,e,n)),this.renderingContext.renderReasons.add(Mc.CAMERA_CHANGED)}},{key:"applyCursorStyle",value:function(e){this.$container&&this.$container.style&&(this.$container.style.cursor=e)}},{key:"toDataURL",value:function(){var t=(0,Wa.Z)((0,ri.Z)().mark(function n(){var i,a,s,o=arguments;return(0,ri.Z)().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:return i=o.length>0&&o[0]!==void 0?o[0]:{},a=i.type,s=i.encoderOptions,A.abrupt("return",this.context.canvas.toDataURL(a,s));case 1:case"end":return A.stop()}},n,this)}));function e(){return t.apply(this,arguments)}return e}()}])}(),QN=function(r){function t(){var e;(0,N.Z)(this,t);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return e=(0,U.Z)(this,t,[].concat(i)),e.name="canvas-context-register",e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"init",value:function(){this.context.ContextService=kN}},{key:"destroy",value:function(){delete this.context.ContextService}}])}(ls),mh=function(r){function t(e){var n;return(0,N.Z)(this,t),n=(0,U.Z)(this,t,[e]),n.registerPlugin(new QN),n.registerPlugin(new qT.Plugin),n.registerPlugin(new Ub),n.registerPlugin(new Ob),n.registerPlugin(new rF.Plugin),n.registerPlugin(new Qb),n.registerPlugin(new eF.Plugin),n}return(0,L.Z)(t,r),(0,O.Z)(t)}(cp);function UN(r,t){if(r){var e;if(Ni(r))for(var n=0,i=r.length;n<i&&(e=t(r[n],n),e!==!1);n++);else if(Br(r)){for(var a in r)if(r.hasOwnProperty(a)&&(e=t(r[a],a),e===!1))break}}}var Pb=UN,PN=Object.prototype.hasOwnProperty,Bl=function(r,t){if(r===null||!Lc(r))return{};var e={};return Pb(t,function(n){PN.call(r,n)&&(e[n]=r[n])}),e},DN=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class ag extends Cs{constructor(t){super(Object.assign(Object.assign({},t),{style:Object.assign({},ag.defaultStyleProps,t.style)})),this.rootPointerEvent=new qf(null),this.forwardEvents=e=>{const n=this.context.canvas,i=n.context.renderingContext.root.ownerDocument.defaultView;this.normalizeToPointerEvent(e,i).forEach(s=>{const o=this.bootstrapEvent(this.rootPointerEvent,s,i,e);dh(n.context.eventService,"mappingTable.pointerupoutside",[]),n.context.eventService.mapEvent(o)})}}get eventService(){return this.context.canvas.context.eventService}get events(){return[Jt.CLICK,Jt.POINTER_DOWN,Jt.POINTER_MOVE,Jt.POINTER_UP,Jt.POINTER_OVER,Jt.POINTER_LEAVE]}getDomElement(){return this.getShape("key").getDomElement()}render(t=this.parsedAttributes,e=this){this.drawKeyShape(t,e),this.drawPortShapes(t,e)}getKeyStyle(t){const e=Bl(t,["dx","dy","innerHTML","pointerEvents","cursor"]),{dx:n=0,dy:i=0}=e,a=DN(e,["dx","dy"]),[s,o]=this.getSize(t);return Object.assign(Object.assign({x:n,y:i},a),{width:s,height:o})}drawKeyShape(t,e){const n=this.getKeyStyle(t),{x:i,y:a,width:s=0,height:o=0}=n,A=this.upsert("key-container",xi,{x:i,y:a,width:s,height:o,opacity:0},e);return this.upsert("key",ll,n,A)}connectedCallback(){if(!(this.context.canvas.getRenderer("main")instanceof mh))return;const n=this.getDomElement();this.events.forEach(i=>{n.addEventListener(i,this.forwardEvents)})}attributeChangedCallback(t,e,n){t==="zIndex"&&e!==n&&(this.getDomElement().style.zIndex=n)}destroy(){const t=this.getDomElement();this.events.forEach(e=>{t.removeEventListener(e,this.forwardEvents)}),super.destroy()}normalizeToPointerEvent(t,e){const n=[];if(e.isTouchEvent(t))for(let i=0;i<t.changedTouches.length;i++){const a=t.changedTouches[i];Ye(a.button)&&(a.button=0),Ye(a.buttons)&&(a.buttons=1),Ye(a.isPrimary)&&(a.isPrimary=t.touches.length===1&&t.type==="touchstart"),Ye(a.width)&&(a.width=a.radiusX||1),Ye(a.height)&&(a.height=a.radiusY||1),Ye(a.tiltX)&&(a.tiltX=0),Ye(a.tiltY)&&(a.tiltY=0),Ye(a.pointerType)&&(a.pointerType="touch"),Ye(a.pointerId)&&(a.pointerId=a.identifier||0),Ye(a.pressure)&&(a.pressure=a.force||.5),Ye(a.twist)&&(a.twist=0),Ye(a.tangentialPressure)&&(a.tangentialPressure=0),a.isNormalized=!0,a.type=t.type,n.push(a)}else if(e.isMouseEvent(t)){const i=t;Ye(i.isPrimary)&&(i.isPrimary=!0),Ye(i.width)&&(i.width=1),Ye(i.height)&&(i.height=1),Ye(i.tiltX)&&(i.tiltX=0),Ye(i.tiltY)&&(i.tiltY=0),Ye(i.pointerType)&&(i.pointerType="mouse"),Ye(i.pointerId)&&(i.pointerId=1),Ye(i.pressure)&&(i.pressure=.5),Ye(i.twist)&&(i.twist=0),Ye(i.tangentialPressure)&&(i.tangentialPressure=0),i.isNormalized=!0,n.push(i)}else n.push(t);return n}transferMouseData(t,e){t.isTrusted=e.isTrusted,t.srcElement=e.srcElement,t.timeStamp=performance.now(),t.type=e.type,t.altKey=e.altKey,t.metaKey=e.metaKey,t.shiftKey=e.shiftKey,t.ctrlKey=e.ctrlKey,t.button=e.button,t.buttons=e.buttons,t.client.x=e.clientX,t.client.y=e.clientY,t.movement.x=e.movementX,t.movement.y=e.movementY,t.page.x=e.pageX,t.page.y=e.pageY,t.screen.x=e.screenX,t.screen.y=e.screenY,t.relatedTarget=null}bootstrapEvent(t,e,n,i){t.view=n,t.originalEvent=null,t.nativeEvent=i,t.pointerId=e.pointerId,t.width=e.width,t.height=e.height,t.isPrimary=e.isPrimary,t.pointerType=e.pointerType,t.pressure=e.pressure,t.tangentialPressure=e.tangentialPressure,t.tiltX=e.tiltX,t.tiltY=e.tiltY,t.twist=e.twist,this.transferMouseData(t,e);const{x:a,y:s}=this.getViewportXY(e);t.viewport.x=a,t.viewport.y=s;const[o,A]=this.context.canvas.getCanvasByViewport([a,s]);return t.canvas.x=o,t.canvas.y=A,t.global.copyFrom(t.canvas),t.offset.copyFrom(t.canvas),t.isTrusted=i.isTrusted,t.type==="pointerleave"&&(t.type="pointerout"),t}getViewportXY(t){let e,n;const{offsetX:i,offsetY:a,clientX:s,clientY:o}=t;if(!Pe(i)&&!Pe(a))e=i,n=a;else{const A=this.eventService.client2Viewport({x:s,y:o});e=A.x,n=A.y}return{x:e,y:n}}onframe(){super.onframe();const{opacity:t}=this.attributes;this.getDomElement().style.opacity=`${t}`}}ag.defaultStyleProps={size:[160,80],halo:!1,icon:!1,label:!1,pointerEvents:"auto"};var Db=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class sg extends Cs{constructor(t){super(pi({style:sg.defaultStyleProps},t))}getKeyStyle(t){const[e,n]=this.getSize(t),i=super.getKeyStyle(t),{fillOpacity:a,opacity:s=a}=i,o=Db(i,["fillOpacity","opacity"]);return Object.assign(Object.assign({opacity:s},o),{width:e,height:n,x:-e/2,y:-n/2})}getBounds(){return this.getShape("key").getBounds()}getHaloStyle(t){if(t.halo===!1)return!1;const e=this.getShape("key").attributes,{fill:n,stroke:i}=e,a=Db(e,["fill","stroke"]),s=Ir(this.getGraphicStyle(t),"halo"),o=Number(s.lineWidth),[A,l]=tn(this.getSize(t),[o,o]),{lineWidth:c}=s,u={fill:"transparent",lineWidth:c/2,width:A-c/2,height:l-c/2,x:-(A-c/2)/2,y:-(l-c/2)/2};return Object.assign(Object.assign({},s),u)}getIconStyle(t){const e=super.getIconStyle(t),[n,i]=this.getSize(t);return e?Object.assign({width:n*No,height:i*No},e):!1}drawKeyShape(t,e){const n=this.upsert("key",Xm,this.getKeyStyle(t),e);return qm(this),n}drawHaloShape(t,e){this.upsert("halo",xi,this.getHaloStyle(t),e)}update(t){super.update(t),t&&("x"in t||"y"in t||"z"in t)&&$m(this)}}sg.defaultStyleProps={size:32};class RN extends Cs{constructor(t){super(t)}getKeyStyle(t){const[e,n]=this.getSize(t);return Object.assign(Object.assign({},super.getKeyStyle(t)),{width:e,height:n,x:-e/2,y:-n/2})}getIconStyle(t){const e=super.getIconStyle(t),{width:n,height:i}=this.getShape("key").attributes;return e?Object.assign({width:n*No,height:i*No},e):!1}drawKeyShape(t,e){return this.upsert("key",xi,this.getKeyStyle(t),e)}}class _N extends Yd{constructor(t){super(t)}getInnerR(t){return t.innerR||this.getOuterR(t)*3/8}getOuterR(t){return Math.min(...this.getSize(t))/2}getPoints(t){return Tk(this.getOuterR(t),this.getInnerR(t))}getIconStyle(t){const e=super.getIconStyle(t),n=this.getInnerR(t)*2*No;return e?Object.assign({width:n,height:n},e):!1}getPortXY(t,e){const{placement:n="top"}=e,i=this.getShape("key").getLocalBounds(),a=Fk(this.getOuterR(t),this.getInnerR(t));return Ay(i,n,a,!1)}}class og extends Yd{constructor(t){super(pi({style:og.defaultStyleProps},t))}getPoints(t){const{direction:e}=t,[n,i]=this.getSize(t);return Ok(n,i,e)}getPortXY(t,e){const{direction:n}=t,{placement:i="top"}=e,a=this.getShape("key").getLocalBounds(),[s,o]=this.getSize(t),A=Ik(s,o,n);return Ay(a,i,A,!1)}getIconStyle(t){const{icon:e,iconText:n,iconSrc:i,direction:a}=t;if(e===!1||ro(n||i))return!1;const s=Ir(this.getGraphicStyle(t),"icon"),o=this.getShape("key").getLocalBounds(),[A,l]=SO(o,a),c=MO(o,a)*2*No;return Object.assign({x:A,y:l,width:c,height:c},s)}}og.defaultStyleProps={size:40,direction:"up"};var Rb=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class Uc extends Cs{constructor(t){super(pi({style:Uc.defaultStyleProps},t)),this.type="combo",this.updateComboPosition(this.parsedAttributes)}getKeySize(t){const{collapsed:e,childrenNode:n=[]}=t;return n.length===0?this.getEmptyKeySize(t):e?this.getCollapsedKeySize(t):this.getExpandedKeySize(t)}getEmptyKeySize(t){const{padding:e,collapsedSize:n}=t,[i,a,s,o]=La(e);return tn(ka(n),[o+a,i+s,0])}getCollapsedKeySize(t){return ka(t.collapsedSize)}getExpandedKeySize(t){const e=this.getContentBBox(t);return[to(e),eo(e),0]}getContentBBox(t){const{childrenNode:e=[],padding:n}=t,i=e.map(s=>this.context.element.getElement(s)).filter(Boolean);if(i.length===0){const s=new Yn,{x:o=0,y:A=0,size:l}=t,[c,u]=ka(l);return s.setMinMax([o-c/2,A-u/2,0],[o+c/2,A+u/2,0]),s}const a=oh(i.map(s=>s.getBounds()));return n?pA(a,n):a}drawCollapsedMarkerShape(t,e){const n=this.getCollapsedMarkerStyle(t);this.upsert("collapsed-marker",Bb,n,e),qm(this)}getCollapsedMarkerStyle(t){if(!t.collapsed||!t.collapsedMarker)return!1;const e=Ir(this.getGraphicStyle(t),"collapsedMarker"),{type:n}=e,i=Rb(e,["type"]),a=this.getShape("key"),[s,o]=Lo(a.getLocalBounds(),"center"),A=Object.assign(Object.assign({},i),{x:s,y:o});if(n){const l=this.getCollapsedMarkerText(n,t);Object.assign(A,{text:l})}return A}getCollapsedMarkerText(t,e){const{childrenData:n=[]}=e,{model:i}=this.context;return t==="descendant-count"?i.getDescendantsData(this.id).length.toString():t==="child-count"?n.length.toString():t==="node-count"?i.getDescendantsData(this.id).filter(a=>i.getElementType(Pt(a))==="node").length.toString():jt(t)?t(n):""}getComboPosition(t){const{x:e=0,y:n=0,collapsed:i,childrenData:a=[]}=t;if(a.length===0)return[+e,+n,0];if(i){const{model:s}=this.context,o=s.getDescendantsData(this.id).filter(A=>!s.isCombo(Pt(A)));if(o.length>0&&o.some(mL)){const A=o.reduce((l,c)=>tn(l,Ai(c)),[0,0,0]);return bs(A,o.length)}return[+e,+n,0]}return this.getContentBBox(t).center}getComboStyle(t){const[e,n]=this.getComboPosition(t);return{x:e,y:n,transform:[["translate",e,n]]}}updateComboPosition(t){const e=this.getComboStyle(t);Object.assign(this.style,e);const{x:n,y:i}=e;this.context.model.syncNodeLikeDatum({id:this.id,style:{x:n,y:i}}),$m(this)}render(t,e=this){super.render(t,e),this.drawCollapsedMarkerShape(t,e)}update(t={}){super.update(t),this.updateComboPosition(this.parsedAttributes)}onframe(){super.onframe(),this.attributes.collapsed||this.updateComboPosition(this.parsedAttributes),this.drawKeyShape(this.parsedAttributes,this)}animate(t,e){const n=super.animate(this.attributes.collapsed?t:t.map(i=>{var{x:a,y:s,z:o,transform:A}=i,l=Rb(i,["x","y","z","transform"]);return l}),e);return n&&new Proxy(n,{set:(i,a,s)=>(a==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(i,a,s))})}}Uc.defaultStyleProps={childrenNode:[],droppable:!0,draggable:!0,collapsed:!1,collapsedSize:32,collapsedMarker:!0,collapsedMarkerZIndex:1,collapsedMarkerFontSize:12,collapsedMarkerTextAlign:"center",collapsedMarkerTextBaseline:"middle",collapsedMarkerType:"child-count"};class HN extends Uc{constructor(t){super(t)}drawKeyShape(t,e){return this.upsert("key",Js,this.getKeyStyle(t),e)}getKeyStyle(t){const{collapsed:e}=t,n=super.getKeyStyle(t),[i]=this.getKeySize(t);return Object.assign(Object.assign(Object.assign({},n),e&&Ir(n,"collapsed")),{r:i/2})}getCollapsedKeySize(t){const[e,n]=ka(t.collapsedSize),i=Math.max(e,n)/2;return[i*2,i*2,0]}getExpandedKeySize(t){const e=this.getContentBBox(t),[n,i]=gA(e),a=Math.sqrt(Math.pow(n,2)+Math.pow(i,2))/2;return[a*2,a*2,0]}getIntersectPoint(t,e=!1){const n=this.getShape("key").getBounds();return zd(t,n,e)}}class GN extends Uc{constructor(t){super(t)}drawKeyShape(t,e){return this.upsert("key",xi,this.getKeyStyle(t),e)}getKeyStyle(t){const e=super.getKeyStyle(t),[n,i]=this.getKeySize(t);return Object.assign(Object.assign(Object.assign({},e),t.collapsed&&Ir(e,"collapsed")),{width:n,height:i,x:-n/2,y:-i/2})}}var KN=function(r,t){if(!ih(r))return r;for(var e=[],n=0;n<r.length;n++){var i=r[n];t(i,n)&&e.push(i)}return e},zN=KN,VN=function(r,t){return ih(r)?r.indexOf(t)>-1:!1},WN=VN,ZN=function(r,t){return t===void 0&&(t=[]),zN(r,function(e){return!WN(t,e)})},jN=ZN;const YN={padding:10};function _b(r,t,e,n,i,a){const{padding:s}=Object.assign(YN,a),o=vA(e,s),A=vA(n,s),l=[r,...i,t];let c=null;const u=[];for(let h=0,f=l.length;h<f-1;h++){const d=h+1,g=l[h],v=l[d],y=wL(g,v);let E=null;if(h===0)if(d===f-1)if(o.intersects(A))E=ry(g,v,o,A);else if(!Md(g,o)&&!Md(v,A)){const C=dl(g,o),I=dl(v,A);E=Gb(C,I,ea(C,I)),E.points.unshift(C),E.points.push(I)}else y||(E=JN(g,v,o,A));else ws(v,o)?E=ry(g,v,o,vA(v,s),c):y||(E=Ag(g,v,o));else d===f-1?ws(g,A)?E=ry(g,v,vA(g,s),A,c):y||(E=Kb(g,v,A,c)):y||(E=Gb(g,v,c));E?(u.push(...E.points),c=E.direction):c=ea(g,v),d<f-1&&u.push(v)}return u.map(pl)}const XN={N:"S",S:"N",W:"E",E:"W"},Hb={N:-Math.PI/2,S:Math.PI/2,E:0,W:Math.PI};function ea(r,t){const[e,n]=r,[i,a]=t;return e===i?n>a?"N":"S":n===a?e>i?"W":"E":null}function ny(r,t){return t==="N"||t==="S"?eo(r):to(r)}function Gb(r,t,e){const n=[r[0],t[1]],i=[t[0],r[1]],a=ea(r,n),s=ea(r,i),o=e?XN[e]:null,A=a===e||a!==o&&s!==e?n:i;return{points:[A],direction:ea(A,t)}}function Ag(r,t,e){if(Md(r,e)){const n=yh(r,t,e);return{points:[n],direction:ea(n,t)}}else{const n=dl(r,e),a=["left","right"].includes(Ah(r,e))?[t[0],n[1]]:[n[0],t[1]];return{points:[a],direction:ea(a,t)}}}function Kb(r,t,e,n){const i=Md(t,e)?t:dl(t,e),a=[[i[0],r[1]],[r[0],i[1]]],s=a.filter(A=>CO(A,e)&&!lB(A,e,!0)),o=s.filter(A=>ea(A,r)!==n);if(o.length>0){const A=o.find(l=>ea(r,l)===n)||o[0];return{points:[A],direction:ea(A,t)}}else{const A=jN(a,s)[0],l=wA(t,A,ny(e,n)/2);return{points:[yh(l,r,e),l],direction:ea(l,t)}}}function JN(r,t,e,n){let i=Ag(r,t,e);const a=uh(i.points[0]);if(ws(a,n)){i=Ag(t,r,n);const s=uh(i.points[0]);if(ws(s,e)){const o=wA(r,a,ny(e,ea(r,a))/2),A=wA(t,s,ny(n,ea(t,s))/2),l=[(o[0]+A[0])/2,(o[1]+A[1])/2],c=Ag(r,l,e),u=Kb(l,t,n,c.direction);i.points=[c.points[0],u.points[0]],i.direction=u.direction}}return i}function ry(r,t,e,n,i){const s=oh([e,n]),o=lr(t,s.center)>lr(r,s.center),[A,l]=o?[t,r]:[r,t],c=eo(s)+to(s);let u;if(i){const d=[A[0]+c*Math.cos(Hb[i]),A[1]+c*Math.sin(Hb[i])];u=wA(dl(d,s),d,.01)}else u=wA(dl(A,s),A,-.01);let h=yh(u,l,s),f=[hh(u,2),hh(h,2)];if(Rr(hh(u),hh(h))){const d=Gm(tr(u,A),[1,0,0])+Math.PI/2;h=[l[0]+c*Math.cos(d),l[1]+c*Math.sin(d),0],h=hh(wA(dl(h,s),l,-.01),2);const g=yh(u,h,s);f=[u,g,h]}return{points:o?f.reverse():f,direction:ea(o?u:h,t)}}function yh(r,t,e){let n=[r[0],t[1]];return ws(n,e)&&(n=[t[0],r[1]]),n}function zb(r,t,e,n,i){let A=typeof t=="number"?t:.5;t==="start"&&(A=0),t==="end"&&(A=.99);const l=Si(r.getPoint(A)),c=Si(r.getPoint(A+.01));let u=t==="start"?"left":t==="end"?"right":"center";if(rb(l,c)||!e){const[y,E]=Vb(r,A,n,i);return{transform:[["translate",y,E]],textAlign:u}}let h=Math.atan2(c[1]-l[1],c[0]-l[0]);c[0]<l[0]&&(u=u==="center"?u:u==="left"?"right":"left",n*=-1,h+=Math.PI);const[d,g]=Vb(r,A,n,i,h),v=[["translate",d,g],["rotate",h/Math.PI*180]];return{textAlign:u,transform:v}}function qN(r,t,e,n,i){var a,s;const o=((a=r.badge)===null||a===void 0?void 0:a.getGeometryBounds().halfExtents[0])*2||0,A=((s=r.label)===null||s===void 0?void 0:s.getGeometryBounds().halfExtents[0])*2||0;return zb(r.key,e,!0,(A?(A/2+o/2)*(t==="suffix"?1:-1):0)+n,i)}function Vb(r,t,e,n,i){const[a,s]=Si(r.getPoint(t));let o=e,A=n;return i&&(o=e*Math.cos(i)-n*Math.sin(i),A=e*Math.sin(i)+n*Math.cos(i)),[a+o,s+A]}function iy(r,t,e,n){if(Rr(r,t))return r;const i=tr(t,r),a=[r[0]+e*i[0],r[1]+e*i[1]],s=Io(Kd(i,!1));return a[0]+=n*s[0],a[1]+=n*s[1],a}function $N(r){return we(r)?[r,-r]:r}function tk(r){return we(r)?[r,1-r]:r}function ek(r,t,e){return[["M",r[0],r[1]],["Q",e[0],e[1],t[0],t[1]]]}function Wb(r,t,e){return[["M",r[0],r[1]],["C",e[0][0],e[0][1],e[1][0],e[1][1],t[0],t[1]]]}function ay(r,t=0,e=!1){const n=r.length-1,i=r[0],a=r[n],s=r.slice(1,n),o=[["M",i[0],i[1]]];return s.forEach((A,l)=>{const c=s[l-1]||i,u=s[l+1]||a;if(!ib(c,A,u)&&t){const[h,f]=nk(c,A,u,t);o.push(["L",h[0],h[1]],["Q",A[0],A[1],f[0],f[1]],["L",f[0],f[1]])}else o.push(["L",A[0],A[1]])}),o.push(["L",a[0],a[1]]),e&&o.push(["Z"]),o}function nk(r,t,e,n){const i=Gd(r,t),a=Gd(e,t),s=Math.min(n,Math.min(i,a)/2),o=[t[0]-s/i*(t[0]-r[0]),t[1]-s/i*(t[1]-r[1])],A=[t[0]-s/a*(t[0]-e[0]),t[1]-s/a*(t[1]-e[1])];return[o,A]}const rk=r=>{const t=Math.PI/2,e=eo(r)/2,n=to(r)/2,i=Math.atan2(e,n)/2,a=Math.atan2(n,e)/2;return{top:[-t-a,-t+a],"top-right":[-t+a,-i],"right-top":[-t+a,-i],right:[-i,i],"bottom-right":[i,t-a],"right-bottom":[i,t-a],bottom:[t-a,t+a],"bottom-left":[t+a,Math.PI-i],"left-bottom":[t+a,Math.PI-i],left:[Math.PI-i,Math.PI+i],"top-left":[Math.PI+i,-t-a],"left-top":[Math.PI+i,-t-a]}};function Zb(r,t,e,n,i){const a=vA(r),s=r.getCenter();let o=n&&bA(n),A=i&&bA(i);if(!o||!A){const l=rk(a),c=l[t][0],u=l[t][1],[h,f]=gA(a),d=Math.max(h,f),g=tn(s,[d*Math.cos(c),d*Math.sin(c),0]),v=tn(s,[d*Math.cos(u),d*Math.sin(u),0]);o=cy(r,g),A=cy(r,v),e||([o,A]=[A,o])}return[o,A]}function ik(r,t,e,n,i,a){const s=r.getPorts()[i||a],o=r.getPorts()[a||i];let[A,l]=Zb(r,t,e,s,o);const c=ak(r,A,l,n);return s&&(A=Eh(s,c[0])),o&&(l=Eh(o,c.at(-1))),Wb(A,l,c)}function ak(r,t,e,n){const i=r.getCenter();if(Rr(t,e)){const a=tr(t,i),s=[n*Math.sign(a[0])||n/2,n*Math.sign(a[1])||-n/2,0];return[tn(t,s),tn(e,Bs(s,[1,-1,1]))]}return[wA(i,t,lr(i,t)+n),wA(i,e,lr(i,e)+n)]}function sk(r,t,e,n,i,a,s){const o=ly(r),A=o[a||s],l=o[s||a];let[c,u]=Zb(r,e,n,A,l);const h=ok(r,c,u,i);return A&&(c=Eh(A,h[0])),l&&(u=Eh(l,h.at(-1))),ay([c,...h,u],t)}function ok(r,t,e,n){const i=[],a=vA(r);if(Rr(t,e))switch(Ah(t,a)){case"left":i.push([t[0]-n,t[1]]),i.push([t[0]-n,t[1]+n]),i.push([t[0],t[1]+n]);break;case"right":i.push([t[0]+n,t[1]]),i.push([t[0]+n,t[1]+n]),i.push([t[0],t[1]+n]);break;case"top":i.push([t[0],t[1]-n]),i.push([t[0]+n,t[1]-n]),i.push([t[0]+n,t[1]]);break;case"bottom":i.push([t[0],t[1]+n]),i.push([t[0]+n,t[1]+n]),i.push([t[0]+n,t[1]]);break}else{const s=Ah(t,a),o=Ah(e,a);if(s===o){const A=s;let l,c;switch(A){case"left":l=Math.min(t[0],e[0])-n,i.push([l,t[1]]),i.push([l,e[1]]);break;case"right":l=Math.max(t[0],e[0])+n,i.push([l,t[1]]),i.push([l,e[1]]);break;case"top":c=Math.min(t[1],e[1])-n,i.push([t[0],c]),i.push([e[0],c]);break;case"bottom":c=Math.max(t[1],e[1])+n,i.push([t[0],c]),i.push([e[0],c]);break}}else{const A=(h,f)=>({left:[f[0]-n,f[1]],right:[f[0]+n,f[1]],top:[f[0],f[1]-n],bottom:[f[0],f[1]+n]})[h],l=A(s,t),c=A(o,e),u=yh(l,c,a);i.push(l,u,c)}}return i}function sy(r,t){const e=new Set,n=new Set,i=new Set;return r.forEach(a=>{t(a).forEach(o=>{e.add(o),r.includes(o.source)&&r.includes(o.target)?n.add(o):i.add(o)})}),{edges:Array.from(e),internal:Array.from(n),external:Array.from(i)}}function jb(r,t){const e=[];let n=r;for(;n;){e.push(n);const i=t(Pt(n));if(i)n=i;else break}if(e.some(i=>{var a;return(a=i.style)===null||a===void 0?void 0:a.collapsed})){const i=e.reverse().findIndex(fa);return e[i]||e.at(-1)}return r}function Ak(r,t){return t||(r<4?10:r===4?12:r*2.5)}const lk=(r,t)=>{const e=Math.max(r,t)/2;return[["M",-r/2,0],["A",e,e,0,1,0,2*e-r/2,0],["A",e,e,0,1,0,-r/2,0],["Z"]]},Yb=(r,t)=>[["M",-r/2,0],["L",r/2,-t/2],["L",r/2,t/2],["Z"]],ck=(r,t)=>[["M",-r/2,0],["L",0,-t/2],["L",r/2,0],["L",0,t/2],["Z"]],uk=(r,t)=>[["M",-r/2,0],["L",r/2,-t/2],["L",4*r/5-r/2,0],["L",r/2,t/2],["Z"]],hk=(r,t)=>[["M",-r/2,-t/2],["L",r/2,-t/2],["L",r/2,t/2],["L",-r/2,t/2],["Z"]],fk=(r,t)=>{const e=r/2,n=r/7,i=r-n;return[["M",-e,0],["L",0,-t/2],["L",0,t/2],["Z"],["M",i-e,-t/2],["L",i+n-e,-t/2],["L",i+n-e,t/2],["L",i-e,t/2],["Z"]]},dk=(r,t)=>[["M",r/2,-t/2],["L",-r/2,0],["L",r/2,0],["L",-r/2,0],["L",r/2,t/2]];var lg=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class BA extends bb{constructor(t){super(pi({style:BA.defaultStyleProps},t)),this.type="edge"}get sourceNode(){const{sourceNode:t}=this.parsedAttributes;return this.context.element.getElement(t)}get targetNode(){const{targetNode:t}=this.parsedAttributes;return this.context.element.getElement(t)}getKeyStyle(t){const e=this.getGraphicStyle(t),{loop:n}=e,i=lg(e,["loop"]),{sourceNode:a,targetNode:s}=this,A={d:n&&xk(a,s)?this.getLoopPath(t):this.getKeyPath(t)};return Pi.PARSED_STYLE_LIST.forEach(l=>{l in i&&(A[l]=i[l])}),A}getLoopPath(t){const{sourcePort:e,targetPort:n}=t,i=this.sourceNode,a=vA(i),s=Math.max(to(a),eo(a)),{placement:o,clockwise:A,dist:l=s}=Ir(this.getGraphicStyle(t),"loop");return ik(i,o,A,l,e,n)}getEndpoints(t,e=!0,n=[]){const{sourcePort:i,targetPort:a}=t,{sourceNode:s,targetNode:o}=this,[A,l]=Sk(s,o,i,a);if(!e){const f=A?bA(A):s.getCenter(),d=l?bA(l):o.getCenter();return[f,d]}const c=typeof n=="function"?n():n,u=rx(A||s,c[0]||l||o),h=rx(l||o,c[c.length-1]||A||s);return[u,h]}getHaloStyle(t){if(t.halo===!1)return!1;const e=this.getKeyStyle(t),n=Ir(this.getGraphicStyle(t),"halo");return Object.assign(Object.assign({},e),n)}getLabelStyle(t){if(t.label===!1||!t.labelText)return!1;const e=Ir(this.getGraphicStyle(t),"label"),{placement:n,offsetX:i,offsetY:a,autoRotate:s,maxWidth:o}=e,A=lg(e,["placement","offsetX","offsetY","autoRotate","maxWidth"]),l=zb(this.shapeMap.key,n,s,i,a),c=this.shapeMap.key.getLocalBounds(),u=kL([c.min,c.max],o);return Object.assign({wordWrapWidth:u},l,A)}getBadgeStyle(t){if(t.badge===!1||!t.badgeText)return!1;const e=Ir(t,"badge"),{offsetX:n,offsetY:i,placement:a}=e,s=lg(e,["offsetX","offsetY","placement"]);return Object.assign(s,qN(this.shapeMap,a,t.labelPlacement,n,i))}drawArrow(t,e){var n;const i=e==="start",s=t[e==="start"?"startArrow":"endArrow"],o=this.shapeMap.key;if(s){const A=this.getArrowStyle(t,i),[l,c,u]=i?["markerStart","markerStartOffset","startArrowOffset"]:["markerEnd","markerEndOffset","endArrowOffset"],h=o.parsedStyle[l];if(h)h.attr(A);else{const f=A.src?$u:Pi,d=new f({style:A});o.style[l]=d}o.style[c]=t[u]||A.width/2+ +A.lineWidth}else{const A=i?"markerStart":"markerEnd";(n=o.style[A])===null||n===void 0||n.destroy(),o.style[A]=null}}getArrowStyle(t,e){const n=this.getShape("key").attributes,i=e?"startArrow":"endArrow",a=Ir(this.getGraphicStyle(t),i),{size:s,type:o}=a,A=lg(a,["size","type"]),[l,c]=ka(Ak(n.lineWidth,s)),h=(jt(o)?o:z[o]||Yb)(l,c);return Object.assign(Bl(n,["stroke","strokeOpacity","fillOpacity"]),{width:l,height:c},Object.assign({},h&&{d:h,fill:o==="simple"?"":n.stroke}),A)}drawLabelShape(t,e){const n=this.getLabelStyle(t);this.upsert("label",io,n,e)}drawHaloShape(t,e){const n=this.getHaloStyle(t);this.upsert("halo",Pi,n,e)}drawBadgeShape(t,e){const n=this.getBadgeStyle(t);this.upsert("badge",kc,n,e)}drawSourceArrow(t){this.drawArrow(t,"start")}drawTargetArrow(t){this.drawArrow(t,"end")}drawKeyShape(t,e){const n=this.getKeyStyle(t);return this.upsert("key",Pi,n,e)}render(t=this.parsedAttributes,e=this){this.drawKeyShape(t,e),this.getShape("key")&&(this.drawSourceArrow(t),this.drawTargetArrow(t),this.drawLabelShape(t,e),this.drawHaloShape(t,e),this.drawBadgeShape(t,e))}onframe(){this.drawKeyShape(this.parsedAttributes,this),this.drawSourceArrow(this.parsedAttributes),this.drawTargetArrow(this.parsedAttributes),this.drawHaloShape(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this),this.drawBadgeShape(this.parsedAttributes,this)}animate(t,e){const n=super.animate(t,e);return n&&new Proxy(n,{set:(i,a,s)=>(a==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(i,a,s))})}}BA.defaultStyleProps={badge:!0,badgeOffsetX:0,badgeOffsetY:0,badgePlacement:"suffix",isBillboard:!0,label:!0,labelAutoRotate:!0,labelIsBillboard:!0,labelMaxWidth:"80%",labelOffsetX:4,labelOffsetY:0,labelPlacement:"center",labelTextBaseline:"middle",labelWordWrap:!1,halo:!1,haloDroppable:!1,haloLineDash:0,haloLineWidth:12,haloPointerEvents:"none",haloStrokeOpacity:.25,haloZIndex:-1,loop:!0,startArrow:!1,startArrowLineDash:0,startArrowLineJoin:"round",startArrowLineWidth:1,startArrowTransformOrigin:"center",startArrowType:"vee",endArrow:!1,endArrowLineDash:0,endArrowLineJoin:"round",endArrowLineWidth:1,endArrowTransformOrigin:"center",endArrowType:"vee",loopPlacement:"top",loopClockwise:!0};class bl extends BA{constructor(t){super(pi({style:bl.defaultStyleProps},t))}getKeyPath(t){const[e,n]=this.getEndpoints(t),{controlPoints:i,curvePosition:a,curveOffset:s}=t,o=this.getControlPoints(e,n,tk(a),$N(s),i);return Wb(e,n,o)}getControlPoints(t,e,n,i,a){return(a==null?void 0:a.length)===2?a:[iy(t,e,n[0],i[0]),iy(t,e,n[1],i[1])]}}bl.defaultStyleProps={curvePosition:.5,curveOffset:20};class cg extends bl{constructor(t){super(pi({style:cg.defaultStyleProps},t))}getControlPoints(t,e,n,i){const a=e[0]-t[0];return[[t[0]+a*n[0]+i[0],t[1]],[e[0]-a*n[1]+i[1],e[1]]]}}cg.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};class ug extends bl{constructor(t){super(pi({style:ug.defaultStyleProps},t))}get ref(){return this.context.model.getRootsData()[0]}getEndpoints(t){if(this.sourceNode.id===this.ref.id)return super.getEndpoints(t);const e=Ai(this.ref),n=this.sourceNode.getIntersectPoint(e,!0),i=this.targetNode.getIntersectPoint(e);return[n,i]}toRadialCoordinate(t){const e=Ai(this.ref),n=lr(t,e),i=qB(tr(t,e));return[n,i]}getControlPoints(t,e,n,i){const[a,s]=this.toRadialCoordinate(t),[o]=this.toRadialCoordinate(e),A=o-a;return[[t[0]+(A*n[0]+i[0])*Math.cos(s),t[1]+(A*n[0]+i[0])*Math.sin(s)],[e[0]-(A*n[1]-i[0])*Math.cos(s),e[1]-(A*n[1]-i[0])*Math.sin(s)]]}}ug.defaultStyleProps={curvePosition:.5,curveOffset:20};class hg extends bl{constructor(t){super(pi({style:hg.defaultStyleProps},t))}getControlPoints(t,e,n,i){const a=e[1]-t[1];return[[t[0],t[1]+a*n[0]+i[0]],[e[0],e[1]-a*n[1]+i[1]]]}}hg.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};class fg extends BA{constructor(t){super(pi({style:fg.defaultStyleProps},t))}getKeyPath(t){const[e,n]=this.getEndpoints(t);return[["M",e[0],e[1]],["L",n[0],n[1]]]}}fg.defaultStyleProps={};const gk={enableObstacleAvoidance:!1,offset:10,maxAllowedDirectionChange:Math.PI/2,maximumLoops:3e3,gridSize:5,startDirections:["top","right","bottom","left"],endDirections:["top","right","bottom","left"],directionMap:{right:{stepX:1,stepY:0},left:{stepX:-1,stepY:0},bottom:{stepX:0,stepY:1},top:{stepX:0,stepY:-1}},penalties:{0:0,90:0},distFunc:Gd},ko=r=>`${Math.round(r[0])}|||${Math.round(r[1])}`;function xl(r,t){const e=n=>Math.round(n/t);return we(r)?e(r):r.map(e)}function vk(r,t){const e=Math.abs(r-t);return e>Math.PI?2*Math.PI-e:e}function Xb(r,t){const e=t[0]-r[0],n=t[1]-r[1];return!e&&!n?0:Math.atan2(n,e)}function Jb(r,t,e,n){const i=Xb(r,t),a=e[ko(r)],o=Xb(a||n,r);return vk(o,i)}const pk=(r,t)=>{const{offset:e,gridSize:n}=t,i={};return r.forEach(a=>{if(!a||a.destroyed||!a.isVisible())return;const s=pA(a.getRenderBounds(),e);for(let o=xl(s.min[0],n);o<=xl(s.max[0],n);o+=1)for(let A=xl(s.min[1],n);A<=xl(s.max[1],n);A+=1)i[`${o}|||${A}`]=!0}),i};function qb(r,t,e){return Math.min(...t.map(n=>e(r,n)))}function mk(r,t,e){let n=r[0],i=e(r[0],t);for(let a=0;a<r.length;a++){const s=r[a],o=e(s,t);o<i&&(n=s,i=o)}return n}const $b=(r,t,e,n)=>{if(!t)return[r];const{directionMap:i,offset:a}=n,s=pA(t.getRenderBounds(),a),o=Object.keys(i).reduce((A,l)=>{if(e.includes(l)){const c=i[l],[u,h]=gA(s),f=[r[0]+c.stepX*u,r[1]+c.stepY*h],d=TO(s);for(let g=0;g<d.length;g++){const v=zm([r,f],d[g]);v&&lB(v,s)&&A.push(v)}}return A},[]);return ws(r,s)||o.push(r),o.map(A=>xl(A,n.gridSize))},yk=(r,t,e,n,i,a,s)=>{const o=[];let A=[a[0]===n[0]?n[0]:r[0]*s,a[1]===n[1]?n[1]:r[1]*s];o.unshift(A);let l=r,c=t[ko(l)];for(;c;){const f=c,d=l;Jb(f,d,t,e)&&(A=[f[0]===d[0]?A[0]:f[0]*s,f[1]===d[1]?A[1]:f[1]*s],o.unshift(A)),c=t[ko(f)],l=f}const u=i.map(f=>[f[0]*s,f[1]*s]),h=mk(u,A,Gd);return o.unshift(h),o};function wk(r,t,e,n){const i=pl(r.getCenter()),a=pl(t.getCenter()),s=Object.assign(gk,n),{gridSize:o}=s,A=s.enableObstacleAvoidance?e:[r,t],l=pk(A,s),c=xl(i,o),u=xl(a,o),h=$b(i,r,s.startDirections,s),f=$b(a,t,s.endDirections,s);h.forEach(V=>delete l[ko(V)]),f.forEach(V=>delete l[ko(V)]);const d={},g={},v={},y={},E={},C=new Ek;for(let V=0;V<h.length;V++){const J=h[V],et=ko(J);d[et]=J,y[et]=0,E[et]=qb(J,f,s.distFunc),C.add({id:et,value:E[et]})}const I=f.map(V=>ko(V));let R=s.maximumLoops,K,W=1/0;for(const[V,J]of Object.entries(d))E[V]<=W&&(W=E[V],K=J);for(;Object.keys(d).length>0&&R>0;){const V=C.minId(!1);if(V)K=d[V];else break;const J=ko(K);if(I.includes(J))return yk(K,v,c,a,h,u,o);delete d[J],C.remove(J),g[J]=!0;for(const et of Object.values(s.directionMap)){const at=tn(K,[et.stepX,et.stepY]),ct=ko(at);if(g[ct])continue;const pt=Jb(K,at,v,c);if(pt>s.maxAllowedDirectionChange||l[ct])continue;d[ct]||(d[ct]=at);const wt=s.penalties[pt],Ct=s.distFunc(K,at)+(isNaN(wt)?o:wt),Ht=y[J]+Ct,Rt=y[ct];Rt&&Ht>=Rt||(v[ct]=K,y[ct]=Ht,E[ct]=Ht+qb(at,f,s.distFunc),C.add({id:ct,value:E[ct]}))}R-=1}return[]}class Ek{constructor(){this.arr=[],this.map={},this.arr=[],this.map={}}_innerAdd(t,e){let n=0,i=e-1;for(;i-n>1;){const a=Math.floor((n+i)/2);if(this.arr[a].value>t.value)i=a;else if(this.arr[a].value<t.value)n=a;else{this.arr.splice(a,0,t),this.map[t.id]=!0;return}}this.arr.splice(i,0,t),this.map[t.id]=!0}add(t){delete this.map[t.id];const e=this.arr.length;if(!e||this.arr[e-1].value<t.value){this.arr.push(t),this.map[t.id]=!0;return}this._innerAdd(t,e)}remove(t){this.map[t]&&delete this.map[t]}_clearAndGetMinId(){let t;for(let e=this.arr.length-1;e>=0;e--)this.map[this.arr[e].id]?t=this.arr[e].id:this.arr.splice(e,1);return t}_findFirstId(){for(;this.arr.length;){const t=this.arr.shift();if(this.map[t.id])return t.id}}minId(t){return t?this._clearAndGetMinId():this._findFirstId()}}class dg extends BA{constructor(t){super(pi({style:dg.defaultStyleProps},t))}getControlPoints(t){const{router:e}=t,{sourceNode:n,targetNode:i}=this,[a,s]=this.getEndpoints(t,!1);let o=[];if(!e)o=t.controlPoints;else if(e.type==="shortest-path"){const A=this.context.element.getNodes();o=wk(n,i,A,e),o.length||(o=_b(a,s,n,i,t.controlPoints,{padding:e.offset}))}else e.type==="orth"&&(o=_b(a,s,n,i,t.controlPoints,e));return o}getPoints(t){const e=this.getControlPoints(t),[n,i]=this.getEndpoints(t,!0,e);return[n,...e,i]}getKeyPath(t){const e=this.getPoints(t);return ay(e,t.radius)}getLoopPath(t){const{sourcePort:e,targetPort:n,radius:i}=t,a=this.sourceNode,s=vA(a),o=Math.max(to(s),eo(s))/4,{placement:A,clockwise:l,dist:c=o}=Ir(this.getGraphicStyle(t),"loop");return sk(a,i,A,l,c,e,n)}}dg.defaultStyleProps={radius:0,controlPoints:[],router:!1};class gg extends BA{constructor(t){super(pi({style:gg.defaultStyleProps},t))}getKeyPath(t){const{curvePosition:e,curveOffset:n}=t,[i,a]=this.getEndpoints(t),s=t.controlPoint||iy(i,a,e,n);return ek(i,a,s)}}gg.defaultStyleProps={curvePosition:.5,curveOffset:30};var Bk=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};function wh(r){return r instanceof Cs&&r.type==="node"}function tx(r){return r instanceof BA}function oy(r){return r instanceof Uc}function bk(r){return wh(r)||tx(r)||oy(r)}function xk(r,t){return!r||!t?!1:r===t}const Ck={top:[.5,0],right:[1,.5],bottom:[.5,1],left:[0,.5],"left-top":[0,0],"top-left":[0,0],"left-bottom":[0,1],"bottom-left":[0,1],"right-top":[1,0],"top-right":[1,0],"right-bottom":[1,1],"bottom-right":[1,1],default:[.5,.5]};function Ay(r,t,e=Ck,n=!0){const i=[.5,.5],a=gn(t)?Mi(e,t.toLocaleLowerCase(),i):t;if(!n&&gn(t))return a;const[s,o]=a||i;return[r.min[0]+to(r)*s,r.min[1]+eo(r)*o]}function ly(r){if(!r)return{};const t=r.getPorts();return(r.attributes.ports||[]).forEach((n,i)=>{var a;const{key:s,placement:o}=n;ex(n)&&(t[a=s||i]||(t[a]=Lo(r.getShape("key").getBounds(),o)))}),t}function ex(r){const{r:t}=r;return!t||Number(t)===0}function bA(r){return Ic(r)?r:r.getPosition()}function Sk(r,t,e,n){const i=nx(r,t,e,n),a=nx(t,r,n,e);return[i,a]}function nx(r,t,e,n){const i=ly(r);if(e)return i[e];const a=Object.values(i);if(a.length===0)return;const s=a.map(l=>bA(l)),o=Mk(t,n),[A]=bL(s,o);return a.find(l=>bA(l)===A)}function Mk(r,t){const e=ly(r);if(t)return[bA(e[t])];const n=Object.values(e);return n.length>0?n.map(i=>bA(i)):[r.getCenter()]}function rx(r,t){return oy(r)||wh(r)?cy(r,t):Eh(r,t)}function Eh(r,t){if(!r||!t)return[0,0,0];if(Ic(r))return r;if(r.attributes.linkToCenter)return r.getPosition();const e=Ic(t)?t:wh(t)?t.getCenter():t.getPosition();return zd(e,r.getBounds())}function cy(r,t){if(!r||!t)return[0,0,0];const e=Ic(t)?t:wh(t)?t.getCenter():t.getPosition();return r.getIntersectPoint(e)||r.getCenter()}function ix(r,t="bottom",e=0,n=0,i=!1){const a=t.split("-"),[s,o]=Lo(r,t),[A,l]=i?["bottom","top"]:["top","bottom"],c=a.includes("top")?l:a.includes("bottom")?A:"middle",u=a.includes("left")?"right":a.includes("right")?"left":"center";return{transform:[["translate",s+e,o+n]],textBaseline:c,textAlign:u}}function Tk(r,t){return[[0,-r],[t*Math.cos(3*Math.PI/10),-t*Math.sin(3*Math.PI/10)],[r*Math.cos(Math.PI/10),-r*Math.sin(Math.PI/10)],[t*Math.cos(Math.PI/10),t*Math.sin(Math.PI/10)],[r*Math.cos(3*Math.PI/10),r*Math.sin(3*Math.PI/10)],[0,t],[-r*Math.cos(3*Math.PI/10),r*Math.sin(3*Math.PI/10)],[-t*Math.cos(Math.PI/10),t*Math.sin(Math.PI/10)],[-r*Math.cos(Math.PI/10),-r*Math.sin(Math.PI/10)],[-t*Math.cos(3*Math.PI/10),-t*Math.sin(3*Math.PI/10)]]}function Fk(r,t){const e={};return e.top=[0,-r],e.left=[-r*Math.cos(Math.PI/10),-r*Math.sin(Math.PI/10)],e["left-bottom"]=[-r*Math.cos(3*Math.PI/10),r*Math.sin(3*Math.PI/10)],e.bottom=[0,t],e["right-bottom"]=[r*Math.cos(3*Math.PI/10),r*Math.sin(3*Math.PI/10)],e.right=e.default=[r*Math.cos(Math.PI/10),-r*Math.sin(Math.PI/10)],e}function Ok(r,t,e){const n=t/2,i=r/2,a={up:[[-i,n],[i,n],[0,-n]],left:[[-i,0],[i,n],[i,-n]],right:[[-i,n],[-i,-n],[i,0]],down:[[-i,-n],[i,-n],[0,n]]};return a[e]||a.up}function Ik(r,t,e){const n=t/2,i=r/2,a={};return e==="down"?(a.bottom=a.default=[0,n],a.right=[i,-n],a.left=[-i,-n]):e==="left"?(a.top=[i,-n],a.bottom=[i,n],a.left=a.default=[-i,0]):e==="right"?(a.top=[-i,-n],a.bottom=[-i,n],a.right=a.default=[i,0]):(a.left=[-i,n],a.top=a.default=[0,-n],a.right=[i,n]),a}function s9(r,t){return[[r/2,-t/2],[r/2,t/2],[-r/2,t/2],[-r/2,-t/2]]}function Lk(r,t){return[[0,-t/2],[r/2,0],[0,t/2],[-r/2,0]]}function ax(r){return Mi(r,["style","visibility"])!=="hidden"}function Nk(r,t){const{zIndex:e,transform:n,transformOrigin:i,visibility:a,cursor:s,clipPath:o,component:A}=t,l=Bk(t,["zIndex","transform","transformOrigin","visibility","cursor","clipPath","component"]);Object.assign(r.attributes,l),n&&r.setAttribute("transform",n),we(e)&&r.setAttribute("zIndex",e),i&&r.setAttribute("transformOrigin",i),a&&r.setAttribute("visibility",a),s&&r.setAttribute("cursor",s),o&&r.setAttribute("clipPath",o),A&&r.setAttribute("component",A)}function uy(r,t){"update"in r?r.update(t):r.attr(t)}function kk(r){return[[0,r],[r*Math.sqrt(3)/2,r/2],[r*Math.sqrt(3)/2,-r/2],[0,-r],[-r*Math.sqrt(3)/2,-r/2],[-r*Math.sqrt(3)/2,r/2]]}function Qk(r){dh(r,"__to_be_destroyed__",!0)}function Bh(r){return Mi(r,"__to_be_destroyed__",!1)}var Uk=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class vg extends Na{constructor(t,e){super(t,Object.assign({},vg.defaultOptions,e)),this.onCollapseExpand=n=>Uk(this,void 0,void 0,function*(){if(!this.validate(n))return;const{target:i}=n;if(!bk(i))return;const a=i.id,{model:s,graph:o}=this.context,A=s.getElementDataById(a);if(!A)return!1;const{onCollapse:l,onExpand:c,animation:u,align:h}=this.options;fa(A)?(yield o.expandElement(a,{animation:u,align:h}),c==null||c(a)):(yield o.collapseElement(a,{animation:u,align:h}),l==null||l(a))}),this.bindEvents()}update(t){this.unbindEvents(),super.update(t),this.bindEvents()}bindEvents(){const{graph:t}=this.context,{trigger:e}=this.options;t.on(`node:${e}`,this.onCollapseExpand),t.on(`combo:${e}`,this.onCollapseExpand)}unbindEvents(){const{graph:t}=this.context,{trigger:e}=this.options;t.off(`node:${e}`,this.onCollapseExpand),t.off(`combo:${e}`,this.onCollapseExpand)}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}destroy(){this.unbindEvents(),super.destroy()}}vg.defaultOptions={enable:!0,animation:!0,trigger:Jt.DBLCLICK,align:!0};var pg={},Pk=function(r){return r=r||"g",pg[r]?pg[r]+=1:pg[r]=1,r+pg[r]},mg=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};const Dk="g6-create-edge-assist-edge-id",yg="g6-create-edge-assist-node-id";class wg extends Na{constructor(t,e){super(t,Object.assign({},wg.defaultOptions,e)),this.drop=n=>mg(this,void 0,void 0,function*(){const{targetType:i}=n;["combo","node"].includes(i)&&this.source?yield this.handleCreateEdge(n):yield this.cancelEdge()}),this.handleCreateEdge=n=>mg(this,void 0,void 0,function*(){var i,a,s;if(!this.validate(n))return;const{graph:o,canvas:A,batch:l,element:c}=this.context,{style:u}=this.options;if(this.source){this.createEdge(n),yield this.cancelEdge();return}l.startBatch(),A.setCursor("crosshair"),this.source=this.getSelectedNodeIDs([n.target.id])[0];const h=o.getElementData(this.source);o.addNodeData([{id:yg,style:{visibility:"hidden",ports:[{key:"port-1",placement:[.5,.5]}],x:(i=h.style)===null||i===void 0?void 0:i.x,y:(a=h.style)===null||a===void 0?void 0:a.y}}]),o.addEdgeData([{id:Dk,source:this.source,target:yg,style:Object.assign({pointerEvents:"none"},u)}]),yield(s=c.draw({animation:!1}))===null||s===void 0?void 0:s.finished}),this.updateAssistEdge=n=>mg(this,void 0,void 0,function*(){var i;if(!this.source)return;const{model:a,element:s}=this.context;a.translateNodeTo(yg,[n.canvas.x,n.canvas.y]),yield(i=s.draw({animation:!1,silence:!0}))===null||i===void 0?void 0:i.finished}),this.createEdge=n=>{var i,a;const{graph:s}=this.context,{style:o,onFinish:A,onCreate:l}=this.options;if(((i=n.target)===null||i===void 0?void 0:i.id)===void 0||this.source===void 0)return;const u=(a=this.getSelectedNodeIDs([n.target.id]))===null||a===void 0?void 0:a[0],h=`${this.source}-${u}-${Pk()}`,f=l({id:h,source:this.source,target:u,style:o});f&&(s.addEdgeData([f]),A(f))},this.cancelEdge=()=>mg(this,void 0,void 0,function*(){var n;if(!this.source)return;const{graph:i,element:a,batch:s}=this.context;i.removeNodeData([yg]),this.source=void 0,yield(n=a.draw({animation:!1}))===null||n===void 0?void 0:n.finished,s.endBatch()}),this.bindEvents()}update(t){super.update(t),this.bindEvents()}bindEvents(){const{graph:t}=this.context,{trigger:e}=this.options;this.unbindEvents(),e==="click"?(t.on($a.CLICK,this.handleCreateEdge),t.on(fl.CLICK,this.handleCreateEdge),t.on(To.CLICK,this.cancelEdge),t.on(Cd.CLICK,this.cancelEdge)):(t.on($a.DRAG_START,this.handleCreateEdge),t.on(fl.DRAG_START,this.handleCreateEdge),t.on(Jt.POINTER_UP,this.drop)),t.on(Jt.POINTER_MOVE,this.updateAssistEdge)}getSelectedNodeIDs(t){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(e=>e.id).concat(t)))}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}unbindEvents(){const{graph:t}=this.context;t.off($a.CLICK,this.handleCreateEdge),t.off(fl.CLICK,this.handleCreateEdge),t.off(To.CLICK,this.cancelEdge),t.off(Cd.CLICK,this.cancelEdge),t.off($a.DRAG_START,this.handleCreateEdge),t.off(fl.DRAG_START,this.handleCreateEdge),t.off(Jt.POINTER_UP,this.drop),t.off(Jt.POINTER_MOVE,this.updateAssistEdge)}destroy(){this.unbindEvents(),super.destroy()}}wg.defaultOptions={animation:!0,enable:!0,style:{},trigger:"drag",onCreate:r=>r,onFinish:()=>{}};function Rk(r,t,e){var n;return function(){var i=this,a=arguments,s=function(){n=null,e||r.apply(i,a)},o=e&&!n;clearTimeout(n),n=setTimeout(s,t),o&&r.apply(i,a)}}var bh=Rk,sx=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Eg extends Na{constructor(t,e){super(t,Object.assign({},Eg.defaultOptions,e)),this.isDragging=!1,this.onDragStart=n=>{this.validate(n)&&(this.isDragging=!0,this.context.canvas.setCursor("grabbing"))},this.onDrag=n=>{var i,a,s,o;if(!this.isDragging||_r.isPinching)return;const A=(a=(i=n.movement)===null||i===void 0?void 0:i.x)!==null&&a!==void 0?a:n.dx,l=(o=(s=n.movement)===null||s===void 0?void 0:s.y)!==null&&o!==void 0?o:n.dy;A|l&&this.translate([A,l],!1)},this.onDragEnd=()=>{var n,i;this.isDragging=!1,this.context.canvas.setCursor(this.defaultCursor),(i=(n=this.options).onFinish)===null||i===void 0||i.call(n)},this.invokeOnFinish=bh(()=>{var n,i;(i=(n=this.options).onFinish)===null||i===void 0||i.call(n)},300),this.shortcut=new Nc(t.graph),this.bindEvents(),this.defaultCursor=this.context.canvas.getConfig().cursor||"default"}update(t){this.unbindEvents(),super.update(t),this.bindEvents()}bindEvents(){const{trigger:t}=this.options;if(Br(t)){const{up:e=[],down:n=[],left:i=[],right:a=[]}=t;this.shortcut.bind(e,s=>this.onTranslate([0,1],s)),this.shortcut.bind(n,s=>this.onTranslate([0,-1],s)),this.shortcut.bind(i,s=>this.onTranslate([1,0],s)),this.shortcut.bind(a,s=>this.onTranslate([-1,0],s))}else{const{graph:e}=this.context;e.on(Jt.DRAG_START,this.onDragStart),e.on(Jt.DRAG,this.onDrag),e.on(Jt.DRAG_END,this.onDragEnd)}}onTranslate(t,e){return sx(this,void 0,void 0,function*(){if(!this.validate(e))return;const{sensitivity:n}=this.options,i=n*-1;yield this.translate(Bs(t,i),this.options.animation),this.invokeOnFinish()})}translate(t,e){return sx(this,void 0,void 0,function*(){t=this.clampByDirection(t),t=this.clampByRange(t),t=this.clampByRotation(t),yield this.context.graph.translateBy(t,e)})}clampByRotation([t,e]){const n=this.context.graph.getRotation();return $B([t,e],n)}clampByDirection([t,e]){const{direction:n}=this.options;return n==="x"?e=0:n==="y"&&(t=0),[t,e]}clampByRange([t,e]){const{viewport:n,canvas:i}=this.context,[a,s]=i.getSize(),[o,A,l,c]=La(this.options.range),u=[s*o,a*A,s*l,a*c],h=pA(Tm(n.getCanvasCenter()),u),f=tr(n.getViewportCenter(),[t,e,0]);if(!ws(f,h)){const{min:[d,g],max:[v,y]}=h;(f[0]<d&&t>0||f[0]>v&&t<0)&&(t=0),(f[1]<g&&e>0||f[1]>y&&e<0)&&(e=0)}return[t,e]}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return typeof e=="function"?e(t):!!e}unbindEvents(){this.shortcut.unbindAll();const{graph:t}=this.context;t.off(Jt.DRAG_START,this.onDragStart),t.off(Jt.DRAG,this.onDrag),t.off(Jt.DRAG_END,this.onDragEnd)}destroy(){this.shortcut.destroy(),this.unbindEvents(),this.context.canvas.setCursor(this.defaultCursor),super.destroy()}}Eg.defaultOptions={enable:r=>"targetType"in r?r.targetType==="canvas":!0,sensitivity:10,direction:"both",range:1/0};var ox=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class xh extends Na{constructor(t,e){super(t,Object.assign({},xh.defaultOptions,e)),this.enable=!1,this.enableElements=["node","combo"],this.target=[],this.shadowOrigin=[0,0],this.hiddenEdges=[],this.isDragging=!1,this.onDrop=n=>ox(this,void 0,void 0,function*(){var i;if(this.options.dropEffect!=="link")return;const{model:a,element:s}=this.context,o=n.target.id;this.target.forEach(A=>{const l=a.getParentData(A,nr);l&&Pt(l)===o&&a.refreshComboData(o),a.setParent(A,o,nr)}),yield(i=s==null?void 0:s.draw({animation:!0}))===null||i===void 0?void 0:i.finished}),this.setCursor=n=>{if(this.isDragging)return;const{type:i}=n,{canvas:a}=this.context,{cursor:s}=this.options;i===Jt.POINTER_ENTER?a.setCursor((s==null?void 0:s.grab)||"grab"):a.setCursor((s==null?void 0:s.default)||"default")},this.onDragStart=this.onDragStart.bind(this),this.onDrag=this.onDrag.bind(this),this.onDragEnd=this.onDragEnd.bind(this),this.onDrop=this.onDrop.bind(this),this.bindEvents()}update(t){this.unbindEvents(),super.update(t),this.bindEvents()}bindEvents(){const{graph:t,canvas:e}=this.context,n=e.getLayer().getContextService().$canvas;n&&(n.addEventListener("blur",this.onDragEnd),n.addEventListener("contextmenu",this.onDragEnd)),this.enableElements.forEach(i=>{t.on(`${i}:${Jt.DRAG_START}`,this.onDragStart),t.on(`${i}:${Jt.DRAG}`,this.onDrag),t.on(`${i}:${Jt.DRAG_END}`,this.onDragEnd),t.on(`${i}:${Jt.POINTER_ENTER}`,this.setCursor),t.on(`${i}:${Jt.POINTER_LEAVE}`,this.setCursor)}),["link"].includes(this.options.dropEffect)&&(t.on(fl.DROP,this.onDrop),t.on(To.DROP,this.onDrop))}getSelectedNodeIDs(t){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(e=>e.id).concat(t)))}getDelta(t){const e=this.context.graph.getZoom();return bs([t.dx,t.dy],e)}onDragStart(t){var e;if(this.enable=this.validate(t),!this.enable)return;const{batch:n,canvas:i,graph:a}=this.context;i.setCursor(((e=this.options.cursor)===null||e===void 0?void 0:e.grabbing)||"grabbing"),this.isDragging=!0,n.startBatch();const s=t.target.id;a.getElementState(s).includes(this.options.state)?this.target=this.getSelectedNodeIDs([s]):this.target=[s],this.hideEdge(),this.context.graph.frontElement(this.target),this.options.shadow&&this.createShadow(this.target)}onDrag(t){if(!this.enable)return;const e=this.getDelta(t);this.options.shadow?this.moveShadow(e):this.moveElement(this.target,e)}onDragEnd(){var t,e,n;if(!this.enable)return;if(this.enable=!1,this.options.shadow){if(!this.shadow)return;this.shadow.style.visibility="hidden";const{x:s=0,y:o=0}=this.shadow.attributes,[A,l]=tr([+s,+o],this.shadowOrigin);this.moveElement(this.target,[A,l])}this.showEdges(),(e=(t=this.options).onFinish)===null||e===void 0||e.call(t,this.target);const{batch:i,canvas:a}=this.context;i.endBatch(),a.setCursor(((n=this.options.cursor)===null||n===void 0?void 0:n.grab)||"grab"),this.isDragging=!1,this.target=[]}validate(t){if(this.destroyed||Bh(t.target)||this.context.graph.isCollapsingExpanding)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}clampByRotation([t,e]){const n=this.context.graph.getRotation();return $B([t,e],n)}moveElement(t,e){return ox(this,void 0,void 0,function*(){const{graph:n,model:i}=this.context,{dropEffect:a}=this.options;a==="move"&&t.forEach(s=>i.refreshComboData(s)),n.translateElementBy(Object.fromEntries(t.map(s=>[s,this.clampByRotation(e)])),!1)})}moveShadow(t){if(!this.shadow)return;const{x:e=0,y:n=0}=this.shadow.attributes,[i,a]=t;this.shadow.attr({x:+e+i,y:+n+a})}createShadow(t){const e=Ir(this.options,"shadow"),n=oh(t.map(l=>this.context.element.getElement(l).getBounds())),[i,a]=n.min;this.shadowOrigin=[i,a];const[s,o]=gA(n),A={width:s,height:o,x:i,y:a};this.shadow?this.shadow.attr(Object.assign(Object.assign(Object.assign({},e),A),{visibility:"visible"})):(this.shadow=new xi({style:Object.assign(Object.assign(Object.assign({$layer:"transient"},e),A),{pointerEvents:"none"})}),this.context.canvas.appendChild(this.shadow))}showEdges(){this.options.shadow||this.hiddenEdges.length===0||(this.context.graph.showElement(this.hiddenEdges),this.hiddenEdges=[])}hideEdge(){const{hideEdge:t,shadow:e}=this.options;if(t==="none"||e)return;const{graph:n}=this.context;t==="all"?this.hiddenEdges=n.getEdgeData().map(Pt):this.hiddenEdges=Array.from(new Set(this.target.map(i=>n.getRelatedEdgesData(i,t).map(Pt)).flat())),n.hideElement(this.hiddenEdges)}unbindEvents(){const{graph:t,canvas:e}=this.context,n=e.getLayer().getContextService().$canvas;n&&(n.removeEventListener("blur",this.onDragEnd),n.removeEventListener("contextmenu",this.onDragEnd)),this.enableElements.forEach(i=>{t.off(`${i}:${Jt.DRAG_START}`,this.onDragStart),t.off(`${i}:${Jt.DRAG}`,this.onDrag),t.off(`${i}:${Jt.DRAG_END}`,this.onDragEnd),t.off(`${i}:${Jt.POINTER_ENTER}`,this.setCursor),t.off(`${i}:${Jt.POINTER_LEAVE}`,this.setCursor)}),t.off(`combo:${Jt.DROP}`,this.onDrop),t.off(`canvas:${Jt.DROP}`,this.onDrop)}destroy(){var t;this.unbindEvents(),(t=this.shadow)===null||t===void 0||t.destroy(),super.destroy()}}xh.defaultOptions={animation:!0,enable:r=>["node","combo"].includes(r.targetType),dropEffect:"move",state:"selected",hideEdge:"none",shadow:!1,shadowZIndex:100,shadowFill:"#F3F9FF",shadowFillOpacity:.5,shadowStroke:"#1890FF",shadowStrokeOpacity:.9,shadowLineDash:[5,5],cursor:{default:"default",grab:"grab",grabbing:"grabbing"}};var _k="*",Hk=function(){function r(){this._events={}}return r.prototype.on=function(t,e,n){return this._events[t]||(this._events[t]=[]),this._events[t].push({callback:e,once:!!n}),this},r.prototype.once=function(t,e){return this.on(t,e,!0)},r.prototype.emit=function(t){for(var e=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];var a=this._events[t]||[],s=this._events[_k]||[],o=function(A){for(var l=A.length,c=0;c<l;c++)if(A[c]){var u=A[c],h=u.callback,f=u.once;f&&(A.splice(c,1),A.length===0&&delete e._events[t],l--,c--),h.apply(e,n)}};o(a),o(s)},r.prototype.off=function(t,e){if(!t)this._events={};else if(!e)delete this._events[t];else{for(var n=this._events[t]||[],i=n.length,a=0;a<i;a++)n[a].callback===e&&(n.splice(a,1),i--,a--);n.length===0&&delete this._events[t]}return this},r.prototype.getEvents=function(){return this._events},r}(),Bg=Hk;function hy(r,t,e,n){for(;r.length;){const i=r.shift();if(e(i))return!0;t.add(i.id),n(i.id).forEach(s=>{t.has(s.id)||(t.add(s.id),r.push(s))})}return!1}function bg(r,t,e,n){if(e(r))return!0;t.add(r.id);for(const a of n(r.id))if(!t.has(a.id)&&bg(a,t,e,n))return!0;return!1}const Ax=()=>!0;class Gk{constructor(t){yr(this,"graph");yr(this,"nodeFilter");yr(this,"edgeFilter");yr(this,"cacheEnabled");yr(this,"inEdgesMap",new Map);yr(this,"outEdgesMap",new Map);yr(this,"bothEdgesMap",new Map);yr(this,"allNodesMap",new Map);yr(this,"allEdgesMap",new Map);yr(this,"clearCache",()=>{this.inEdgesMap.clear(),this.outEdgesMap.clear(),this.bothEdgesMap.clear(),this.allNodesMap.clear(),this.allEdgesMap.clear()});yr(this,"refreshCache",()=>{this.clearCache(),this.updateCache(this.graph.getAllNodes().map(t=>t.id))});yr(this,"updateCache",t=>{const e=new Set;t.forEach(n=>{const i=this.bothEdgesMap.get(n);if(i&&i.forEach(a=>e.add(a.id)),!this.hasNode(n))this.inEdgesMap.delete(n),this.outEdgesMap.delete(n),this.bothEdgesMap.delete(n),this.allNodesMap.delete(n);else{const a=this.graph.getRelatedEdges(n,"in").filter(this.edgeFilter),s=this.graph.getRelatedEdges(n,"out").filter(this.edgeFilter),o=Array.from(new Set([...a,...s]));o.forEach(A=>e.add(A.id)),this.inEdgesMap.set(n,a),this.outEdgesMap.set(n,s),this.bothEdgesMap.set(n,o),this.allNodesMap.set(n,this.graph.getNode(n))}}),e.forEach(n=>{this.hasEdge(n)?this.allEdgesMap.set(n,this.graph.getEdge(n)):this.allEdgesMap.delete(n)})});yr(this,"handleGraphChanged",t=>{const e=new Set;t.changes.forEach(n=>{switch(n.type){case"NodeAdded":e.add(n.value.id);break;case"NodeDataUpdated":e.add(n.id);break;case"EdgeAdded":e.add(n.value.source),e.add(n.value.target);break;case"EdgeUpdated":(n.propertyName==="source"||n.propertyName==="target")&&(e.add(n.oldValue),e.add(n.newValue));break;case"EdgeDataUpdated":if(t.graph.hasEdge(n.id)){const i=t.graph.getEdge(n.id);e.add(i.source),e.add(i.target)}break;case"EdgeRemoved":e.add(n.value.source),e.add(n.value.target);break;case"NodeRemoved":e.add(n.value.id);break;default:break}}),this.updateCache(e)});this.graph=t.graph;const e=t.nodeFilter||Ax,n=t.edgeFilter||Ax;this.nodeFilter=e,this.edgeFilter=i=>{const{source:a,target:s}=this.graph.getEdgeDetail(i.id);return!e(a)||!e(s)?!1:n(i,a,s)},t.cache==="auto"?(this.cacheEnabled=!0,this.startAutoCache()):t.cache==="manual"?this.cacheEnabled=!0:this.cacheEnabled=!1}startAutoCache(){this.refreshCache(),this.graph.on("changed",this.handleGraphChanged)}stopAutoCache(){this.graph.off("changed",this.handleGraphChanged)}checkNodeExistence(t){this.getNode(t)}hasNode(t){if(!this.graph.hasNode(t))return!1;const e=this.graph.getNode(t);return this.nodeFilter(e)}areNeighbors(t,e){return this.checkNodeExistence(t),this.getNeighbors(e).some(n=>n.id===t)}getNode(t){const e=this.graph.getNode(t);if(!this.nodeFilter(e))throw new Error("Node not found for id: "+t);return e}getRelatedEdges(t,e){return this.checkNodeExistence(t),this.cacheEnabled?e==="in"?this.inEdgesMap.get(t):e==="out"?this.outEdgesMap.get(t):this.bothEdgesMap.get(t):this.graph.getRelatedEdges(t,e).filter(this.edgeFilter)}getDegree(t,e){return this.getRelatedEdges(t,e).length}getSuccessors(t){const n=this.getRelatedEdges(t,"out").map(i=>this.getNode(i.target));return Array.from(new Set(n))}getPredecessors(t){const n=this.getRelatedEdges(t,"in").map(i=>this.getNode(i.source));return Array.from(new Set(n))}getNeighbors(t){const e=this.getPredecessors(t),n=this.getSuccessors(t);return Array.from(new Set([...e,...n]))}hasEdge(t){if(!this.graph.hasEdge(t))return!1;const e=this.graph.getEdge(t);return this.edgeFilter(e)}getEdge(t){const e=this.graph.getEdge(t);if(!this.edgeFilter(e))throw new Error("Edge not found for id: "+t);return e}getEdgeDetail(t){const e=this.getEdge(t);return{edge:e,source:this.getNode(e.source),target:this.getNode(e.target)}}hasTreeStructure(t){return this.graph.hasTreeStructure(t)}getRoots(t){return this.graph.getRoots(t).filter(this.nodeFilter)}getChildren(t,e){return this.checkNodeExistence(t),this.graph.getChildren(t,e).filter(this.nodeFilter)}getParent(t,e){this.checkNodeExistence(t);const n=this.graph.getParent(t,e);return!n||!this.nodeFilter(n)?null:n}getAllNodes(){return this.cacheEnabled?Array.from(this.allNodesMap.values()):this.graph.getAllNodes().filter(this.nodeFilter)}getAllEdges(){return this.cacheEnabled?Array.from(this.allEdgesMap.values()):this.graph.getAllEdges().filter(this.edgeFilter)}bfs(t,e,n="out"){const i={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];hy([this.getNode(t)],new Set,e,i)}dfs(t,e,n="out"){const i={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];bg(this.getNode(t),new Set,e,i)}}class Gr extends Bg{constructor(e){super();yr(this,"nodeMap",new Map);yr(this,"edgeMap",new Map);yr(this,"inEdgesMap",new Map);yr(this,"outEdgesMap",new Map);yr(this,"bothEdgesMap",new Map);yr(this,"treeIndices",new Map);yr(this,"changes",[]);yr(this,"batchCount",0);yr(this,"onChanged",()=>{});yr(this,"batch",e=>{this.batchCount+=1,e(),this.batchCount-=1,this.batchCount||this.commit()});e&&(e.nodes&&this.addNodes(e.nodes),e.edges&&this.addEdges(e.edges),e.tree&&this.addTree(e.tree),e.onChanged&&(this.onChanged=e.onChanged))}commit(){const e=this.changes;this.changes=[];const n={graph:this,changes:e};this.emit("changed",n),this.onChanged(n)}reduceChanges(e){let n=[];return e.forEach(i=>{switch(i.type){case"NodeRemoved":{let a=!1;n=n.filter(s=>{if(s.type==="NodeAdded"){const o=s.value.id===i.value.id;return o&&(a=!0),!o}else{if(s.type==="NodeDataUpdated")return s.id!==i.value.id;if(s.type==="TreeStructureChanged")return s.nodeId!==i.value.id}return!0}),a||n.push(i);break}case"EdgeRemoved":{let a=!1;n=n.filter(s=>{if(s.type==="EdgeAdded"){const o=s.value.id===i.value.id;return o&&(a=!0),!o}else if(s.type==="EdgeDataUpdated"||s.type==="EdgeUpdated")return s.id!==i.value.id;return!0}),a||n.push(i);break}case"NodeDataUpdated":case"EdgeDataUpdated":case"EdgeUpdated":{const a=n.findIndex(o=>o.type===i.type&&o.id===i.id&&(i.propertyName===void 0||o.propertyName===i.propertyName)),s=n[a];s?i.propertyName!==void 0?s.newValue=i.newValue:(n.splice(a,1),n.push(i)):n.push(i);break}case"TreeStructureDetached":{n=n.filter(a=>a.type==="TreeStructureAttached"||a.type==="TreeStructureChanged"?a.treeKey!==i.treeKey:!0),n.push(i);break}case"TreeStructureChanged":{const a=n.find(s=>s.type==="TreeStructureChanged"&&s.treeKey===i.treeKey&&s.nodeId===i.nodeId);a?a.newParentId=i.newParentId:n.push(i);break}default:n.push(i);break}}),n}checkNodeExistence(e){this.getNode(e)}hasNode(e){return this.nodeMap.has(e)}areNeighbors(e,n){return this.getNeighbors(n).some(i=>i.id===e)}getNode(e){const n=this.nodeMap.get(e);if(!n)throw new Error("Node not found for id: "+e);return n}getRelatedEdges(e,n){if(this.checkNodeExistence(e),n==="in"){const i=this.inEdgesMap.get(e);return Array.from(i)}else if(n==="out"){const i=this.outEdgesMap.get(e);return Array.from(i)}else{const i=this.bothEdgesMap.get(e);return Array.from(i)}}getDegree(e,n){return this.getRelatedEdges(e,n).length}getSuccessors(e){const i=this.getRelatedEdges(e,"out").map(a=>this.getNode(a.target));return Array.from(new Set(i))}getPredecessors(e){const i=this.getRelatedEdges(e,"in").map(a=>this.getNode(a.source));return Array.from(new Set(i))}getNeighbors(e){const n=this.getPredecessors(e),i=this.getSuccessors(e);return Array.from(new Set([...n,...i]))}doAddNode(e){if(this.hasNode(e.id))throw new Error("Node already exists: "+e.id);this.nodeMap.set(e.id,e),this.inEdgesMap.set(e.id,new Set),this.outEdgesMap.set(e.id,new Set),this.bothEdgesMap.set(e.id,new Set),this.treeIndices.forEach(n=>{n.childrenMap.set(e.id,new Set)}),this.changes.push({type:"NodeAdded",value:e})}addNodes(e){this.batch(()=>{for(const n of e)this.doAddNode(n)})}addNode(e){this.addNodes([e])}doRemoveNode(e){const n=this.getNode(e),i=this.bothEdgesMap.get(e);i==null||i.forEach(a=>this.doRemoveEdge(a.id)),this.nodeMap.delete(e),this.treeIndices.forEach(a=>{var o,A;(o=a.childrenMap.get(e))==null||o.forEach(l=>{a.parentMap.delete(l.id)});const s=a.parentMap.get(e);s&&((A=a.childrenMap.get(s.id))==null||A.delete(n)),a.parentMap.delete(e),a.childrenMap.delete(e)}),this.bothEdgesMap.delete(e),this.inEdgesMap.delete(e),this.outEdgesMap.delete(e),this.changes.push({type:"NodeRemoved",value:n})}removeNodes(e){this.batch(()=>{e.forEach(n=>this.doRemoveNode(n))})}removeNode(e){this.removeNodes([e])}updateNodeDataProperty(e,n,i){const a=this.getNode(e);this.batch(()=>{const s=a.data[n],o=i;a.data[n]=o,this.changes.push({type:"NodeDataUpdated",id:e,propertyName:n,oldValue:s,newValue:o})})}mergeNodeData(e,n){this.batch(()=>{Object.entries(n).forEach(([i,a])=>{this.updateNodeDataProperty(e,i,a)})})}updateNodeData(...e){const n=e[0],i=this.getNode(n);if(typeof e[1]=="string"){this.updateNodeDataProperty(n,e[1],e[2]);return}let a;if(typeof e[1]=="function"){const s=e[1];a=s(i.data)}else typeof e[1]=="object"&&(a=e[1]);this.batch(()=>{const s=i.data,o=a;i.data=a,this.changes.push({type:"NodeDataUpdated",id:n,oldValue:s,newValue:o})})}checkEdgeExistence(e){if(!this.hasEdge(e))throw new Error("Edge not found for id: "+e)}hasEdge(e){return this.edgeMap.has(e)}getEdge(e){return this.checkEdgeExistence(e),this.edgeMap.get(e)}getEdgeDetail(e){const n=this.getEdge(e);return{edge:n,source:this.getNode(n.source),target:this.getNode(n.target)}}doAddEdge(e){if(this.hasEdge(e.id))throw new Error("Edge already exists: "+e.id);this.checkNodeExistence(e.source),this.checkNodeExistence(e.target),this.edgeMap.set(e.id,e);const n=this.inEdgesMap.get(e.target),i=this.outEdgesMap.get(e.source),a=this.bothEdgesMap.get(e.source),s=this.bothEdgesMap.get(e.target);n.add(e),i.add(e),a.add(e),s.add(e),this.changes.push({type:"EdgeAdded",value:e})}addEdges(e){this.batch(()=>{for(const n of e)this.doAddEdge(n)})}addEdge(e){this.addEdges([e])}doRemoveEdge(e){const n=this.getEdge(e),i=this.outEdgesMap.get(n.source),a=this.inEdgesMap.get(n.target),s=this.bothEdgesMap.get(n.source),o=this.bothEdgesMap.get(n.target);i.delete(n),a.delete(n),s.delete(n),o.delete(n),this.edgeMap.delete(e),this.changes.push({type:"EdgeRemoved",value:n})}removeEdges(e){this.batch(()=>{e.forEach(n=>this.doRemoveEdge(n))})}removeEdge(e){this.removeEdges([e])}updateEdgeSource(e,n){const i=this.getEdge(e);this.checkNodeExistence(n);const a=i.source,s=n;this.outEdgesMap.get(a).delete(i),this.bothEdgesMap.get(a).delete(i),this.outEdgesMap.get(s).add(i),this.bothEdgesMap.get(s).add(i),i.source=n,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:e,propertyName:"source",oldValue:a,newValue:s})})}updateEdgeTarget(e,n){const i=this.getEdge(e);this.checkNodeExistence(n);const a=i.target,s=n;this.inEdgesMap.get(a).delete(i),this.bothEdgesMap.get(a).delete(i),this.inEdgesMap.get(s).add(i),this.bothEdgesMap.get(s).add(i),i.target=n,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:e,propertyName:"target",oldValue:a,newValue:s})})}updateEdgeDataProperty(e,n,i){const a=this.getEdge(e);this.batch(()=>{const s=a.data[n],o=i;a.data[n]=o,this.changes.push({type:"EdgeDataUpdated",id:e,propertyName:n,oldValue:s,newValue:o})})}updateEdgeData(...e){const n=e[0],i=this.getEdge(n);if(typeof e[1]=="string"){this.updateEdgeDataProperty(n,e[1],e[2]);return}let a;if(typeof e[1]=="function"){const s=e[1];a=s(i.data)}else typeof e[1]=="object"&&(a=e[1]);this.batch(()=>{const s=i.data,o=a;i.data=a,this.changes.push({type:"EdgeDataUpdated",id:n,oldValue:s,newValue:o})})}mergeEdgeData(e,n){this.batch(()=>{Object.entries(n).forEach(([i,a])=>{this.updateEdgeDataProperty(e,i,a)})})}checkTreeExistence(e){if(!this.hasTreeStructure(e))throw new Error("Tree structure not found for treeKey: "+e)}hasTreeStructure(e){return this.treeIndices.has(e)}attachTreeStructure(e){this.treeIndices.has(e)||(this.treeIndices.set(e,{parentMap:new Map,childrenMap:new Map}),this.batch(()=>{this.changes.push({type:"TreeStructureAttached",treeKey:e})}))}detachTreeStructure(e){this.checkTreeExistence(e),this.treeIndices.delete(e),this.batch(()=>{this.changes.push({type:"TreeStructureDetached",treeKey:e})})}addTree(e,n){this.batch(()=>{this.attachTreeStructure(n);const i=[],a=Array.isArray(e)?e:[e];for(;a.length;){const s=a.shift();i.push(s),s.children&&a.push(...s.children)}this.addNodes(i),i.forEach(s=>{var o;(o=s.children)==null||o.forEach(A=>{this.setParent(A.id,s.id,n)})})})}getRoots(e){return this.checkTreeExistence(e),this.getAllNodes().filter(n=>!this.getParent(n.id,e))}getChildren(e,n){this.checkNodeExistence(e),this.checkTreeExistence(n);const a=this.treeIndices.get(n).childrenMap.get(e);return Array.from(a||[])}getParent(e,n){return this.checkNodeExistence(e),this.checkTreeExistence(n),this.treeIndices.get(n).parentMap.get(e)||null}getAncestors(e,n){const i=[];let a=this.getNode(e),s;for(;s=this.getParent(a.id,n);)i.push(s),a=s;return i}setParent(e,n,i){var c,u;this.checkTreeExistence(i);const a=this.treeIndices.get(i);if(!a)return;const s=this.getNode(e),o=a.parentMap.get(e);if((o==null?void 0:o.id)===n)return;if(n==null){o&&((c=a.childrenMap.get(o.id))==null||c.delete(s)),a.parentMap.delete(e);return}const A=this.getNode(n);a.parentMap.set(e,A),o&&((u=a.childrenMap.get(o.id))==null||u.delete(s));let l=a.childrenMap.get(A.id);l||(l=new Set,a.childrenMap.set(A.id,l)),l.add(s),this.batch(()=>{this.changes.push({type:"TreeStructureChanged",treeKey:i,nodeId:e,oldParentId:o==null?void 0:o.id,newParentId:A.id})})}dfsTree(e,n,i){const a=s=>this.getChildren(s,i);return bg(this.getNode(e),new Set,n,a)}bfsTree(e,n,i){const a=s=>this.getChildren(s,i);return hy([this.getNode(e)],new Set,n,a)}getAllNodes(){return Array.from(this.nodeMap.values())}getAllEdges(){return Array.from(this.edgeMap.values())}bfs(e,n,i="out"){const a={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[i];return hy([this.getNode(e)],new Set,n,a)}dfs(e,n,i="out"){const a={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[i];return bg(this.getNode(e),new Set,n,a)}clone(){const e=this.getAllNodes().map(a=>H1(tu({},a),{data:tu({},a.data)})),n=this.getAllEdges().map(a=>H1(tu({},a),{data:tu({},a.data)})),i=new Gr({nodes:e,edges:n});return this.treeIndices.forEach(({parentMap:a,childrenMap:s},o)=>{const A=new Map;a.forEach((c,u)=>{A.set(u,i.getNode(c.id))});const l=new Map;s.forEach((c,u)=>{l.set(u,new Set(Array.from(c).map(h=>i.getNode(h.id))))}),i.treeIndices.set(o,{parentMap:A,childrenMap:l})}),i}toJSON(){return JSON.stringify({nodes:this.getAllNodes(),edges:this.getAllEdges()})}createView(e){return new Gk(tu({graph:this},e))}}class xg{constructor(t,e){this.context=t,this.options=e||{}}}var Kk=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})},zk=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};function o9(r){const{type:t}=r;return!!(["comboCombined","comboForce"].includes(t)||t==="antv-dagre"&&r.sortByCombo)}function Vk(r){const{type:t}=r;return["compact-box","mindmap","dendrogram","indented"].includes(t)}function A9(r){return isNumber(r.x)&&isNumber(r.y)}function Wk(r){return!Array.isArray(r)&&(r==null?void 0:r.preLayout)}function Cg(r){const{nodes:t,edges:e}=r,n={nodes:[],edges:[],combos:[]};return t.forEach(i=>{const a=i.data._isCombo?n.combos:n.nodes,{x:s,y:o,z:A=0}=i.data;a==null||a.push({id:i.id,style:{x:s,y:o,z:A}})}),e.forEach(i=>{const{id:a,source:s,target:o,data:{points:A=[],controlPoints:l=A.slice(1,A.length-1)}}=i;n.edges.push({id:a,source:s,target:o,style:Object.assign({},l!=null&&l.length?{controlPoints:l.map(Si)}:{})})}),n}function Zk(r,t){class e extends xg{constructor(i,a){if(super(i,a),this.instance=new r({}),this.id=this.instance.id,"stop"in this.instance&&"tick"in this.instance){const s=this.instance;this.stop=s.stop.bind(s),this.tick=o=>{const A=s.tick(o);return Cg(A)}}}execute(i,a){return Kk(this,void 0,void 0,function*(){return Cg(yield this.instance.execute(this.graphData2LayoutModel(i),this.transformOptions(Ci({},this.options,a))))})}transformOptions(i){if(!("onTick"in i))return i;const a=i.onTick;return i.onTick=s=>a(Cg(s)),i}graphData2LayoutModel(i){const{nodes:a=[],edges:s=[],combos:o=[]}=i,A=a.map(f=>{const d=Pt(f),{data:g,style:v,combo:y}=f,E=zk(f,["data","style","combo"]),C={id:d,data:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},g),{data:g}),y?{parentId:y}:{}),{style:v}),E)};return v!=null&&v.x&&Object.assign(C.data,{x:v.x}),v!=null&&v.y&&Object.assign(C.data,{y:v.y}),v!=null&&v.z&&Object.assign(C.data,{z:v.z}),C}),l=new Map(A.map(f=>[f.id,f])),c=s.filter(f=>{const{source:d,target:g}=f;return l.has(d)&&l.has(g)}).map(f=>{const{source:d,target:g,data:v,style:y}=f;return{id:Pt(f),source:d,target:g,data:Object.assign({},v),style:Object.assign({},y)}}),u=o.map(f=>({id:Pt(f),data:Object.assign({_isCombo:!0},f.data),style:Object.assign({},f.style)})),h=new Gr({nodes:[...A,...u],edges:c});return t.model.model.hasTreeStructure(nr)&&(h.attachTreeStructure(nr),A.forEach(f=>{const d=t.model.model.getParent(f.id,nr);d&&h.hasNode(d.id)&&h.setParent(f.id,d.id,nr)})),h}}return e}function fy(r,t,...e){if(t in r)return r[t](...e);if("instance"in r){const n=r.instance;if(t in n)return n[t](...e)}return null}function lx(r,t){if(t in r)return r[t];if("instance"in r){const e=r.instance;if(t in e)return e[t]}return null}var jk=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Yk extends xh{get forceLayoutInstance(){return this.context.layout.getLayoutInstance().find(t=>["d3-force","d3-force-3d"].includes(t==null?void 0:t.id))}validate(t){return this.context.layout?this.forceLayoutInstance?super.validate(t):(ha.warn("DragElementForce only works with d3-force or d3-force-3d layout"),!1):!1}moveElement(t,e){return jk(this,void 0,void 0,function*(){const n=this.forceLayoutInstance;this.context.graph.getNodeData(t).forEach((i,a)=>{const{x:s=0,y:o=0}=i.style||{};n&&fy(n,"setFixedPosition",t[a],[...tn([+s,+o],this.clampByRotation(e))])})})}onDragStart(t){if(this.enable=this.validate(t),!this.enable)return;this.target=this.getSelectedNodeIDs([t.target.id]),this.hideEdge(),this.context.graph.frontElement(this.target);const e=this.forceLayoutInstance;e&&lx(e,"simulation").alphaTarget(.3).restart(),this.context.graph.getNodeData(this.target).forEach(n=>{const{x:i=0,y:a=0}=n.style||{};e&&fy(e,"setFixedPosition",Pt(n),[+i,+a])})}onDrag(t){if(!this.enable)return;const e=this.getDelta(t);this.moveElement(this.target,e)}onDragEnd(){const t=this.forceLayoutInstance;t&&lx(t,"simulation").alphaTarget(0),!this.options.fixed&&this.context.graph.getNodeData(this.target).forEach(e=>{t&&fy(t,"setFixedPosition",Pt(e),[null,null,null])})}}var cx=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Sg extends Na{constructor(t,e){super(t,Object.assign({},Sg.defaultOptions,e)),this.isZoomEvent=n=>!!(n.data&&"scale"in n.data),this.relatedEdgeToUpdate=new Set,this.zoom=this.context.graph.getZoom(),this.fixElementSize=n=>cx(this,void 0,void 0,function*(){if(!this.validate(n))return;const{graph:i}=this.context,{state:a,nodeFilter:s,edgeFilter:o,comboFilter:A}=this.options,l=(a?i.getElementDataByState("node",a):i.getNodeData()).filter(s),c=(a?i.getElementDataByState("edge",a):i.getEdgeData()).filter(o),u=(a?i.getElementDataByState("combo",a):i.getComboData()).filter(A),h=this.isZoomEvent(n)?this.zoom=Math.max(.01,Math.min(n.data.scale,10)):this.zoom,f=[...l,...u];f.length>0&&f.forEach(d=>this.fixNodeLike(d,h)),this.updateRelatedEdges(),c.length>0&&c.forEach(d=>this.fixEdge(d,h))}),this.cachedStyles=new Map,this.getOriginalFieldValue=(n,i,a)=>{var s;const o=this.cachedStyles.get(n)||[],A=((s=o.find(l=>l.shape===i))===null||s===void 0?void 0:s.style)||{};return a in A||(A[a]=i.attributes[a],this.cachedStyles.set(n,[...o.filter(l=>l.shape!==i),{shape:i,style:A}])),A[a]},this.scaleEntireElement=(n,i,a)=>{i.setLocalScale(1/a);const s=this.cachedStyles.get(n)||[];s.push({shape:i}),this.cachedStyles.set(n,s)},this.scaleSpecificShapes=(n,i,a)=>{const s=YL(n);(Array.isArray(a)?a:[a]).forEach(A=>{const{shape:l,fields:c}=A,u=typeof l=="function"?l(s):n.getShape(l);if(u){if(!c){this.scaleEntireElement(n.id,u,i);return}c.forEach(h=>{const f=this.getOriginalFieldValue(n.id,u,h);we(f)&&(u.style[h]=f/i)})}})},this.skipIfExceedViewport=n=>{const{viewport:i}=this.context;return!(i!=null&&i.isInViewport(n.getRenderBounds(),!1,30))},this.fixNodeLike=(n,i)=>{const a=Pt(n),{element:s,model:o}=this.context,A=s.getElement(a);if(!A||this.skipIfExceedViewport(A))return;o.getRelatedEdgesData(a).forEach(u=>this.relatedEdgeToUpdate.add(Pt(u)));const c=this.options[A.type];if(!c){this.scaleEntireElement(a,A,i);return}this.scaleSpecificShapes(A,i,c)},this.fixEdge=(n,i)=>{const a=Pt(n),s=this.context.element.getElement(a);if(!s||this.skipIfExceedViewport(s))return;const o=this.options.edge;if(!o){s.style.transformOrigin="center",this.scaleEntireElement(a,s,i);return}this.scaleSpecificShapes(s,i,o)},this.updateRelatedEdges=()=>{const{element:n}=this.context;this.relatedEdgeToUpdate.size>0&&this.relatedEdgeToUpdate.forEach(i=>{const a=n.getElement(i);a==null||a.update({})}),this.relatedEdgeToUpdate.clear()},this.resetTransform=n=>cx(this,void 0,void 0,function*(){var i;!((i=n.data)===null||i===void 0)&&i.firstRender||(this.options.reset?this.restoreCachedStyles():this.fixElementSize({data:{scale:this.zoom}}))}),this.bindEvents()}restoreCachedStyles(){if(this.cachedStyles.size>0){this.cachedStyles.forEach(i=>{i.forEach(({shape:a,style:s})=>{if(ro(s))a.setLocalScale(1);else{if(this.options.state)return;Object.entries(s).forEach(([o,A])=>a.style[o]=A)}})});const{graph:t,element:e}=this.context,n=Object.keys(Object.fromEntries(this.cachedStyles)).filter(i=>i&&t.getElementType(i)==="node");if(n.length>0){const i=new Set;n.forEach(a=>{t.getRelatedEdgesData(a).forEach(s=>i.add(Pt(s)))}),i.forEach(a=>{const s=e==null?void 0:e.getElement(a);s==null||s.update({})})}}}bindEvents(){const{graph:t}=this.context;t.on(ce.AFTER_DRAW,this.resetTransform),t.on(ce.AFTER_TRANSFORM,this.fixElementSize)}unbindEvents(){const{graph:t}=this.context;t.off(ce.AFTER_DRAW,this.resetTransform),t.off(ce.AFTER_TRANSFORM,this.fixElementSize)}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}destroy(){this.unbindEvents(),super.destroy()}}Sg.defaultOptions={enable:r=>r.data.scale<1,nodeFilter:()=>!0,edgeFilter:()=>!0,comboFilter:()=>!0,edge:[{shape:"key",fields:["lineWidth"]},{shape:"halo",fields:["lineWidth"]},{shape:"label"}],reset:!1};var Xk=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Mg extends Na{constructor(t,e){super(t,Object.assign({},Mg.defaultOptions,e)),this.focus=n=>Xk(this,void 0,void 0,function*(){if(!this.validate(n))return;const{graph:i}=this.context;yield i.focusElement(n.target.id,this.options.animation)}),this.bindEvents()}bindEvents(){const{graph:t}=this.context;this.unbindEvents(),ml.forEach(e=>{t.on(`${e}:${Jt.CLICK}`,this.focus)})}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}unbindEvents(){const{graph:t}=this.context;ml.forEach(e=>{t.off(`${e}:${Jt.CLICK}`,this.focus)})}destroy(){this.unbindEvents(),super.destroy()}}Mg.defaultOptions={animation:{easing:"ease-in",duration:500},enable:!0};class Tg extends Na{constructor(t,e){super(t,Object.assign({},Tg.defaultOptions,e)),this.isFrozen=!1,this.toggleFrozen=n=>{this.isFrozen=n.type==="dragstart"},this.hoverElement=n=>{if(!this.validate(n))return;const i=n.type===Jt.POINTER_ENTER;this.updateElementsState(n,i);const{onHover:a,onHoverEnd:s}=this.options;i?a==null||a(n):s==null||s(n)},this.updateElementsState=(n,i)=>{if(!this.options.state&&!this.options.inactiveState)return;const{graph:a}=this.context,{state:s,animation:o,inactiveState:A}=this.options,l=this.getActiveIds(n),c={};if(s&&Object.assign(c,this.getElementsState(l,s,i)),A){const u=ZB(a.getData(),!0).filter(h=>!l.includes(h));Object.assign(c,this.getElementsState(u,A,i))}a.setElementState(c,o)},this.getElementsState=(n,i,a)=>{const{graph:s}=this.context,o={};return n.forEach(A=>{const l=s.getElementState(A);a?o[A]=l.includes(i)?l:[...l,i]:o[A]=l.filter(c=>c!==i)}),o},this.bindEvents()}bindEvents(){const{graph:t}=this.context;this.unbindEvents(),ml.forEach(n=>{t.on(`${n}:${Jt.POINTER_ENTER}`,this.hoverElement),t.on(`${n}:${Jt.POINTER_LEAVE}`,this.hoverElement)});const e=this.context.canvas.document;e.addEventListener(`${Jt.DRAG_START}`,this.toggleFrozen),e.addEventListener(`${Jt.DRAG_END}`,this.toggleFrozen)}getActiveIds(t){const{graph:e}=this.context,{degree:n,direction:i}=this.options,a=t.target.id;return n?cb(e,t.targetType,a,typeof n=="function"?n(t):n,i):[a]}validate(t){if(this.destroyed||this.isFrozen||Bh(t.target)||this.context.graph.isCollapsingExpanding)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}unbindEvents(){const{graph:t}=this.context;ml.forEach(n=>{t.off(`${n}:${Jt.POINTER_ENTER}`,this.hoverElement),t.off(`${n}:${Jt.POINTER_LEAVE}`,this.hoverElement)});const e=this.context.canvas.document;e.removeEventListener(`${Jt.DRAG_START}`,this.toggleFrozen),e.removeEventListener(`${Jt.DRAG_END}`,this.toggleFrozen)}destroy(){this.unbindEvents(),super.destroy()}}Tg.defaultOptions={animation:!1,enable:!0,degree:0,direction:"both",state:"active",inactiveState:void 0};class Jk extends fh{onPointerDown(t){if(!super.validate(t)||!super.isKeydown()||this.points)return;const{canvas:e,graph:n}=this.context;this.pathShape=new Pi({id:"g6-lasso-select",style:this.options.style}),e.appendChild(this.pathShape),this.points=[Vd(t,n)]}onPointerMove(t){var e;if(!this.points)return;const{immediately:n,mode:i}=this.options;this.points.push(Vd(t,this.context.graph)),(e=this.pathShape)===null||e===void 0||e.setAttribute("d",zL(this.points)),n&&i==="default"&&this.points.length>2&&super.updateElementsStates(this.points)}onPointerUp(){if(this.points){if(this.points.length<2){this.clearLasso();return}super.updateElementsStates(this.points),this.clearLasso()}}clearLasso(){var t;(t=this.pathShape)===null||t===void 0||t.remove(),this.pathShape=void 0,this.points=void 0}}class Fg extends Na{constructor(t,e){super(t,Object.assign({},Fg.defaultOptions,e)),this.hiddenShapes=[],this.isVisible=!0,this.setElementsVisibility=(n,i,a)=>{n.filter(Boolean).forEach(s=>{i==="hidden"&&!s.isVisible()?this.hiddenShapes.push(s):i==="visible"&&this.hiddenShapes.includes(s)?this.hiddenShapes.splice(this.hiddenShapes.indexOf(s),1):vl(s,i,a)})},this.filterShapes=(n,i)=>{if(jt(i))return s=>!i(n,s);const a=i==null?void 0:i[n];return s=>s.className?!(a!=null&&a.includes(s.className)):!0},this.hideShapes=n=>{if(!this.validate(n)||!this.isVisible)return;const{element:i}=this.context,{shapes:a={}}=this.options;this.setElementsVisibility(i.getNodes(),"hidden",this.filterShapes("node",a)),this.setElementsVisibility(i.getEdges(),"hidden",this.filterShapes("edge",a)),this.setElementsVisibility(i.getCombos(),"hidden",this.filterShapes("combo",a)),this.isVisible=!1},this.showShapes=bh(n=>{if(!this.validate(n)||this.isVisible)return;const{element:i}=this.context;this.setElementsVisibility(i.getNodes(),"visible"),this.setElementsVisibility(i.getEdges(),"visible"),this.setElementsVisibility(i.getCombos(),"visible"),this.isVisible=!0},this.options.debounce),this.bindEvents()}bindEvents(){const{graph:t}=this.context;t.on(ce.BEFORE_TRANSFORM,this.hideShapes),t.on(ce.AFTER_TRANSFORM,this.showShapes)}unbindEvents(){const{graph:t}=this.context;t.off(ce.BEFORE_TRANSFORM,this.hideShapes),t.off(ce.AFTER_TRANSFORM,this.showShapes)}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}update(t){this.unbindEvents(),super.update(t),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}Fg.defaultOptions={enable:!0,debounce:200,shapes:r=>r==="node"};var ux=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Og extends Na{constructor(t,e){super(t,Object.assign({},Og.defaultOptions,e)),this.onWheel=n=>ux(this,void 0,void 0,function*(){this.options.preventDefault&&n.preventDefault();const i=n.deltaX,a=n.deltaY;yield this.scroll([-i,-a],n)}),this.shortcut=new Nc(t.graph),this.bindEvents()}update(t){super.update(t),this.bindEvents()}bindEvents(){var t,e;const{trigger:n}=this.options;if(this.shortcut.unbindAll(),Br(n)){(t=this.graphDom)===null||t===void 0||t.removeEventListener(Jt.WHEEL,this.onWheel);const{up:i=[],down:a=[],left:s=[],right:o=[]}=n;this.shortcut.bind(i,A=>this.scroll([0,-10],A)),this.shortcut.bind(a,A=>this.scroll([0,10],A)),this.shortcut.bind(s,A=>this.scroll([-10,0],A)),this.shortcut.bind(o,A=>this.scroll([10,0],A))}else(e=this.graphDom)===null||e===void 0||e.addEventListener(Jt.WHEEL,this.onWheel,{passive:!1})}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}formatDisplacement(t){const{sensitivity:e}=this.options;return t=Bs(t,e),t=this.clampByDirection(t),t=this.clampByRange(t),t}clampByDirection([t,e]){const{direction:n}=this.options;return n==="x"?e=0:n==="y"&&(t=0),[t,e]}clampByRange([t,e]){const{viewport:n,canvas:i}=this.context,[a,s]=i.getSize(),[o,A,l,c]=La(this.options.range),u=[s*o,a*A,s*l,a*c],h=pA(Tm(n.getCanvasCenter()),u),f=tr(n.getViewportCenter(),[t,e,0]);if(!ws(f,h)){const{min:[d,g],max:[v,y]}=h;(f[0]<d&&t>0||f[0]>v&&t<0)&&(t=0),(f[1]<g&&e>0||f[1]>y&&e<0)&&(e=0)}return[t,e]}scroll(t,e){return ux(this,void 0,void 0,function*(){if(!this.validate(e))return;const{onFinish:n}=this.options,i=this.context.graph,a=this.formatDisplacement(t);yield i.translateBy(a,!1),n==null||n()})}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}destroy(){var t;this.shortcut.destroy(),(t=this.graphDom)===null||t===void 0||t.removeEventListener(Jt.WHEEL,this.onWheel),super.destroy()}}Og.defaultOptions={enable:!0,sensitivity:1,preventDefault:!0,range:1/0};var hx=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Ig extends Na{constructor(t,e){super(t,Object.assign({},Ig.defaultOptions,e)),this.zoom=(n,i,a)=>hx(this,void 0,void 0,function*(){if(!this.validate(i))return;const{graph:s}=this.context;let o=this.options.origin;!o&&"viewport"in i&&(o=Si(i.viewport));const{sensitivity:A,onFinish:l}=this.options,c=1+hr(n,-50,50)*A/100,u=s.getZoom();yield s.zoomTo(u*c,a,o),l==null||l()}),this.onReset=()=>hx(this,void 0,void 0,function*(){yield this.context.graph.zoomTo(1,this.options.animation)}),this.preventDefault=n=>{this.options.preventDefault&&n.preventDefault()},this.shortcut=new Nc(t.graph),this.bindEvents()}update(t){super.update(t),this.bindEvents()}bindEvents(){const{trigger:t}=this.options;if(this.shortcut.unbindAll(),Array.isArray(t))if(t.includes(Jt.PINCH))this.shortcut.bind([Jt.PINCH],e=>{this.zoom(e.scale,e,!1)});else{const e=this.context.canvas.getContainer();e==null||e.addEventListener(Jt.WHEEL,this.preventDefault),this.shortcut.bind([...t,Jt.WHEEL],n=>{const{deltaX:i,deltaY:a}=n;this.zoom(-(a!=null?a:i),n,!1)})}if(typeof t=="object"){const{zoomIn:e=[],zoomOut:n=[],reset:i=[]}=t;this.shortcut.bind(e,a=>this.zoom(10,a,this.options.animation)),this.shortcut.bind(n,a=>this.zoom(-10,a,this.options.animation)),this.shortcut.bind(i,this.onReset)}}validate(t){if(this.destroyed)return!1;const{enable:e}=this.options;return jt(e)?e(t):!!e}destroy(){var t;this.shortcut.destroy(),(t=this.context.canvas.getContainer())===null||t===void 0||t.removeEventListener(Jt.WHEEL,this.preventDefault),super.destroy()}}Ig.defaultOptions={animation:{duration:200},enable:!0,sensitivity:1,trigger:[],preventDefault:!0};var Lg=M(13722);const qk=(r,t)=>{if(r!=="next"&&r!=="prev")return t},fx=r=>{r.prev.next=r.next,r.next.prev=r.prev,delete r.next,delete r.prev};class $k{constructor(){const t={};t.prev=t,t.next=t.prev,this.shortcut=t}dequeue(){const t=this.shortcut,e=t.prev;if(e&&e!==t)return fx(e),e}enqueue(t){const e=this.shortcut;t.prev&&t.next&&fx(t),t.next=e.next,e.next.prev=t,e.next=t,t.prev=e}toString(){const t=[],e=this.shortcut;let n=e.prev;for(;n!==e;)t.push(JSON.stringify(n,qk)),n=n==null?void 0:n.prev;return`[${t.join(", ")}]`}}class tQ extends $k{}const eQ=()=>1,nQ=(r,t)=>{var e;if(r.getAllNodes().length<=1)return[];const n=iQ(r,t||eQ);return(e=rQ(n.graph,n.buckets,n.zeroIdx).map(a=>r.getRelatedEdges(a.v,"out").filter(({target:s})=>s===a.w)))===null||e===void 0?void 0:e.flat()},rQ=(r,t,e)=>{let n=[];const i=t[t.length-1],a=t[0];let s;for(;r.getAllNodes().length;){for(;s=a.dequeue();)dy(r,t,e,s);for(;s=i.dequeue();)dy(r,t,e,s);if(r.getAllNodes().length){for(let o=t.length-2;o>0;--o)if(s=t[o].dequeue(),s){n=n.concat(dy(r,t,e,s,!0));break}}}return n},dy=(r,t,e,n,i)=>{var a,s;const o=[];return r.hasNode(n.v)&&((a=r.getRelatedEdges(n.v,"in"))===null||a===void 0||a.forEach(A=>{const l=A.data.weight,c=r.getNode(A.source);i&&o.push({v:A.source,w:A.target,in:0,out:0}),c.data.out===void 0&&(c.data.out=0),c.data.out-=l,gy(t,e,Object.assign({v:c.id},c.data))}),(s=r.getRelatedEdges(n.v,"out"))===null||s===void 0||s.forEach(A=>{const l=A.data.weight,c=A.target,u=r.getNode(c);u.data.in===void 0&&(u.data.in=0),u.data.in-=l,gy(t,e,Object.assign({v:u.id},u.data))}),r.removeNode(n.v)),i?o:void 0},iQ=(r,t)=>{const e=new Gr;let n=0,i=0;r.getAllNodes().forEach(A=>{e.addNode({id:A.id,data:{v:A.id,in:0,out:0}})}),r.getAllEdges().forEach(A=>{const l=e.getRelatedEdges(A.source,"out").find(u=>u.target===A.target),c=(t==null?void 0:t(A))||1;l?e.updateEdgeData(l==null?void 0:l.id,Object.assign(Object.assign({},l.data),{weight:l.data.weight+c})):e.addEdge({id:A.id,source:A.source,target:A.target,data:{weight:c}}),i=Math.max(i,e.getNode(A.source).data.out+=c),n=Math.max(n,e.getNode(A.target).data.in+=c)});const a=[],s=i+n+3;for(let A=0;A<s;A++)a.push(new tQ);const o=n+1;return e.getAllNodes().forEach(A=>{gy(a,o,Object.assign({v:A.id},e.getNode(A.id).data))}),{buckets:a,zeroIdx:o,graph:e}},gy=(r,t,e)=>{e.out?e.in?r[e.out-e.in+t].enqueue(e):r[r.length-1].enqueue(e):r[0].enqueue(e)},aQ=(r,t)=>{const n=t==="greedy"?nQ(r,(i=>a=>a.data.weight||1)(r)):sQ(r);n==null||n.forEach(i=>{const a=i.data;r.removeEdge(i.id),a.forwardName=i.data.name,a.reversed=!0,r.addEdge({id:i.id,source:i.target,target:i.source,data:Object.assign({},a)})})},sQ=r=>{const t=[],e={},n={},i=a=>{n[a]||(n[a]=!0,e[a]=!0,r.getRelatedEdges(a,"out").forEach(s=>{e[s.target]?t.push(s):i(s.target)}),delete e[a])};return r.getAllNodes().forEach(a=>i(a.id)),t},oQ=r=>{r.getAllEdges().forEach(t=>{const e=t.data;if(e.reversed){r.removeEdge(t.id);const n=e.forwardName;delete e.reversed,delete e.forwardName,r.addEdge({id:t.id,source:t.target,target:t.source,data:Object.assign(Object.assign({},e),{forwardName:n})})}})},AQ=(r,t)=>Number(r)-Number(t),Pc=(r,t,e,n)=>{let i;do i=`${n}${Math.random()}`;while(r.hasNode(i));return e.dummy=t,r.addNode({id:i,data:e}),i},lQ=r=>{const t=new Gr;return r.getAllNodes().forEach(e=>{t.addNode(Object.assign({},e))}),r.getAllEdges().forEach(e=>{const n=t.getRelatedEdges(e.source,"out").find(i=>i.target===e.target);n?t.updateEdgeData(n==null?void 0:n.id,Object.assign(Object.assign({},n.data),{weight:n.data.weight+e.data.weight||0,minlen:Math.max(n.data.minlen,e.data.minlen||1)})):t.addEdge({id:e.id,source:e.source,target:e.target,data:{weight:e.data.weight||0,minlen:e.data.minlen||1}})}),t},dx=r=>{const t=new Gr;return r.getAllNodes().forEach(e=>{r.getChildren(e.id).length||t.addNode(Object.assign({},e))}),r.getAllEdges().forEach(e=>{t.addEdge(e)}),t},gx=(r,t)=>r==null?void 0:r.reduce((e,n,i)=>(e[n]=t[i],e),{}),l9=r=>{const t={};return r.getAllNodes().forEach(e=>{const n={};r.getRelatedEdges(e.id,"out").forEach(i=>{n[i.target]=(n[i.target]||0)+(i.data.weight||0)}),t[e.id]=n}),t},c9=r=>{const t=r.getAllNodes(),e=t.map(n=>{const i={};return r.getRelatedEdges(n.id,"in").forEach(a=>{i[a.source]=(i[a.source]||0)+a.data.weight}),i});return gx(t.map(n=>n.id),e)},vx=(r,t)=>{const e=Number(r.x),n=Number(r.y),i=Number(t.x)-e,a=Number(t.y)-n;let s=Number(r.width)/2,o=Number(r.height)/2;if(!i&&!a)return{x:0,y:0};let A,l;return Math.abs(a)*s>Math.abs(i)*o?(a<0&&(o=-o),A=o*i/a,l=o):(i<0&&(s=-s),A=s,l=s*a/i),{x:e+A,y:n+l}},Ch=r=>{const t=[],e=mx(r)+1;for(let n=0;n<e;n++)t.push([]);r.getAllNodes().forEach(n=>{const i=n.data.rank;i!==void 0&&t[i]&&t[i].push(n.id)});for(let n=0;n<e;n++)t[n]=t[n].sort((i,a)=>AQ(r.getNode(i).data.order,r.getNode(a).data.order));return t},cQ=r=>{const t=r.getAllNodes().filter(n=>n.data.rank!==void 0).map(n=>n.data.rank),e=Math.min(...t);r.getAllNodes().forEach(n=>{n.data.hasOwnProperty("rank")&&e!==1/0&&(n.data.rank-=e)})},uQ=(r,t=0)=>{const e=r.getAllNodes(),n=e.filter(o=>o.data.rank!==void 0).map(o=>o.data.rank),i=Math.min(...n),a=[];e.forEach(o=>{const A=(o.data.rank||0)-i;a[A]||(a[A]=[]),a[A].push(o.id)});let s=0;for(let o=0;o<a.length;o++){const A=a[o];A===void 0?o%t!==0&&(s-=1):s&&(A==null||A.forEach(l=>{const c=r.getNode(l);c&&(c.data.rank=c.data.rank||0,c.data.rank+=s)}))}},px=(r,t,e,n)=>{const i={width:0,height:0};return we(e)&&we(n)&&(i.rank=e,i.order=n),Pc(r,"border",i,t)},mx=r=>{let t;return r.getAllNodes().forEach(e=>{const n=e.data.rank;n!==void 0&&(t===void 0||n>t)&&(t=n)}),t||(t=0),t},hQ=(r,t)=>{const e={lhs:[],rhs:[]};return r==null||r.forEach(n=>{t(n)?e.lhs.push(n):e.rhs.push(n)}),e},vy=(r,t)=>r.reduce((e,n)=>{const i=t(e),a=t(n);return i>a?n:e}),yx=(r,t,e,n,i,a)=>{n.includes(t.id)||(n.push(t.id),e||a.push(t.id),i(t.id).forEach(s=>yx(r,s,e,n,i,a)),e&&a.push(t.id))},wx=(r,t,e,n)=>{const i=Array.isArray(t)?t:[t],a=A=>n?r.getSuccessors(A):r.getNeighbors(A),s=[],o=[];return i.forEach(A=>{if(r.hasNode(A.id))yx(r,A,e==="post",o,a,s);else throw new Error(`Graph does not have node: ${A}`)}),s},fQ=r=>{const t=e=>{const n=r.getChildren(e),i=r.getNode(e);if(n!=null&&n.length&&n.forEach(a=>t(a.id)),i.data.hasOwnProperty("minRank")){i.data.borderLeft=[],i.data.borderRight=[];for(let a=i.data.minRank,s=i.data.maxRank+1;a<s;a+=1)Ex(r,"borderLeft","_bl",e,i,a),Ex(r,"borderRight","_br",e,i,a)}};r.getRoots().forEach(e=>t(e.id))},Ex=(r,t,e,n,i,a)=>{const s={rank:a,borderType:t,width:0,height:0},o=i.data[t][a-1],A=Pc(r,"border",s,e);i.data[t][a]=A,r.setParent(A,n),o&&r.addEdge({id:`e${Math.random()}`,source:o,target:A,data:{weight:1}})},dQ=(r,t)=>{const e=t.toLowerCase();(e==="lr"||e==="rl")&&Bx(r)},gQ=(r,t)=>{const e=t.toLowerCase();(e==="bt"||e==="rl")&&vQ(r),(e==="lr"||e==="rl")&&(pQ(r),Bx(r))},Bx=r=>{r.getAllNodes().forEach(t=>{bx(t)}),r.getAllEdges().forEach(t=>{bx(t)})},bx=r=>{const t=r.data.width;r.data.width=r.data.height,r.data.height=t},vQ=r=>{r.getAllNodes().forEach(t=>{py(t.data)}),r.getAllEdges().forEach(t=>{var e;(e=t.data.points)===null||e===void 0||e.forEach(n=>py(n)),t.data.hasOwnProperty("y")&&py(t.data)})},py=r=>{r!=null&&r.y&&(r.y=-r.y)},pQ=r=>{r.getAllNodes().forEach(t=>{my(t.data)}),r.getAllEdges().forEach(t=>{var e;(e=t.data.points)===null||e===void 0||e.forEach(n=>my(n)),t.data.hasOwnProperty("x")&&my(t.data)})},my=r=>{const t=r.x;r.x=r.y,r.y=t},mQ=r=>{const t=Pc(r,"root",{},"_root"),e=yQ(r);let n=Math.max(...Object.values(e));Math.abs(n)===1/0&&(n=1);const i=n-1,a=2*i+1;r.getAllEdges().forEach(o=>{o.data.minlen*=a});const s=wQ(r)+1;return r.getRoots().forEach(o=>{xx(r,t,a,s,i,e,o.id)}),{nestingRoot:t,nodeRankFactor:a}},xx=(r,t,e,n,i,a,s)=>{const o=r.getChildren(s);if(!(o!=null&&o.length)){s!==t&&r.addEdge({id:`e${Math.random()}`,source:t,target:s,data:{weight:0,minlen:e}});return}const A=px(r,"_bt"),l=px(r,"_bb"),c=r.getNode(s);r.setParent(A,s),c.data.borderTop=A,r.setParent(l,s),c.data.borderBottom=l,o==null||o.forEach(u=>{xx(r,t,e,n,i,a,u.id);const h=u.data.borderTop?u.data.borderTop:u.id,f=u.data.borderBottom?u.data.borderBottom:u.id,d=u.data.borderTop?n:2*n,g=h!==f?1:i-a[s]+1;r.addEdge({id:`e${Math.random()}`,source:A,target:h,data:{minlen:g,weight:d,nestingEdge:!0}}),r.addEdge({id:`e${Math.random()}`,source:f,target:l,data:{minlen:g,weight:d,nestingEdge:!0}})}),r.getParent(s)||r.addEdge({id:`e${Math.random()}`,source:t,target:A,data:{weight:0,minlen:i+a[s]}})},yQ=r=>{const t={},e=(n,i)=>{const a=r.getChildren(n);a==null||a.forEach(s=>e(s.id,i+1)),t[n]=i};return r.getRoots().forEach(n=>e(n.id,1)),t},wQ=r=>{let t=0;return r.getAllEdges().forEach(e=>{t+=e.data.weight}),t},EQ=(r,t)=>{t&&r.removeNode(t),r.getAllEdges().forEach(e=>{e.data.nestingEdge&&r.removeEdge(e.id)})},BQ="edge",Cx="edge-label",bQ=(r,t)=>{r.getAllEdges().forEach(e=>xQ(r,e,t))},xQ=(r,t,e)=>{let n=t.source,i=r.getNode(n).data.rank;const a=t.target,s=r.getNode(a).data.rank,o=t.data.labelRank;if(s===i+1)return;r.removeEdge(t.id);let A,l,c;for(c=0,++i;i<s;++c,++i)t.data.points=[],l={originalEdge:t,width:0,height:0,rank:i},A=Pc(r,BQ,l,"_d"),i===o&&(l.width=t.data.width,l.height=t.data.height,l.dummy=Cx,l.labelpos=t.data.labelpos),r.addEdge({id:`e${Math.random()}`,source:n,target:A,data:{weight:t.data.weight}}),c===0&&e.push(A),n=A;r.addEdge({id:`e${Math.random()}`,source:n,target:a,data:{weight:t.data.weight}})},CQ=(r,t)=>{t.forEach(e=>{let n=r.getNode(e);const{data:i}=n,a=i.originalEdge;let s;a&&r.addEdge(a);let o=e;for(;n.data.dummy;)s=r.getSuccessors(o)[0],r.removeNode(o),a.data.points.push({x:n.data.x,y:n.data.y}),n.data.dummy===Cx&&(a.data.x=n.data.x,a.data.y=n.data.y,a.data.width=n.data.width,a.data.height=n.data.height),o=s.id,n=r.getNode(o)})},SQ=(r,t,e)=>{const n={};let i;e==null||e.forEach(a=>{let s=r.getParent(a),o,A;for(;s;){if(o=r.getParent(s.id),o?(A=n[o.id],n[o.id]=s.id):(A=i,i=s.id),A&&A!==s.id){t.hasNode(A)||t.addNode({id:A,data:{}}),t.hasNode(s.id)||t.addNode({id:s.id,data:{}}),t.hasEdge(`e${A}-${s.id}`)||t.addEdge({id:`e${A}-${s.id}`,source:A,target:s.id,data:{}});return}s=o}})},MQ=(r,t,e)=>{const n=TQ(r),i=new Gr({tree:[{id:n,children:[],data:{}}]});return r.getAllNodes().forEach(a=>{const s=r.getParent(a.id);(a.data.rank===t||a.data.minRank<=t&&t<=a.data.maxRank)&&(i.hasNode(a.id)||i.addNode(Object.assign({},a)),s!=null&&s.id&&!i.hasNode(s==null?void 0:s.id)&&i.addNode(Object.assign({},s)),i.setParent(a.id,(s==null?void 0:s.id)||n),r.getRelatedEdges(a.id,e).forEach(o=>{const A=o.source===a.id?o.target:o.source;i.hasNode(A)||i.addNode(Object.assign({},r.getNode(A)));const l=i.getRelatedEdges(A,"out").find(({target:u})=>u===a.id),c=l!==void 0?l.data.weight:0;l?i.updateEdgeData(l.id,Object.assign(Object.assign({},l.data),{weight:o.data.weight+c})):i.addEdge({id:o.id,source:A,target:a.id,data:{weight:o.data.weight+c}})}),a.data.hasOwnProperty("minRank")&&i.updateNodeData(a.id,Object.assign(Object.assign({},a.data),{borderLeft:a.data.borderLeft[t],borderRight:a.data.borderRight[t]})))}),i},TQ=r=>{let t;for(;r.hasNode(t=`_root${Math.random()}`););return t},FQ=(r,t,e)=>{const n=gx(e,e.map((c,u)=>u)),a=t.map(c=>{const u=r.getRelatedEdges(c,"out").map(h=>({pos:n[h.target]||0,weight:h.data.weight}));return u==null?void 0:u.sort((h,f)=>h.pos-f.pos)}).flat().filter(c=>c!==void 0);let s=1;for(;s<e.length;)s<<=1;const o=2*s-1;s-=1;const A=Array(o).fill(0,0,o);let l=0;return a==null||a.forEach(c=>{if(c){let u=c.pos+s;A[u]+=c.weight;let h=0;for(;u>0;)u%2&&(h+=A[u+1]),u=u-1>>1,A[u]+=c.weight;l+=c.weight*h}}),l},Sx=(r,t)=>{let e=0;for(let n=1;n<(t==null?void 0:t.length);n+=1)e+=FQ(r,t[n-1],t[n]);return e},Mx=r=>{const t={},e=r.getAllNodes(),n=e.map(l=>{var c;return(c=l.data.rank)!==null&&c!==void 0?c:-1/0}),i=Math.max(...n),a=[];for(let l=0;l<i+1;l++)a.push([]);const s=e.sort((l,c)=>r.getNode(l.id).data.rank-r.getNode(c.id).data.rank),A=s.filter(l=>r.getNode(l.id).data.fixorder!==void 0).sort((l,c)=>r.getNode(l.id).data.fixorder-r.getNode(c.id).data.fixorder);return A==null||A.forEach(l=>{isNaN(r.getNode(l.id).data.rank)||a[r.getNode(l.id).data.rank].push(l.id),t[l.id]=!0}),s==null||s.forEach(l=>r.dfsTree(l.id,c=>{if(t.hasOwnProperty(c.id))return!0;t[c.id]=!0,isNaN(c.data.rank)||a[c.data.rank].push(c.id)})),a},OQ=(r,t)=>t.map(e=>{const n=r.getRelatedEdges(e,"in");if(!(n!=null&&n.length))return{v:e};const i={sum:0,weight:0};return n==null||n.forEach(a=>{const s=r.getNode(a.source);i.sum+=a.data.weight*s.data.order,i.weight+=a.data.weight}),{v:e,barycenter:i.sum/i.weight,weight:i.weight}}),IQ=(r,t)=>{var e,n,i;const a={};r==null||r.forEach((o,A)=>{a[o.v]={i:A,indegree:0,in:[],out:[],vs:[o.v]};const l=a[o.v];o.barycenter!==void 0&&(l.barycenter=o.barycenter,l.weight=o.weight)}),(e=t.getAllEdges())===null||e===void 0||e.forEach(o=>{const A=a[o.source],l=a[o.target];A!==void 0&&l!==void 0&&(l.indegree++,A.out.push(a[o.target]))});const s=(i=(n=Object.values(a)).filter)===null||i===void 0?void 0:i.call(n,o=>!o.indegree);return LQ(s)},LQ=r=>{var t,e;const n=[],i=A=>l=>{l.merged||(l.barycenter===void 0||A.barycenter===void 0||l.barycenter>=A.barycenter)&&NQ(A,l)},a=A=>l=>{l.in.push(A),--l.indegree===0&&r.push(l)};for(;r!=null&&r.length;){const A=r.pop();n.push(A),(t=A.in.reverse())===null||t===void 0||t.forEach(l=>i(A)(l)),(e=A.out)===null||e===void 0||e.forEach(l=>a(A)(l))}const s=n.filter(A=>!A.merged),o=["vs","i","barycenter","weight"];return s.map(A=>{const l={};return o==null||o.forEach(c=>{A[c]!==void 0&&(l[c]=A[c])}),l})},NQ=(r,t)=>{var e;let n=0,i=0;r.weight&&(n+=r.barycenter*r.weight,i+=r.weight),t.weight&&(n+=t.barycenter*t.weight,i+=t.weight),r.vs=(e=t.vs)===null||e===void 0?void 0:e.concat(r.vs),r.barycenter=n/i,r.weight=i,r.i=Math.min(t.i,r.i),t.merged=!0};var kQ=IQ;const QQ=(r,t,e,n)=>{const i=hQ(r,h=>{const f=h.hasOwnProperty("fixorder")&&!isNaN(h.fixorder);return n?!f&&h.hasOwnProperty("barycenter"):f||h.hasOwnProperty("barycenter")}),a=i.lhs,s=i.rhs.sort((h,f)=>-h.i- -f.i),o=[];let A=0,l=0,c=0;a==null||a.sort(UQ(!!t,!!e)),c=Tx(o,s,c),a==null||a.forEach(h=>{var f;c+=(f=h.vs)===null||f===void 0?void 0:f.length,o.push(h.vs),A+=h.barycenter*h.weight,l+=h.weight,c=Tx(o,s,c)});const u={vs:o.flat()};return l&&(u.barycenter=A/l,u.weight=l),u},Tx=(r,t,e)=>{let n=e,i;for(;t.length&&(i=t[t.length-1]).i<=n;)t.pop(),r==null||r.push(i.vs),n++;return n},UQ=(r,t)=>(e,n)=>{if(e.fixorder!==void 0&&n.fixorder!==void 0)return e.fixorder-n.fixorder;if(e.barycenter<n.barycenter)return-1;if(e.barycenter>n.barycenter)return 1;if(t&&e.order!==void 0&&n.order!==void 0){if(e.order<n.order)return-1;if(e.order>n.order)return 1}return r?n.i-e.i:e.i-n.i},Fx=(r,t,e,n,i,a)=>{var s,o,A,l;let c=r.getChildren(t).map(E=>E.id);const u=r.getNode(t),h=u?u.data.borderLeft:void 0,f=u?u.data.borderRight:void 0,d={};h&&(c=c==null?void 0:c.filter(E=>E!==h&&E!==f));const g=OQ(r,c||[]);g==null||g.forEach(E=>{var C;if(!((C=r.getChildren(E.v))===null||C===void 0)&&C.length){const I=Fx(r,E.v,e,n,a);d[E.v]=I,I.hasOwnProperty("barycenter")&&DQ(E,I)}});const v=kQ(g,e);PQ(v,d),(s=v.filter(E=>E.vs.length>0))===null||s===void 0||s.forEach(E=>{const C=r.getNode(E.vs[0]);C&&(E.fixorder=C.data.fixorder,E.order=C.data.order)});const y=QQ(v,n,i,a);if(h&&(y.vs=[h,y.vs,f].flat(),!((o=r.getPredecessors(h))===null||o===void 0)&&o.length)){const E=r.getNode(((A=r.getPredecessors(h))===null||A===void 0?void 0:A[0].id)||""),C=r.getNode(((l=r.getPredecessors(f))===null||l===void 0?void 0:l[0].id)||"");y.hasOwnProperty("barycenter")||(y.barycenter=0,y.weight=0),y.barycenter=(y.barycenter*y.weight+E.data.order+C.data.order)/(y.weight+2),y.weight+=2}return y},PQ=(r,t)=>{r==null||r.forEach(e=>{var n;const i=(n=e.vs)===null||n===void 0?void 0:n.map(a=>t[a]?t[a].vs:a);e.vs=i.flat()})},DQ=(r,t)=>{r.barycenter!==void 0?(r.barycenter=(r.barycenter*r.weight+t.barycenter*t.weight)/(r.weight+t.weight),r.weight+=t.weight):(r.barycenter=t.barycenter,r.weight=t.weight)},RQ=(r,t)=>{const e=mx(r),n=[],i=[];for(let c=1;c<e+1;c++)n.push(c);for(let c=e-1;c>-1;c--)i.push(c);const a=Ox(r,n,"in"),s=Ox(r,i,"out");let o=Mx(r);yy(r,o);let A=Number.POSITIVE_INFINITY,l;for(let c=0,u=0;u<4;++c,++u){Ix(c%2?a:s,c%4>=2,!1,t),o=Ch(r);const h=Sx(r,o);h<A&&(u=0,l=Oc(o),A=h)}o=Mx(r),yy(r,o);for(let c=0,u=0;u<4;++c,++u){Ix(c%2?a:s,c%4>=2,!0,t),o=Ch(r);const h=Sx(r,o);h<A&&(u=0,l=Oc(o),A=h)}yy(r,l)},Ox=(r,t,e)=>t.map(n=>MQ(r,n,e)),Ix=(r,t,e,n)=>{const i=new Gr;r==null||r.forEach(a=>{var s;const o=a.getRoots()[0].id,A=Fx(a,o,i,t,e,n);for(let l=0;l<((s=A.vs)===null||s===void 0?void 0:s.length);l++){const c=a.getNode(A.vs[l]);c&&(c.data.order=l)}SQ(a,i,A.vs)})},yy=(r,t)=>{t==null||t.forEach(e=>{e==null||e.forEach((n,i)=>{r.getNode(n).data.order=i})})},_Q=(r,t)=>{const n=r.getAllNodes().filter(s=>{var o;return!(!((o=r.getChildren(s.id))===null||o===void 0)&&o.length)}).map(s=>s.data.rank),i=Math.max(...n),a=[];for(let s=0;s<i+1;s++)a[s]=[];t==null||t.forEach(s=>{const o=r.getNode(s);!o||o.data.dummy||isNaN(o.data.rank)||(o.data.fixorder=a[o.data.rank].length,a[o.data.rank].push(s))})},HQ=r=>{const t={};let e=0;const n=i=>{const a=e;r.getChildren(i).forEach(s=>n(s.id)),t[i]={low:a,lim:e++}};return r.getRoots().forEach(i=>n(i.id)),t},GQ=(r,t,e,n)=>{var i,a;const s=[],o=[],A=Math.min(t[e].low,t[n].low),l=Math.max(t[e].lim,t[n].lim);let c,u;c=e;do c=(i=r.getParent(c))===null||i===void 0?void 0:i.id,s.push(c);while(c&&(t[c].low>A||l>t[c].lim));for(u=c,c=n;c&&c!==u;)o.push(c),c=(a=r.getParent(c))===null||a===void 0?void 0:a.id;return{lca:u,path:s.concat(o.reverse())}},KQ=(r,t)=>{const e=HQ(r);t.forEach(n=>{var i,a;let s=n,o=r.getNode(s);const A=o.data.originalEdge;if(!A)return;const l=GQ(r,e,A.source,A.target),c=l.path,u=l.lca;let h=0,f=c[h],d=!0;for(;s!==A.target;){if(o=r.getNode(s),d){for(;f!==u&&((i=r.getNode(f))===null||i===void 0?void 0:i.data.maxRank)<o.data.rank;)h++,f=c[h];f===u&&(d=!1)}if(!d){for(;h<c.length-1&&((a=r.getNode(c[h+1]))===null||a===void 0?void 0:a.data.minRank)<=o.data.rank;)h++;f=c[h]}r.hasNode(f)&&r.setParent(s,f),s=r.getSuccessors(s)[0].id}})},Lx=(r,t)=>{const e={},n=(i,a)=>{let s=0,o=0;const A=i.length,l=a==null?void 0:a[(a==null?void 0:a.length)-1];return a==null||a.forEach((c,u)=>{var h;const f=zQ(r,c),d=f?r.getNode(f.id).data.order:A;(f||c===l)&&((h=a.slice(o,u+1))===null||h===void 0||h.forEach(g=>{var v;(v=r.getPredecessors(g))===null||v===void 0||v.forEach(y=>{var E;const C=r.getNode(y.id),I=C.data.order;(I<s||d<I)&&!(C.data.dummy&&(!((E=r.getNode(g))===null||E===void 0)&&E.data.dummy))&&kx(e,y.id,g)})}),o=u+1,s=d)}),a};return t!=null&&t.length&&t.reduce(n),e},Nx=(r,t)=>{const e={};function n(o,A,l,c,u){var h,f;let d;for(let g=A;g<l;g++)d=o[g],!((h=r.getNode(d))===null||h===void 0)&&h.data.dummy&&((f=r.getPredecessors(d))===null||f===void 0||f.forEach(v=>{const y=r.getNode(v.id);y.data.dummy&&(y.data.order<c||y.data.order>u)&&kx(e,v.id,d)}))}function i(o){return JSON.stringify(o.slice(1))}function a(o,A){const l=i(o);A.get(l)||(n(...o),A.set(l,!0))}const s=(o,A)=>{let l=-1,c,u=0;const h=new Map;return A==null||A.forEach((f,d)=>{var g;if(((g=r.getNode(f))===null||g===void 0?void 0:g.data.dummy)==="border"){const v=r.getPredecessors(f)||[];v.length&&(c=r.getNode(v[0].id).data.order,a([A,u,d,l,c],h),u=d,l=c)}a([A,u,A.length,c,o.length],h)}),A};return t!=null&&t.length&&t.reduce(s),e},zQ=(r,t)=>{var e,n;if(!((e=r.getNode(t))===null||e===void 0)&&e.data.dummy)return(n=r.getPredecessors(t))===null||n===void 0?void 0:n.find(i=>r.getNode(i.id).data.dummy)},kx=(r,t,e)=>{let n=t,i=e;if(n>i){const s=n;n=i,i=s}let a=r[n];a||(r[n]=a={}),a[i]=!0},VQ=(r,t,e)=>{let n=t,i=e;if(n>i){const a=t;n=i,i=a}return!!r[n]},Qx=(r,t,e,n)=>{const i={},a={},s={};return t==null||t.forEach(o=>{o==null||o.forEach((A,l)=>{i[A]=A,a[A]=A,s[A]=l})}),t==null||t.forEach(o=>{let A=-1;o==null||o.forEach(l=>{let c=n(l).map(u=>u.id);if(c.length){c=c.sort((h,f)=>s[h]-s[f]);const u=(c.length-1)/2;for(let h=Math.floor(u),f=Math.ceil(u);h<=f;++h){const d=c[h];a[l]===l&&A<s[d]&&!VQ(e,l,d)&&(a[d]=l,a[l]=i[l]=i[d],A=s[d])}}})}),{root:i,align:a}},Ux=(r,t,e,n,i,a,s)=>{var o;const A={},l=WQ(r,t,e,i,a,s),c=s?"borderLeft":"borderRight",u=(d,g)=>{let v=l.getAllNodes(),y=v.pop();const E={};for(;y;)E[y.id]?d(y.id):(E[y.id]=!0,v.push(y),v=v.concat(g(y.id))),y=v.pop()},h=d=>{A[d]=(l.getRelatedEdges(d,"in")||[]).reduce((g,v)=>Math.max(g,(A[v.source]||0)+v.data.weight),0)},f=d=>{const g=(l.getRelatedEdges(d,"out")||[]).reduce((y,E)=>Math.min(y,(A[E.target]||0)-E.data.weight),Number.POSITIVE_INFINITY),v=r.getNode(d);g!==Number.POSITIVE_INFINITY&&v.data.borderType!==c&&(A[d]=Math.max(A[d],g))};return u(h,l.getPredecessors.bind(l)),u(f,l.getSuccessors.bind(l)),(o=Object.values(n))===null||o===void 0||o.forEach(d=>{A[d]=A[e[d]]}),A},WQ=(r,t,e,n,i,a)=>{const s=new Gr,o=ZQ(n,i,a);return t==null||t.forEach(A=>{let l;A==null||A.forEach(c=>{const u=e[c];if(s.hasNode(u)||s.addNode({id:u,data:{}}),l){const h=e[l],f=s.getRelatedEdges(h,"out").find(d=>d.target===u);f?s.updateEdgeData(f.id,Object.assign(Object.assign({},f.data),{weight:Math.max(o(r,c,l),f.data.weight||0)})):s.addEdge({id:`e${Math.random()}`,source:h,target:u,data:{weight:Math.max(o(r,c,l),0)}})}l=c})}),s},Px=(r,t)=>vy(Object.values(t),e=>{var n;let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;return(n=Object.keys(e))===null||n===void 0||n.forEach(s=>{const o=e[s],A=jQ(r,s)/2;i=Math.max(o+A,i),a=Math.min(o-A,a)}),i-a});function Dx(r,t){const e=Object.values(t),n=Math.min(...e),i=Math.max(...e);["u","d"].forEach(a=>{["l","r"].forEach(s=>{const o=a+s,A=r[o];let l;if(A===t)return;const c=Object.values(A);l=s==="l"?n-Math.min(...c):i-Math.max(...c),l&&(r[o]={},Object.keys(A).forEach(u=>{r[o][u]=A[u]+l}))})})}const Rx=(r,t)=>{const e={};return Object.keys(r.ul).forEach(n=>{if(t)e[n]=r[t.toLowerCase()][n];else{const i=Object.values(r).map(a=>a[n]);e[n]=(i[0]+i[1])/2}}),e},u9=(r,t)=>{const{align:e,nodesep:n=0,edgesep:i=0}=t||{},a=buildLayerMatrix(r),s=Object.assign(Lx(r,a),Nx(r,a)),o={};let A;["u","d"].forEach(c=>{A=c==="u"?a:Object.values(a).reverse(),["l","r"].forEach(u=>{u==="r"&&(A=A.map(g=>Object.values(g).reverse()));const h=(c==="u"?r.getPredecessors:r.getSuccessors).bind(r),f=Qx(r,A,s,h),d=Ux(r,A,f.root,f.align,n,i,u==="r");u==="r"&&Object.keys(d).forEach(g=>{d[g]=-d[g]}),o[c+u]=d})});const l=Px(r,o);return Dx(o,l),Rx(o,e)},ZQ=(r,t,e)=>(n,i,a)=>{const s=n.getNode(i),o=n.getNode(a);let A=0,l=0;if(A+=s.data.width/2,s.data.hasOwnProperty("labelpos"))switch((s.data.labelpos||"").toLowerCase()){case"l":l=-s.data.width/2;break;case"r":l=s.data.width/2;break}if(l&&(A+=e?l:-l),l=0,A+=(s.data.dummy?t:r)/2,A+=(o.data.dummy?t:r)/2,A+=o.data.width/2,o.data.labelpos)switch((o.data.labelpos||"").toLowerCase()){case"l":l=o.data.width/2;break;case"r":l=-o.data.width/2;break}return l&&(A+=e?l:-l),l=0,A},jQ=(r,t)=>r.getNode(t).data.width||0,YQ=(r,t)=>{const{ranksep:e=0}=t||{},n=Ch(r);let i=0;n==null||n.forEach(a=>{const s=a.map(A=>r.getNode(A).data.height),o=Math.max(...s,0);a==null||a.forEach(A=>{r.getNode(A).data.y=i+o/2}),i+=o+e})},XQ=(r,t)=>{const{align:e,nodesep:n=0,edgesep:i=0}=t||{},a=Ch(r),s=Object.assign(Lx(r,a),Nx(r,a)),o={};let A=[];["u","d"].forEach(c=>{A=c==="u"?a:Object.values(a).reverse(),["l","r"].forEach(u=>{u==="r"&&(A=A.map(g=>Object.values(g).reverse()));const h=(c==="u"?r.getPredecessors:r.getSuccessors).bind(r),f=Qx(r,A,s,h),d=Ux(r,A,f.root,f.align,n,i,u==="r");u==="r"&&Object.keys(d).forEach(g=>d[g]=-d[g]),o[c+u]=d})});const l=Px(r,o);return l&&Dx(o,l),Rx(o,e)},JQ=(r,t)=>{var e;const n=dx(r);YQ(n,t);const i=XQ(n,t);(e=Object.keys(i))===null||e===void 0||e.forEach(a=>{n.getNode(a).data.x=i[a]})},_x=r=>{const t={},e=n=>{var i;const a=r.getNode(n);if(!a)return 0;if(t[n])return a.data.rank;t[n]=!0;let s;return(i=r.getRelatedEdges(n,"out"))===null||i===void 0||i.forEach(o=>{const A=e(o.target),l=o.data.minlen,c=A-l;c&&(s===void 0||c<s)&&(s=c)}),s||(s=0),a.data.rank=s,s};r.getAllNodes().filter(n=>r.getRelatedEdges(n.id,"in").length===0).forEach(n=>e(n.id))},qQ=r=>{const t={};let e;const n=s=>{var o;const A=r.getNode(s);if(!A)return 0;if(t[s])return A.data.rank;t[s]=!0;let l;return(o=r.getRelatedEdges(s,"out"))===null||o===void 0||o.forEach(c=>{const u=n(c.target),h=c.data.minlen,f=u-h;f&&(l===void 0||f<l)&&(l=f)}),l||(l=0),(e===void 0||l<e)&&(e=l),A.data.rank=l,l};r.getAllNodes().filter(s=>r.getRelatedEdges(s.id,"in").length===0).forEach(s=>{s&&n(s.id)}),e===void 0&&(e=0);const i={},a=(s,o)=>{var A;const l=r.getNode(s),c=isNaN(l.data.layer)?o:l.data.layer;(l.data.rank===void 0||l.data.rank<c)&&(l.data.rank=c),!i[s]&&(i[s]=!0,(A=r.getRelatedEdges(s,"out"))===null||A===void 0||A.forEach(u=>{a(u.target,c+u.data.minlen)}))};r.getAllNodes().forEach(s=>{const o=s.data;o&&(isNaN(o.layer)?o.rank-=e:a(s.id,o.layer))})},xA=(r,t)=>r.getNode(t.target).data.rank-r.getNode(t.source).data.rank-t.data.minlen,$Q=r=>{const t=new Gr({tree:[]}),e=r.getAllNodes()[0],n=r.getAllNodes().length;t.addNode(e);let i,a;for(;tU(t,r)<n;)i=Hx(t,r),a=t.hasNode(i.source)?xA(r,i):-xA(r,i),Gx(t,r,a);return t},tU=(r,t)=>{const e=n=>{t.getRelatedEdges(n,"both").forEach(i=>{const a=i.source,s=n===a?i.target:a;!r.hasNode(s)&&!xA(t,i)&&(r.addNode({id:s,data:{}}),r.addEdge({id:i.id,source:n,target:s,data:{}}),e(s))})};return r.getAllNodes().forEach(n=>e(n.id)),r.getAllNodes().length},eU=r=>{const t=new Gr({tree:[]}),e=r.getAllNodes()[0],n=r.getAllNodes().length;t.addNode(e);let i,a;for(;nU(t,r)<n;)i=Hx(t,r),a=t.hasNode(i.source)?xA(r,i):-xA(r,i),Gx(t,r,a);return t},nU=(r,t)=>{const e=n=>{var i;(i=t.getRelatedEdges(n,"both"))===null||i===void 0||i.forEach(a=>{const s=a.source,o=n===s?a.target:s;!r.hasNode(o)&&(t.getNode(o).data.layer!==void 0||!xA(t,a))&&(r.addNode({id:o,data:{}}),r.addEdge({id:a.id,source:n,target:o,data:{}}),e(o))})};return r.getAllNodes().forEach(n=>e(n.id)),r.getAllNodes().length},Hx=(r,t)=>vy(t.getAllEdges(),e=>r.hasNode(e.source)!==r.hasNode(e.target)?xA(t,e):1/0),Gx=(r,t,e)=>{r.getAllNodes().forEach(n=>{const i=t.getNode(n.id);i.data.rank||(i.data.rank=0),i.data.rank+=e})},rU=r=>{const t=lQ(r);_x(t);const e=$Q(t);zx(e),Kx(e,t);let n,i;for(;n=sU(e);)i=oU(e,t,n),AU(e,t,n,i)},Kx=(r,t)=>{let e=wx(r,r.getAllNodes(),"post",!1);e=e.slice(0,(e==null?void 0:e.length)-1),e.forEach(n=>{iU(r,t,n)})},iU=(r,t,e)=>{const i=r.getNode(e).data.parent,a=r.getRelatedEdges(e,"both").find(s=>s.target===i||s.source===i);a.data.cutvalue=aU(r,t,e)},aU=(r,t,e)=>{const i=r.getNode(e).data.parent;let a=!0,s=t.getRelatedEdges(e,"out").find(A=>A.target===i),o=0;return s||(a=!1,s=t.getRelatedEdges(i,"out").find(A=>A.target===e)),o=s.data.weight,t.getRelatedEdges(e,"both").forEach(A=>{const l=A.source===e,c=l?A.target:A.source;if(c!==i){const u=l===a,h=A.data.weight;if(o+=u?h:-h,cU(r,e,c)){const f=r.getRelatedEdges(e,"both").find(d=>d.source===c||d.target===c).data.cutvalue;o+=u?-f:f}}}),o},zx=(r,t=r.getAllNodes()[0].id)=>{Vx(r,{},1,t)},Vx=(r,t,e,n,i)=>{var a;const s=e;let o=e;const A=r.getNode(n);return t[n]=!0,(a=r.getNeighbors(n))===null||a===void 0||a.forEach(l=>{t[l.id]||(o=Vx(r,t,o,l.id,n))}),A.data.low=s,A.data.lim=o++,i?A.data.parent=i:delete A.data.parent,o},sU=r=>r.getAllEdges().find(t=>t.data.cutvalue<0),oU=(r,t,e)=>{let n=e.source,i=e.target;t.getRelatedEdges(n,"out").find(c=>c.target===i)||(n=e.target,i=e.source);const a=r.getNode(n),s=r.getNode(i);let o=a,A=!1;a.data.lim>s.data.lim&&(o=s,A=!0);const l=t.getAllEdges().filter(c=>A===Wx(r.getNode(c.source),o)&&A!==Wx(r.getNode(c.target),o));return vy(l,c=>xA(t,c))},AU=(r,t,e,n)=>{const i=r.getRelatedEdges(e.source,"both").find(a=>a.source===e.target||a.target===e.target);i&&r.removeEdge(i.id),r.addEdge({id:`e${Math.random()}`,source:n.source,target:n.target,data:{}}),zx(r),Kx(r,t),lU(r,t)},lU=(r,t)=>{const e=r.getAllNodes().find(i=>!i.data.parent);let n=wx(r,e,"pre",!1);n=n.slice(1),n.forEach(i=>{const a=r.getNode(i).data.parent;let s=t.getRelatedEdges(i,"out").find(A=>A.target===a),o=!1;!s&&t.hasNode(a)&&(s=t.getRelatedEdges(a,"out").find(A=>A.target===i),o=!0),t.getNode(i).data.rank=(t.hasNode(a)&&t.getNode(a).data.rank||0)+(o?s==null?void 0:s.data.minlen:-(s==null?void 0:s.data.minlen))})},cU=(r,t,e)=>r.getRelatedEdges(t,"both").find(n=>n.source===e||n.target===e),Wx=(r,t)=>t.data.low<=r.data.lim&&r.data.lim<=t.data.lim,uU=(r,t)=>{switch(t){case"network-simplex":fU(r);break;case"tight-tree":Zx(r);break;case"longest-path":hU(r);break;default:Zx(r)}},hU=_x,Zx=r=>{qQ(r),eU(r)},fU=r=>{rU(r)},dU=(r,t)=>{const{edgeLabelSpace:e,keepNodeOrder:n,prevGraph:i,rankdir:a,ranksep:s}=t;!n&&i&&vU(r,i);const o=BU(r);e&&(t.ranksep=bU(o,{rankdir:a,ranksep:s}));let A;try{A=gU(o,t)}catch(l){if(l.message==="Not possible to find intersection inside of the rectangle"){console.error(`The following error may be caused by improper layer setting, please make sure your manual layer setting does not violate the graph's structure:
|
|
|
`,l);return}throw l}return pU(r,o),A},gU=(r,t)=>{const{acyclicer:e,ranker:n,rankdir:i="tb",nodeOrder:a,keepNodeOrder:s,align:o,nodesep:A=50,edgesep:l=20,ranksep:c=50}=t;LU(r),aQ(r,e);const{nestingRoot:u,nodeRankFactor:h}=mQ(r);uU(dx(r),n),xU(r),uQ(r,h),EQ(r,u),cQ(r),CU(r),SU(r);const f=[];bQ(r,f),KQ(r,f),fQ(r),s&&_Q(r,a),RQ(r,s),NU(r),dQ(r,i),JQ(r,{align:o,nodesep:A,edgesep:l,ranksep:c}),kU(r),IU(r),CQ(r,f),FU(r),gQ(r,i);const{width:d,height:g}=MU(r);return TU(r),OU(r),oQ(r),{width:d,height:g}},vU=(r,t)=>{r.getAllNodes().forEach(e=>{const n=r.getNode(e.id);if(t.hasNode(e.id)){const i=t.getNode(e.id);n.data.fixorder=i.data._order,delete i.data._order}else delete n.data.fixorder})},pU=(r,t)=>{r.getAllNodes().forEach(e=>{var n;const i=r.getNode(e.id);if(i){const a=t.getNode(e.id);i.data.x=a.data.x,i.data.y=a.data.y,i.data._order=a.data.order,i.data._rank=a.data.rank,!((n=t.getChildren(e.id))===null||n===void 0)&&n.length&&(i.data.width=a.data.width,i.data.height=a.data.height)}}),r.getAllEdges().forEach(e=>{const n=r.getEdge(e.id),i=t.getEdge(e.id);n.data.points=i?i.data.points:[],i&&i.data.hasOwnProperty("x")&&(n.data.x=i.data.x,n.data.y=i.data.y)})},mU=["width","height","layer","fixorder"],yU={width:0,height:0},wU=["minlen","weight","width","height","labeloffset"],EU={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},wy=["labelpos"],BU=r=>{const t=new Gr({tree:[]});return r.getAllNodes().forEach(e=>{const n=Yx(r.getNode(e.id).data),i=Object.assign(Object.assign({},yU),n),a=jx(i,mU);t.hasNode(e.id)||t.addNode({id:e.id,data:Object.assign({},a)});const s=r.hasTreeStructure("combo")?r.getParent(e.id,"combo"):r.getParent(e.id);Pe(s)||(t.hasNode(s.id)||t.addNode(Object.assign({},s)),t.setParent(e.id,s.id))}),r.getAllEdges().forEach(e=>{const n=Yx(r.getEdge(e.id).data),i={};wy==null||wy.forEach(a=>{n[a]!==void 0&&(i[a]=n[a])}),t.addEdge({id:e.id,source:e.source,target:e.target,data:Object.assign({},EU,jx(n,wU),i)})}),t},bU=(r,t)=>{const{ranksep:e=0,rankdir:n}=t;return r.getAllNodes().forEach(i=>{isNaN(i.data.layer)||i.data.layer||(i.data.layer=0)}),r.getAllEdges().forEach(i=>{var a;i.data.minlen*=2,((a=i.data.labelpos)===null||a===void 0?void 0:a.toLowerCase())!=="c"&&(n==="TB"||n==="BT"?i.data.width+=i.data.labeloffset:i.data.height+=i.data.labeloffset)}),e/2},xU=r=>{r.getAllEdges().forEach(t=>{if(t.data.width&&t.data.height){const e=r.getNode(t.source),n=r.getNode(t.target),i={e:t,rank:(n.data.rank-e.data.rank)/2+e.data.rank};Pc(r,"edge-proxy",i,"_ep")}})},CU=r=>{let t=0;return r.getAllNodes().forEach(e=>{var n,i;e.data.borderTop&&(e.data.minRank=(n=r.getNode(e.data.borderTop))===null||n===void 0?void 0:n.data.rank,e.data.maxRank=(i=r.getNode(e.data.borderBottom))===null||i===void 0?void 0:i.data.rank,t=Math.max(t,e.data.maxRank||-1/0))}),t},SU=r=>{r.getAllNodes().forEach(t=>{t.data.dummy==="edge-proxy"&&(r.getEdge(t.data.e.id).data.labelRank=t.data.rank,r.removeNode(t.id))})},MU=(r,t)=>{let e,n=0,i,a=0;const{marginx:s=0,marginy:o=0}=t||{},A=l=>{if(!l.data)return;const c=l.data.x,u=l.data.y,h=l.data.width,f=l.data.height;!isNaN(c)&&!isNaN(h)&&(e===void 0&&(e=c-h/2),e=Math.min(e,c-h/2),n=Math.max(n,c+h/2)),!isNaN(u)&&!isNaN(f)&&(i===void 0&&(i=u-f/2),i=Math.min(i,u-f/2),a=Math.max(a,u+f/2))};return r.getAllNodes().forEach(l=>{A(l)}),r.getAllEdges().forEach(l=>{l!=null&&l.data.hasOwnProperty("x")&&A(l)}),e-=s,i-=o,r.getAllNodes().forEach(l=>{l.data.x-=e,l.data.y-=i}),r.getAllEdges().forEach(l=>{var c;(c=l.data.points)===null||c===void 0||c.forEach(u=>{u.x-=e,u.y-=i}),l.data.hasOwnProperty("x")&&(l.data.x-=e),l.data.hasOwnProperty("y")&&(l.data.y-=i)}),{width:n-e+s,height:a-i+o}},TU=r=>{r.getAllEdges().forEach(t=>{const e=r.getNode(t.source),n=r.getNode(t.target);let i,a;t.data.points?(i=t.data.points[0],a=t.data.points[t.data.points.length-1]):(t.data.points=[],i={x:n.data.x,y:n.data.y},a={x:e.data.x,y:e.data.y}),t.data.points.unshift(vx(e.data,i)),t.data.points.push(vx(n.data,a))})},FU=r=>{r.getAllEdges().forEach(t=>{if(t.data.hasOwnProperty("x"))switch((t.data.labelpos==="l"||t.data.labelpos==="r")&&(t.data.width-=t.data.labeloffset),t.data.labelpos){case"l":t.data.x-=t.data.width/2+t.data.labeloffset;break;case"r":t.data.x+=t.data.width/2+t.data.labeloffset;break}})},OU=r=>{r.getAllEdges().forEach(t=>{var e;t.data.reversed&&((e=t.data.points)===null||e===void 0||e.reverse())})},IU=r=>{r.getAllNodes().forEach(t=>{var e,n,i;if(!((e=r.getChildren(t.id))===null||e===void 0)&&e.length){const a=r.getNode(t.id),s=r.getNode(a.data.borderTop),o=r.getNode(a.data.borderBottom),A=r.getNode(a.data.borderLeft[((n=a.data.borderLeft)===null||n===void 0?void 0:n.length)-1]),l=r.getNode(a.data.borderRight[((i=a.data.borderRight)===null||i===void 0?void 0:i.length)-1]);a.data.width=Math.abs((l==null?void 0:l.data.x)-(A==null?void 0:A.data.x))||10,a.data.height=Math.abs((o==null?void 0:o.data.y)-(s==null?void 0:s.data.y))||10,a.data.x=((A==null?void 0:A.data.x)||0)+a.data.width/2,a.data.y=((s==null?void 0:s.data.y)||0)+a.data.height/2}}),r.getAllNodes().forEach(t=>{t.data.dummy==="border"&&r.removeNode(t.id)})},LU=r=>{r.getAllEdges().forEach(t=>{if(t.source===t.target){const e=r.getNode(t.source);e.data.selfEdges||(e.data.selfEdges=[]),e.data.selfEdges.push(t),r.removeEdge(t.id)}})},NU=r=>{const t=Ch(r);t==null||t.forEach(e=>{let n=0;e==null||e.forEach((i,a)=>{var s;const o=r.getNode(i);o.data.order=a+n,(s=o.data.selfEdges)===null||s===void 0||s.forEach(A=>{Pc(r,"selfedge",{width:A.data.width,height:A.data.height,rank:o.data.rank,order:a+ ++n,e:A},"_se")}),delete o.data.selfEdges})})},kU=r=>{r.getAllNodes().forEach(t=>{const e=r.getNode(t.id);if(e.data.dummy==="selfedge"){const n=r.getNode(e.data.e.source),i=n.data.x+n.data.width/2,a=n.data.y,s=e.data.x-i,o=n.data.height/2;r.hasEdge(e.data.e.id)?r.updateEdgeData(e.data.e.id,e.data.e.data):r.addEdge({id:e.data.e.id,source:e.data.e.source,target:e.data.e.target,data:e.data.e.data}),r.removeNode(t.id),e.data.e.data.points=[{x:i+2*s/3,y:a-o},{x:i+5*s/6,y:a-o},{y:a,x:i+s},{x:i+5*s/6,y:a+o},{x:i+2*s/3,y:a+o}],e.data.e.data.x=e.data.x,e.data.e.data.y=e.data.y}})},jx=(r,t)=>{const e={};return t==null||t.forEach(n=>{r[n]!==void 0&&(e[n]=+r[n])}),e},Yx=(r={})=>{const t={};return Object.keys(r).forEach(e=>{t[e.toLowerCase()]=r[e]}),t};function Sh(r){if(!r)return[0,0,0];if(we(r))return[r,r,r];if(r.length===0)return[0,0,0];const[t,e=t,n=t]=r;return[t,e,n]}function Cl(r,t){let e;return jt(t)?e=t:we(t)?e=()=>t:e=()=>r,e}function Ey(r,t,e=!0){return!t&&t!==0?n=>{const{size:i}=n.data||{};return i?Array.isArray(i)?e?Math.max(...i)||r:i:Br(i)&&i.width&&i.height?e?Math.max(i.width,i.height)||r:[i.width,i.height]:i:r}:jt(t)?t:we(t)?()=>t:Array.isArray(t)?()=>e?Math.max(...t)||r:t:Br(t)&&t.width&&t.height?()=>e?Math.max(t.width,t.height)||r:[t.width,t.height]:()=>r}const By=(r,t,e=10)=>{let n;const i=typeof t=="function"?t:()=>t||0;return r?Array.isArray(r)?n=s=>r:jt(r)?n=r:n=s=>r:n=s=>{var o,A,l;if(!((o=s.data)===null||o===void 0)&&o.bboxSize)return(A=s.data)===null||A===void 0?void 0:A.bboxSize;if(!((l=s.data)===null||l===void 0)&&l.size){const c=s.data.size;return Array.isArray(c)?c:Br(c)?[c.width,c.height]:c}return e},s=>{const o=n(s),A=i(s);return Math.max(...Sh(o))+A}},by=r=>{if(r===null)return r;if(r instanceof Date)return new Date(r.getTime());if(r instanceof Array){const t=[];return r.forEach(e=>{t.push(e)}),t.map(e=>by(e))}if(typeof r=="object"){const t={};return Object.keys(r).forEach(e=>{t[e]=by(r[e])}),t}return r},Qa=(r,t)=>{const e=by(r);return e.data=e.data||{},t&&(we(e.data.x)||(e.data.x=Math.random()*t[0]),we(e.data.y)||(e.data.y=Math.random()*t[1])),e},QU={rankdir:"TB",nodesep:50,ranksep:50,edgeLabelSpace:!0,ranker:"tight-tree",controlPoints:!1,radial:!1,focusNode:null};class UU{constructor(t={}){this.options=t,this.id="antv-dagre",this.options=Object.assign(Object.assign({},QU),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericDagreLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericDagreLayout(!0,t,e)})}genericDagreLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},this.options),n),{nodeSize:a,align:s,rankdir:o="TB",ranksep:A,nodesep:l,ranksepFunc:c,nodesepFunc:u,edgeLabelSpace:h,ranker:f,nodeOrder:d,begin:g,controlPoints:v,radial:y,sortByCombo:E,preset:C}=i,I=new Gr({tree:[]}),R=Cl(A||50,c),K=Cl(l||50,u);let W=K,V=R;(o==="LR"||o==="RL")&&(W=R,V=K);const J=Ey(10,a,!1),et=e.getAllNodes(),at=e.getAllEdges();et.forEach(St=>{const Ot=Sh(J(St)),Gt=V(St),qt=W(St),ae=Ot[0]+2*qt,ue=Ot[1]+2*Gt,pe=St.data.layer;we(pe)?I.addNode({id:St.id,data:{width:ae,height:ue,layer:pe}}):I.addNode({id:St.id,data:{width:ae,height:ue}})}),E&&(I.attachTreeStructure("combo"),et.forEach(St=>{const{parentId:Ot}=St.data;Ot!==void 0&&I.hasNode(Ot)&&I.setParent(St.id,Ot,"combo")})),at.forEach(St=>{I.addEdge({id:St.id,source:St.source,target:St.target,data:{weight:St.data.weight||1}})});let ct;C!=null&&C.length&&(ct=new Gr({nodes:C})),dU(I,{prevGraph:ct,edgeLabelSpace:h,keepNodeOrder:!!d,nodeOrder:d||[],acyclicer:"greedy",ranker:f,rankdir:o,nodesep:l,align:s});const pt=[0,0];if(g){let St=1/0,Ot=1/0;I.getAllNodes().forEach(Gt=>{St>Gt.data.x&&(St=Gt.data.x),Ot>Gt.data.y&&(Ot=Gt.data.y)}),I.getAllEdges().forEach(Gt=>{var qt;(qt=Gt.data.points)===null||qt===void 0||qt.forEach(ae=>{St>ae.x&&(St=ae.x),Ot>ae.y&&(Ot=ae.y)})}),pt[0]=g[0]-St,pt[1]=g[1]-Ot}const wt=o==="LR"||o==="RL";if(!y){const St=new Set,Gt=o==="BT"||o==="RL"?(pe,Ce)=>Ce-pe:(pe,Ce)=>pe-Ce;I.getAllNodes().forEach(pe=>{pe.data.x=pe.data.x+pt[0],pe.data.y=pe.data.y+pt[1],St.add(wt?pe.data.x:pe.data.y)});const qt=Array.from(St).sort(Gt),ae=wt?(pe,Ce)=>pe.x!==Ce.x:(pe,Ce)=>pe.y!==Ce.y,ue=wt?(pe,Ce,Qe)=>{const Re=Math.max(Ce.y,Qe.y),nn=Math.min(Ce.y,Qe.y);return pe.filter(mn=>mn.y<=Re&&mn.y>=nn)}:(pe,Ce,Qe)=>{const Re=Math.max(Ce.x,Qe.x),nn=Math.min(Ce.x,Qe.x);return pe.filter(mn=>mn.x<=Re&&mn.x>=nn)};I.getAllEdges().forEach((pe,Ce)=>{var Qe;h&&v&&pe.data.type!=="loop"&&(pe.data.controlPoints=PU((Qe=pe.data.points)===null||Qe===void 0?void 0:Qe.map(({x:Re,y:nn})=>({x:Re+pt[0],y:nn+pt[1]})),I.getNode(pe.source),I.getNode(pe.target),qt,wt,ae,ue))})}let Ct=[];Ct=I.getAllNodes().map(St=>Qa(St));const Ht=I.getAllEdges();return t&&(Ct.forEach(St=>{e.mergeNodeData(St.id,{x:St.data.x,y:St.data.y})}),Ht.forEach(St=>{e.mergeEdgeData(St.id,{controlPoints:St.data.controlPoints})})),{nodes:Ct,edges:Ht}})}}const PU=(r,t,e,n,i,a,s)=>{let o=(r==null?void 0:r.slice(1,r.length-1))||[];if(t&&e){let{x:A,y:l}=t.data,{x:c,y:u}=e.data;if(i&&(A=t.data.y,l=t.data.x,c=e.data.y,u=e.data.x),u!==l&&A!==c){const h=n.indexOf(l),f=n[h+1];if(f){const v=o[0],y=i?{x:(l+f)/2,y:(v==null?void 0:v.y)||c}:{x:(v==null?void 0:v.x)||c,y:(l+f)/2};(!v||a(v,y))&&o.unshift(y)}const d=n.indexOf(u),g=Math.abs(d-h);if(g===1)o=s(o,t.data,e.data),o.length||o.push(i?{x:(l+u)/2,y:A}:{x:A,y:(l+u)/2});else if(g>1){const v=n[d-1];if(v){const y=o[o.length-1],E=i?{x:(u+v)/2,y:(y==null?void 0:y.y)||c}:{x:(y==null?void 0:y.x)||A,y:(u+v)/2};(!y||a(y,E))&&o.push(E)}}}}return o},Sl=(r,t,e)=>{const n=r.getAllNodes(),i=r.getAllEdges();if(!(n!=null&&n.length))return{nodes:[],edges:i};if(n.length===1)return t&&r.mergeNodeData(n[0].id,{x:e[0],y:e[1]}),{nodes:[Object.assign(Object.assign({},n[0]),{data:Object.assign(Object.assign({},n[0].data),{x:e[0],y:e[1]})})],edges:i}},DU={radius:null,startRadius:null,endRadius:null,startAngle:0,endAngle:2*Math.PI,clockwise:!0,divisions:1,ordering:null,angleRatio:1};class RU{constructor(t={}){this.options=t,this.id="circular",this.options=Object.assign(Object.assign({},DU),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericCircularLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericCircularLayout(!0,t,e)})}genericCircularLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},this.options),n),{width:a,height:s,center:o,divisions:A,startAngle:l=0,endAngle:c=2*Math.PI,angleRatio:u,ordering:h,clockwise:f,nodeSpacing:d,nodeSize:g}=i,v=e.getAllNodes(),y=e.getAllEdges(),[E,C,I]=HU(a,s,o),R=v==null?void 0:v.length;if(!R||R===1)return Sl(e,t,I);const K=(c-l)/R;let{radius:W,startRadius:V,endRadius:J}=i;if(d){const wt=Cl(10,d),Ct=Ey(10,g);let Ht=-1/0;v.forEach(St=>{const Ot=Ct(St);Ht<Ot&&(Ht=Ot)});let Rt=0;v.forEach((St,Ot)=>{Ot===0?Rt+=Ht||10:Rt+=(wt(St)||0)+(Ht||10)}),W=Rt/(2*Math.PI)}else!W&&!V&&!J?W=Math.min(C,E)/2:!V&&J?V=J:V&&!J&&(J=V);const et=K*u;let at=[];h==="topology"?at=Xx(e,v):h==="topology-directed"?at=Xx(e,v,!0):h==="degree"?at=_U(e,v):at=v.map(wt=>Qa(wt));const ct=Math.ceil(R/A);for(let wt=0;wt<R;++wt){let Ct=W;!Ct&&V!==null&&J!==null&&(Ct=V+wt*(J-V)/(R-1)),Ct||(Ct=10+wt*100/(R-1));let Ht=l+wt%ct*et+2*Math.PI/A*Math.floor(wt/ct);f||(Ht=c-wt%ct*et-2*Math.PI/A*Math.floor(wt/ct)),at[wt].data.x=I[0]+Math.cos(Ht)*Ct,at[wt].data.y=I[1]+Math.sin(Ht)*Ct}return t&&at.forEach(wt=>{e.mergeNodeData(wt.id,{x:wt.data.x,y:wt.data.y})}),{nodes:at,edges:y}})}}const Xx=(r,t,e=!1)=>{const n=[Qa(t[0])],i={},a=t.length;i[t[0].id]=!0;let s=0;return t.forEach((o,A)=>{if(A!==0)if((A===a-1||r.getDegree(o.id,"both")!==r.getDegree(t[A+1].id,"both")||r.areNeighbors(n[s].id,o.id))&&!i[o.id])n.push(Qa(o)),i[o.id]=!0,s++;else{const l=e?r.getSuccessors(n[s].id):r.getNeighbors(n[s].id);let c=!1;for(let h=0;h<l.length;h++){const f=l[h];if(r.getDegree(f.id)===r.getDegree(o.id)&&!i[f.id]){n.push(Qa(f)),i[f.id]=!0,c=!0;break}}let u=0;for(;!c&&(i[t[u].id]||(n.push(Qa(t[u])),i[t[u].id]=!0,c=!0),u++,u!==a););}}),n};function _U(r,t){const e=[];return t.forEach((n,i)=>{e.push(Qa(n))}),e.sort((n,i)=>r.getDegree(n.id,"both")-r.getDegree(i.id,"both")),e}const HU=(r,t,e)=>{let n=r,i=t,a=e;return!n&&typeof window!="undefined"&&(n=window.innerWidth),!i&&typeof window!="undefined"&&(i=window.innerHeight),a||(a=[n/2,i/2]),[n,i,a]},Qo=Array.isArray,GU={nodeSize:30,nodeSpacing:10,preventOverlap:!1,sweep:void 0,equidistant:!1,startAngle:3/2*Math.PI,clockwise:!0,maxLevelDiff:void 0,sortBy:"degree"};class xy{constructor(t={}){this.options=t,this.id="concentric",this.options=Object.assign(Object.assign({},GU),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericConcentricLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericConcentricLayout(!0,t,e)})}genericConcentricLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},this.options),n),{center:a,width:s,height:o,sortBy:A,maxLevelDiff:l,sweep:c,clockwise:u,equidistant:h,preventOverlap:f,startAngle:d=3/2*Math.PI,nodeSize:g,nodeSpacing:v}=i,y=e.getAllNodes(),E=e.getAllEdges(),C=!s&&typeof window!="undefined"?window.innerWidth:s,I=!o&&typeof window!="undefined"?window.innerHeight:o,R=a||[C/2,I/2];if(!(y!=null&&y.length)||y.length===1)return Sl(e,t,R);const K=[];let W,V=0;Qo(g)?W=Math.max(g[0],g[1]):jt(g)?(W=-1/0,y.forEach(St=>{const Ot=Math.max(...Sh(g(St)));Ot>W&&(W=Ot)})):W=g,Qo(v)?V=Math.max(v[0],v[1]):we(v)&&(V=v),y.forEach(St=>{const Ot=Qa(St);K.push(Ot);let Gt=W;const{data:qt}=Ot;Qo(qt.size)?Gt=Math.max(qt.size[0],qt.size[1]):we(qt.size)?Gt=qt.size:Br(qt.size)&&(Gt=Math.max(qt.size.width,qt.size.height)),W=Math.max(W,Gt),jt(v)&&(V=Math.max(v(St),V))});const J={};K.forEach((St,Ot)=>{J[St.id]=Ot});let et=A;(!gn(et)||K[0].data[et]===void 0)&&(et="degree"),et==="degree"?K.sort((St,Ot)=>e.getDegree(Ot.id,"both")-e.getDegree(St.id,"both")):K.sort((St,Ot)=>Ot.data[et]-St.data[et]);const at=K[0],ct=(l||(et==="degree"?e.getDegree(at.id,"both"):at.data[et]))/4,pt=[{nodes:[]}];let wt=pt[0];K.forEach(St=>{if(wt.nodes.length>0){const Ot=Math.abs(et==="degree"?e.getDegree(wt.nodes[0].id,"both")-e.getDegree(St.id,"both"):wt.nodes[0].data[et]-St.data[et]);ct&&Ot>=ct&&(wt={nodes:[]},pt.push(wt))}wt.nodes.push(St)});let Ct=W+V;if(!f){const St=pt.length>0&&pt[0].nodes.length>1,Gt=(Math.min(C,I)/2-Ct)/(pt.length+(St?1:0));Ct=Math.min(Ct,Gt)}let Ht=0;if(pt.forEach(St=>{const Ot=c===void 0?2*Math.PI-2*Math.PI/St.nodes.length:c;if(St.dTheta=Ot/Math.max(1,St.nodes.length-1),St.nodes.length>1&&f){const Gt=Math.cos(St.dTheta)-Math.cos(0),qt=Math.sin(St.dTheta)-Math.sin(0),ae=Math.sqrt(Ct*Ct/(Gt*Gt+qt*qt));Ht=Math.max(ae,Ht)}St.r=Ht,Ht+=Ct}),h){let St=0,Ot=0;for(let Gt=0;Gt<pt.length;Gt++){const ae=(pt[Gt].r||0)-Ot;St=Math.max(St,ae)}Ot=0,pt.forEach((Gt,qt)=>{qt===0&&(Ot=Gt.r||0),Gt.r=Ot,Ot+=St})}return pt.forEach(St=>{const Ot=St.dTheta||0,Gt=St.r||0;St.nodes.forEach((qt,ae)=>{const ue=d+(u?1:-1)*Ot*ae;qt.data.x=R[0]+Gt*Math.cos(ue),qt.data.y=R[1]+Gt*Math.sin(ue)})}),t&&K.forEach(St=>e.mergeNodeData(St.id,{x:St.data.x,y:St.data.y})),{nodes:K,edges:E}})}}var Cy=M(14301),KU=M(7695);const zU=.81,Sy=.1;function VU(r,t,e,n,i=2){const a=t/e,s=r.getAllNodes(),o=s.map((c,u)=>{const{nodeStrength:h,x:f,y:d,z:g,size:v}=c.data;return{x:f,y:d,z:g,size:v,index:u,id:c.id,vx:0,vy:0,vz:0,weight:a*h}}),A=(i===2?(0,Cy.Z)(o,c=>c.x,c=>c.y):(0,KU.Z)(o,c=>c.x,c=>c.y,c=>c.z)).visitAfter(WU),l=new Map;return o.forEach(c=>{l.set(c.id,c),jU(c,A,i)}),o.map((c,u)=>{const{id:h,data:f}=s[u],{mass:d=1}=f;n[h]={x:c.vx/d,y:c.vy/d,z:c.vz/d}}),n}function WU(r){let t=0,e=0,n=0,i=0,a=0;const s=r.length;if(s){for(let o=0;o<s;o++){const A=r[o];A&&A.weight&&(t+=A.weight,e+=A.x*A.weight,n+=A.y*A.weight,i+=A.z*A.weight,a+=A.size*A.weight)}r.x=e/t,r.y=n/t,r.z=i/t,r.size=a/t,r.weight=t}else{const o=r;r.x=o.data.x,r.y=o.data.y,r.z=o.data.z,r.size=o.data.size,r.weight=o.data.weight}}const ZU=(r,t,e,n,i,a,s)=>{var o;if(((o=r.data)===null||o===void 0?void 0:o.id)===a.id)return;const A=[e,n,i][s-1],l=a.x-r.x||Sy,c=a.y-r.y||Sy,u=a.z-r.z||Sy,h=[l,c,u],f=A-t;let d=0;for(let y=0;y<s;y++)d+=h[y]*h[y];const v=Math.sqrt(d)*d;if(f*f*zU<d){const y=r.weight/v;return a.vx+=l*y,a.vy+=c*y,a.vz+=u*y,!0}if(r.length)return!1;if(r.data!==a){const y=r.data.weight/v;a.vx+=l*y,a.vy+=c*y,a.vz+=u*y}};function jU(r,t,e){t.visit((n,i,a,s,o)=>ZU(n,i,a,s,o,r,e))}const YU={dimensions:2,maxIteration:500,gravity:10,factor:1,edgeStrength:50,nodeStrength:1e3,coulombDisScale:.005,damping:.9,maxSpeed:200,minMovement:.4,interval:.02,linkDistance:200,clusterNodeStrength:20,preventOverlap:!0,distanceThresholdMode:"mean"};class Jx{constructor(t={}){this.options=t,this.id="force",this.timeInterval=0,this.judgingDistance=0,this.running=!1,this.options=Object.assign(Object.assign({},YU),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericForceLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericForceLayout(!0,t,e)})}stop(){this.timeInterval&&typeof window!="undefined"&&window.clearInterval(this.timeInterval),this.running=!1}tick(t=this.options.maxIteration||1){if(this.lastResult)return this.lastResult;for(let n=0;(this.judgingDistance>this.lastOptions.minMovement||n<1)&&n<t;n++)this.runOneStep(this.lastCalcGraph,this.lastGraph,n,this.lastVelMap,this.lastOptions),this.updatePosition(this.lastGraph,this.lastCalcGraph,this.lastVelMap,this.lastOptions);const e={nodes:this.lastLayoutNodes,edges:this.lastLayoutEdges};return this.lastAssign&&e.nodes.forEach(n=>this.lastGraph.mergeNodeData(n.id,{x:n.data.x,y:n.data.y,z:this.options.dimensions===3?n.data.z:void 0})),e}genericForceLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},this.options),n),a=e.getAllNodes(),s=e.getAllEdges(),o=this.formatOptions(i,e),{dimensions:A,width:l,height:c,nodeSize:u,getMass:h,nodeStrength:f,edgeStrength:d,linkDistance:g}=o,v=a.map((V,J)=>Object.assign(Object.assign({},V),{data:Object.assign(Object.assign({},V.data),{x:we(V.data.x)?V.data.x:Math.random()*l,y:we(V.data.y)?V.data.y:Math.random()*c,z:we(V.data.z)?V.data.z:Math.random()*Math.sqrt(l*c),size:u(V)||30,mass:h(V),nodeStrength:f(V)})})),y=s.map(V=>Object.assign(Object.assign({},V),{data:Object.assign(Object.assign({},V.data),{edgeStrength:d(V),linkDistance:g(V,e.getNode(V.source),e.getNode(V.target))})}));if(!(a!=null&&a.length))return this.lastResult={nodes:[],edges:s},{nodes:[],edges:s};const E={};a.forEach((V,J)=>{E[V.id]={x:0,y:0,z:0}});const C=new Gr({nodes:v,edges:y});this.formatCentripetal(o,C);const{maxIteration:I,minMovement:R,onTick:K}=o;if(this.lastLayoutNodes=v,this.lastLayoutEdges=y,this.lastAssign=t,this.lastGraph=e,this.lastCalcGraph=C,this.lastOptions=o,this.lastVelMap=E,typeof window=="undefined")return;let W=0;return new Promise(V=>{this.timeInterval=window.setInterval(()=>{(!a||!this.running)&&V({nodes:My(e,v),edges:s}),this.runOneStep(C,e,W,E,o),this.updatePosition(e,C,E,o),t&&v.forEach(J=>e.mergeNodeData(J.id,{x:J.data.x,y:J.data.y,z:A===3?J.data.z:void 0})),K==null||K({nodes:My(e,v),edges:s}),W++,(W>=I||this.judgingDistance<R)&&(window.clearInterval(this.timeInterval),V({nodes:My(e,v),edges:s}))},0),this.running=!0})})}formatOptions(t,e){const n=Object.assign({},t),{width:i,height:a,getMass:s}=t;n.width=!i&&typeof window!="undefined"?window.innerWidth:i,n.height=!a&&typeof window!="undefined"?window.innerHeight:a,t.center||(n.center=[n.width/2,n.height/2]),s||(n.getMass=A=>{let l=1;we(A==null?void 0:A.data.mass)&&(l=A==null?void 0:A.data.mass);const c=e.getDegree(A.id,"both");return!c||c<5?l:c*5*l}),n.nodeSize=By(t.nodeSize,t.nodeSpacing);const o=t.linkDistance?Cl(1,t.linkDistance):A=>1+n.nodeSize(e.getNode(A.source))+n.nodeSize(e.getNode(A.target));return n.linkDistance=o,n.nodeStrength=Cl(1,t.nodeStrength),n.edgeStrength=Cl(1,t.edgeStrength),n}formatCentripetal(t,e){const{dimensions:n,centripetalOptions:i,center:a,clusterNodeStrength:s,leafCluster:o,clustering:A,nodeClusterBy:l}=t,c=e.getAllNodes(),u=i||{leaf:2,single:2,others:1,center:y=>({x:a[0],y:a[1],z:n===3?a[2]:void 0})};typeof s!="function"&&(t.clusterNodeStrength=y=>s);let h,f;if(o&&l&&(h=qx(e,l),f=Array.from(new Set(c==null?void 0:c.map(y=>y.data[l])))||[],t.centripetalOptions=Object.assign(u,{single:100,leaf:y=>{const{siblingLeaves:E,sameTypeLeaves:C}=h[y.id]||{};return(C==null?void 0:C.length)===(E==null?void 0:E.length)||(f==null?void 0:f.length)===1?1:t.clusterNodeStrength(y)},others:1,center:y=>{const E=e.getDegree(y.id,"both");if(!E)return{x:100,y:100,z:0};let C;if(E===1){const{sameTypeLeaves:I=[]}=h[y.id]||{};I.length===1?C=void 0:I.length>1&&(C=$x(I))}else C=void 0;return{x:C==null?void 0:C.x,y:C==null?void 0:C.y,z:C==null?void 0:C.z}}})),A&&l){h||(h=qx(e,l)),f||(f=Array.from(new Set(c.map(E=>E.data[l])))),f=f.filter(E=>E!==void 0);const y={};f.forEach(E=>{const C=c.filter(I=>I.data[l]===E).map(I=>e.getNode(I.id));y[E]=$x(C)}),t.centripetalOptions=Object.assign(u,{single:E=>t.clusterNodeStrength(E),leaf:E=>t.clusterNodeStrength(E),others:E=>t.clusterNodeStrength(E),center:E=>{const C=y[E.data[l]];return{x:C==null?void 0:C.x,y:C==null?void 0:C.y,z:C==null?void 0:C.z}}})}const{leaf:d,single:g,others:v}=t.centripetalOptions||{};d&&typeof d!="function"&&(t.centripetalOptions.leaf=()=>d),g&&typeof g!="function"&&(t.centripetalOptions.single=()=>g),v&&typeof v!="function"&&(t.centripetalOptions.others=()=>v)}runOneStep(t,e,n,i,a){const s={},o=t.getAllNodes(),A=t.getAllEdges();if(!(o!=null&&o.length))return;const{monitor:l}=a;if(this.calRepulsive(t,s,a),A&&this.calAttractive(t,s,a),this.calGravity(t,e,s,a),this.updateVelocity(t,s,i,a),l){const c=this.calTotalEnergy(s,o);l({energy:c,nodes:e.getAllNodes(),edges:e.getAllEdges(),iterations:n})}}calTotalEnergy(t,e){if(!(e!=null&&e.length))return 0;let n=0;return e.forEach((i,a)=>{const s=t[i.id].x,o=t[i.id].y,A=this.options.dimensions===3?t[i.id].z:0,l=s*s+o*o+A*A,{mass:c=1}=i.data;n+=c*l*.5}),n}calRepulsive(t,e,n){const{dimensions:i,factor:a,coulombDisScale:s}=n;VU(t,a,s*s,e,i)}calAttractive(t,e,n){const{dimensions:i,nodeSize:a}=n;t.getAllEdges().forEach((s,o)=>{const{source:A,target:l}=s,c=t.getNode(A),u=t.getNode(l);if(!c||!u)return;let h=u.data.x-c.data.x,f=u.data.y-c.data.y,d=i===3?u.data.z-c.data.z:0;!h&&!f&&(h=Math.random()*.01,f=Math.random()*.01,i===3&&!d&&(d=Math.random()*.01));const g=Math.sqrt(h*h+f*f+d*d);if(g<a(c)+a(u))return;const v=h/g,y=f/g,E=d/g,{linkDistance:C=200,edgeStrength:I=200}=s.data||{},K=(C-g)*I,W=c.data.mass||1,V=u.data.mass||1,J=1/W,et=1/V,at=v*K,ct=y*K,pt=E*K;e[A].x-=at*J,e[A].y-=ct*J,e[A].z-=pt*J,e[l].x+=at*et,e[l].y+=ct*et,e[l].z+=pt*et})}calGravity(t,e,n,i){const{getCenter:a}=i,s=t.getAllNodes(),o=e.getAllNodes(),A=e.getAllEdges(),{width:l,height:c,center:u,gravity:h,centripetalOptions:f}=i;s&&s.forEach(d=>{const{id:g,data:v}=d,{mass:y,x:E,y:C,z:I}=v,R=e.getNode(g);let K=0,W=0,V=0,J=h;const et=t.getDegree(g,"in"),at=t.getDegree(g,"out"),ct=t.getDegree(g,"both"),pt=a==null?void 0:a(R,ct);if(pt){const[wt,Ct,Ht]=pt;K=E-wt,W=C-Ct,J=Ht}else K=E-u[0],W=C-u[1],V=I-u[2];if(J&&(n[g].x-=J*K/y,n[g].y-=J*W/y,n[g].z-=J*V/y),f){const{leaf:wt,single:Ct,others:Ht,center:Rt}=f,{x:St,y:Ot,z:Gt,centerStrength:qt}=(Rt==null?void 0:Rt(R,o,A,l,c))||{x:0,y:0,z:0,centerStrength:0};if(!we(St)||!we(Ot))return;const ae=(E-St)/y,ue=(C-Ot)/y,pe=(I-Gt)/y;if(qt&&(n[g].x-=qt*ae,n[g].y-=qt*ue,n[g].z-=qt*pe),ct===0){const Qe=Ct(R);if(!Qe)return;n[g].x-=Qe*ae,n[g].y-=Qe*ue,n[g].z-=Qe*pe;return}if(et===0||at===0){const Qe=wt(R,o,A);if(!Qe)return;n[g].x-=Qe*ae,n[g].y-=Qe*ue,n[g].z-=Qe*pe;return}const Ce=Ht(R);if(!Ce)return;n[g].x-=Ce*ae,n[g].y-=Ce*ue,n[g].z-=Ce*pe}})}updateVelocity(t,e,n,i){const{damping:a,maxSpeed:s,interval:o,dimensions:A}=i,l=t.getAllNodes();l!=null&&l.length&&l.forEach(c=>{const{id:u}=c;let h=(n[u].x+e[u].x*o)*a||.01,f=(n[u].y+e[u].y*o)*a||.01,d=A===3?(n[u].z+e[u].z*o)*a||.01:0;const g=Math.sqrt(h*h+f*f+d*d);if(g>s){const v=s/g;h=v*h,f=v*f,d=v*d}n[u]={x:h,y:f,z:d}})}updatePosition(t,e,n,i){const{distanceThresholdMode:a,interval:s,dimensions:o}=i,A=e.getAllNodes();if(!(A!=null&&A.length)){this.judgingDistance=0;return}let l=0;a==="max"?this.judgingDistance=-1/0:a==="min"&&(this.judgingDistance=1/0),A.forEach(c=>{const{id:u}=c,h=t.getNode(u);if(we(h.data.fx)&&we(h.data.fy)){e.mergeNodeData(u,{x:h.data.fx,y:h.data.fy,z:o===3?h.data.fz:void 0});return}const f=n[u].x*s,d=n[u].y*s,g=o===3?n[u].z*s:0;e.mergeNodeData(u,{x:c.data.x+f,y:c.data.y+d,z:c.data.z+g});const v=Math.sqrt(f*f+d*d+g*g);switch(a){case"max":this.judgingDistance<v&&(this.judgingDistance=v);break;case"min":this.judgingDistance>v&&(this.judgingDistance=v);break;default:l=l+v;break}}),(!a||a==="mean")&&(this.judgingDistance=l/A.length)}}const qx=(r,t)=>{const e=r.getAllNodes();if(!(e!=null&&e.length))return{};const n={};return e.forEach((i,a)=>{r.getDegree(i.id,"both")===1&&(n[i.id]=XU(r,"leaf",i,t))}),n},XU=(r,t,e,n)=>{const i=r.getDegree(e.id,"in"),a=r.getDegree(e.id,"out");let s=e,o=[];i===0?(s=r.getSuccessors(e.id)[0],o=r.getNeighbors(s.id)):a===0&&(s=r.getPredecessors(e.id)[0],o=r.getNeighbors(s.id)),o=o.filter(l=>r.getDegree(l.id,"in")===0||r.getDegree(l.id,"out")===0);const A=JU(r,t,n,e,o);return{coreNode:s,siblingLeaves:o,sameTypeLeaves:A}},JU=(r,t,e,n,i)=>{const a=n.data[e]||"";let s=(i==null?void 0:i.filter(o=>o.data[e]===a))||[];return t==="leaf"&&(s=s.filter(o=>r.getDegree(o.id,"in")===0||r.getDegree(o.id,"out")===0)),s},$x=r=>{const t={x:0,y:0};r.forEach(n=>{const{x:i,y:a}=n.data;t.x+=i||0,t.y+=a||0});const e=r.length||1;return{x:t.x/e,y:t.y/e}},My=(r,t)=>t.map(e=>{const{id:n,data:i}=e,a=r.getNode(n);return Object.assign(Object.assign({},a),{data:Object.assign(Object.assign({},a.data),{x:i.x,y:i.y,z:i.z})})});var wn=M(69);const h9=wn.XA,f9=wn.a_,d9=wn.yQ,g9=wn.Hs,v9=wn.Ec,p9=wn.dx,m9=wn.LU,y9=wn.Rm,CA=wn.y3,w9=wn.qK,E9=wn.pb,B9=wn.j,b9=wn.sO,x9=wn.BZ,C9=wn.EK,S9=wn.Db,M9=wn.Fx,T9=wn.tU,F9=wn.Ym,O9=wn.rs,I9=wn.QR,L9=wn.TB,N9=wn.oH,tC=wn.Sc,k9=wn.BN,Q9=wn.it,U9=wn.$r,P9=wn.QM,D9=wn.AV;var R9=(wn.y3,wn.y3);const _9=wn.GH,H9=wn.SO,G9=wn.uZ,K9=wn.yU,z9=wn.F1,V9=wn.re,eC=r=>{const t=[],e=r.length;for(let n=0;n<e;n+=1){t[n]=[];for(let i=0;i<e;i+=1)n===i?t[n][i]=0:r[n][i]===0||!r[n][i]?t[n][i]=1/0:t[n][i]=r[n][i]}for(let n=0;n<e;n+=1)for(let i=0;i<e;i+=1)for(let a=0;a<e;a+=1)t[i][a]>t[i][n]+t[n][a]&&(t[i][a]=t[i][n]+t[n][a]);return t},nC=(r,t)=>{const{nodes:e,edges:n}=r,i=[],a={};if(!e)throw new Error("invalid nodes data!");return e&&e.forEach((s,o)=>{a[s.id]=o;const A=[];i.push(A)}),n==null||n.forEach(s=>{const{source:o,target:A}=s,l=a[o],c=a[A];l===void 0||c===void 0||(i[l][c]=1,t||(i[c][l]=1))}),i},qU=(r,t)=>{const e=[];return r.forEach(n=>{const i=[];n.forEach(a=>{i.push(a*t)}),e.push(i)}),e},$U=r=>{let t=1/0,e=1/0,n=-1/0,i=-1/0;return r.forEach(a=>{let s=a.data.size;Qo(s)?s.length===1&&(s=[s[0],s[0]]):we(s)?s=[s,s]:(s===void 0||isNaN(s))&&(s=[30,30]);const o=[s[0]/2,s[1]/2],A=a.data.x-o[0],l=a.data.x+o[0],c=a.data.y-o[1],u=a.data.y+o[1];t>A&&(t=A),e>c&&(e=c),n<l&&(n=l),i<u&&(i=u)}),{minX:t,minY:e,maxX:n,maxY:i}},rC=(r,t)=>Math.sqrt((r.x-t.x)*(r.x-t.x)+(r.y-t.y)*(r.y-t.y)),Ty=(r,t,e,n="TB",i,a={})=>{if(!(t!=null&&t.length))return;const{stopBranchFn:s,stopAllFn:o}=a;for(let A=0;A<t.length;A++){const l=t[A];if(r.hasNode(l.id)&&!(s!=null&&s(l))){if(o!=null&&o(l))return;n==="TB"&&e(l),Ty(r,r.getChildren(l.id,i),e,n,i,a),n!=="TB"&&e(l)}}},tP={center:[0,0],linkDistance:50};class iC{constructor(t={}){this.options=t,this.id="mds",this.options=Object.assign(Object.assign({},tP),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericMDSLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericMDSLayout(!0,t,e)})}genericMDSLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},this.options),n),{center:a=[0,0],linkDistance:s=50}=i,o=e.getAllNodes(),A=e.getAllEdges();if(!(o!=null&&o.length)||o.length===1)return Sl(e,t,a);const l=nC({nodes:o,edges:A},!1),c=eC(l);eP(c);const u=qU(c,s),h=nP(u),f=[];return h.forEach((g,v)=>{const y=Qa(o[v]);y.data.x=g[0]+a[0],y.data.y=g[1]+a[1],f.push(y)}),t&&f.forEach(g=>e.mergeNodeData(g.id,{x:g.data.x,y:g.data.y})),{nodes:f,edges:A}})}}const eP=r=>{let t=-999999;r.forEach(e=>{e.forEach(n=>{n!==1/0&&t<n&&(t=n)})}),r.forEach((e,n)=>{e.forEach((i,a)=>{i===1/0&&(r[n][a]=t)})})},nP=r=>{const e=CA.mul(CA.pow(r,2),-.5),n=e.mean("row"),i=e.mean("column"),a=e.mean();e.add(a).subRowVector(n).subColumnVector(i);const s=new tC(e),o=CA.sqrt(s.diagonalMatrix).diagonal();return s.leftSingularVectors.toJSON().map(A=>CA.mul([A],[o]).toJSON()[0].splice(0,2))};function Fy(r){return!!r.tick&&!!r.stop}const rP={gForce:!0,force2:!0,d3force:!0,fruchterman:!0,forceAtlas2:!0,force:!0,"graphin-force":!0},iP={center:[0,0],comboPadding:10,treeKey:"combo"};class aP{constructor(t={}){this.options=t,this.id="comboCombined",this.options=Object.assign(Object.assign({},iP),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericComboCombinedLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericComboCombinedLayout(!0,t,e)})}genericComboCombinedLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=this.initVals(Object.assign(Object.assign({},this.options),n)),{center:a,treeKey:s,outerLayout:o}=i,A=e.getAllNodes().filter(V=>!V.data._isCombo),l=e.getAllNodes().filter(V=>V.data._isCombo),c=e.getAllEdges(),u=A==null?void 0:A.length;if(!u||u===1)return Sl(e,t,a);const h=[],f=new Map;A.forEach(V=>{f.set(V.id,V)});const d=new Map;l.forEach(V=>{d.set(V.id,V)});const g=new Map,v=this.getInnerGraphs(e,s,f,d,c,i,g);yield Promise.all(v);const y=new Map,E=[],C=new Map;let I=!0;e.getRoots(s).forEach(V=>{const J=g.get(V.id),et=d.get(V.id)||f.get(V.id),at={id:V.id,data:Object.assign(Object.assign({},V.data),{x:J.data.x||et.data.x,y:J.data.y||et.data.y,fx:J.data.fx||et.data.fx,fy:J.data.fy||et.data.fy,mass:J.data.mass||et.data.mass,size:J.data.size})};E.push(at),y.set(V.id,!0),!isNaN(at.data.x)&&at.data.x!==0&&!isNaN(at.data.y)&&at.data.y!==0?I=!1:(at.data.x=Math.random()*100,at.data.y=Math.random()*100),Ty(e,[V],ct=>{ct.id!==V.id&&C.set(ct.id,V.id)},"TB",s)});const R=[];c.forEach(V=>{const J=C.get(V.source)||V.source,et=C.get(V.target)||V.target;J!==et&&y.has(J)&&y.has(et)&&R.push({id:V.id,source:J,target:et,data:{}})});let K;if(E!=null&&E.length){if(E.length===1)E[0].data.x=a[0],E[0].data.y=a[1];else{const V=new Gr({nodes:E,edges:R}),J=o||new Jx;I&&rP[J.id]&&(yield(E.length<100?new iC:new xy).assign(V));const et=Object.assign({center:a,kg:5,preventOverlap:!0,animate:!1},J.id==="force"?{gravity:1,factor:4,linkDistance:(at,ct,pt)=>{const wt=Math.max(...ct.data.size)||32,Ct=Math.max(...pt.data.size)||32;return wt/2+Ct/2+200}}:{});K=yield aC(J,V,et)}g.forEach(V=>{var J;const et=K.nodes.find(pt=>pt.id===V.id);if(et){const{x:pt,y:wt}=et.data;V.data.visited=!0,V.data.x=pt,V.data.y=wt,h.push({id:V.id,data:{x:pt,y:wt}})}const{x:at,y:ct}=V.data;(J=V.data.nodes)===null||J===void 0||J.forEach(pt=>{h.push({id:pt.id,data:{x:pt.data.x+at,y:pt.data.y+ct}})})}),g.forEach(({data:V})=>{const{x:J,y:et,visited:at,nodes:ct}=V;ct==null||ct.forEach(pt=>{if(!at){const wt=h.find(Ct=>Ct.id===pt.id);wt.data.x+=J||0,wt.data.y+=et||0}})})}return t&&h.forEach(V=>{e.mergeNodeData(V.id,{x:V.data.x,y:V.data.y})}),{nodes:h,edges:c}})}initVals(t){const e=Object.assign({},t),{nodeSize:n,spacing:i,comboPadding:a}=t;let s,o;if(we(i)?o=()=>i:jt(i)?o=i:o=()=>0,e.spacing=o,!n)s=l=>{const c=o(l);return l.size?Qo(l.size)?((l.size[0]>l.size[1]?l.size[0]:l.size[1])+c)/2:Br(l.size)?((l.size.width>l.size.height?l.size.width:l.size.height)+c)/2:(l.size+c)/2:32+c/2};else if(jt(n))s=l=>{const c=n(l),u=o(l);return Qo(l.size)?((l.size[0]>l.size[1]?l.size[0]:l.size[1])+u)/2:((c||32)+u)/2};else if(Qo(n)){const c=(n[0]>n[1]?n[0]:n[1])/2;s=u=>c+o(u)/2}else{const l=n/2;s=c=>l+o(c)/2}e.nodeSize=s;let A;return we(a)?A=()=>a:Qo(a)?A=()=>Math.max.apply(null,a):jt(a)?A=a:A=()=>0,e.comboPadding=A,e}getInnerGraphs(t,e,n,i,a,s,o){const{nodeSize:A,comboPadding:l,spacing:c,innerLayout:u}=s,h=u||new xy({}),f={center:[0,0],preventOverlap:!0,nodeSpacing:c},d=[],g=v=>{let y=(l==null?void 0:l(v))||10;return Qo(y)&&(y=Math.max(...y)),{size:y?[y*2,y*2]:[30,30],padding:y}};return t.getRoots(e).forEach(v=>{o.set(v.id,{id:v.id,data:{nodes:[],size:g(v).size}});let y=Promise.resolve();Ty(t,[v],E=>{var C;if(!E.data._isCombo)return;const{size:I,padding:R}=g(E);if(!(!((C=t.getChildren(E.id,e))===null||C===void 0)&&C.length))o.set(E.id,{id:E.id,data:Object.assign(Object.assign({},E.data),{size:I})});else{const K=o.get(E.id);o.set(E.id,{id:E.id,data:Object.assign({nodes:[]},K==null?void 0:K.data)});const W=new Map,V=t.getChildren(E.id,e).map(at=>{if(at.data._isCombo)return o.has(at.id)||o.set(at.id,{id:at.id,data:Object.assign({},at.data)}),W.set(at.id,!0),o.get(at.id);const ct=n.get(at.id)||i.get(at.id);return W.set(at.id,!0),{id:at.id,data:Object.assign(Object.assign({},ct.data),at.data)}}),J={nodes:V,edges:a.filter(at=>W.has(at.source)&&W.has(at.target))};let et=1/0;V.forEach(at=>{var ct;let{size:pt}=at.data;pt||(pt=((ct=o.get(at.id))===null||ct===void 0?void 0:ct.data.size)||(A==null?void 0:A(at))||[30,30]),we(pt)&&(pt=[pt,pt]);const[wt,Ct]=pt;et>wt&&(et=wt),et>Ct&&(et=Ct),at.data.size=pt}),y=y.then(()=>(0,j.mG)(this,void 0,void 0,function*(){const at=new Gr(J);yield aC(h,at,f,!0);const{minX:ct,minY:pt,maxX:wt,maxY:Ct}=$U(V),Ht={x:(wt+ct)/2,y:(Ct+pt)/2};J.nodes.forEach(St=>{St.data.x-=Ht.x,St.data.y-=Ht.y});const Rt=[Math.max(wt-ct,et)+R*2,Math.max(Ct-pt,et)+R*2];o.get(E.id).data.size=Rt,o.get(E.id).data.nodes=V}))}return!0},"BT",e),d.push(y)}),d}}function aC(r,t,e,n){var i;return(0,j.mG)(this,void 0,void 0,function*(){return Fy(r)?(r.execute(t,e),r.stop(),r.tick((i=e.iterations)!==null&&i!==void 0?i:300)):n?yield r.assign(t,e):yield r.execute(t,e)})}function li(r){return function(){return r}}function SA(r){return(r()-.5)*1e-6}function sP(r){return r.index}function sC(r,t){var e=r.get(t);if(!e)throw new Error("node not found: "+t);return e}function oP(r){var t=sP,e=u,n,i=li(30),a,s,o,A,l,c=1;r==null&&(r=[]);function u(v){return 1/Math.min(o[v.source.index],o[v.target.index])}function h(v){for(var y=0,E=r.length;y<c;++y)for(var C=0,I,R,K,W,V,J,et;C<E;++C)I=r[C],R=I.source,K=I.target,W=K.x+K.vx-R.x-R.vx||SA(l),V=K.y+K.vy-R.y-R.vy||SA(l),J=Math.sqrt(W*W+V*V),J=(J-a[C])/J*v*n[C],W*=J,V*=J,K.vx-=W*(et=A[C]),K.vy-=V*et,R.vx+=W*(et=1-et),R.vy+=V*et}function f(){if(s){var v,y=s.length,E=r.length,C=new Map(s.map((R,K)=>[t(R,K,s),R])),I;for(v=0,o=new Array(y);v<E;++v)I=r[v],I.index=v,typeof I.source!="object"&&(I.source=sC(C,I.source)),typeof I.target!="object"&&(I.target=sC(C,I.target)),o[I.source.index]=(o[I.source.index]||0)+1,o[I.target.index]=(o[I.target.index]||0)+1;for(v=0,A=new Array(E);v<E;++v)I=r[v],A[v]=o[I.source.index]/(o[I.source.index]+o[I.target.index]);n=new Array(E),d(),a=new Array(E),g()}}function d(){if(s)for(var v=0,y=r.length;v<y;++v)n[v]=+e(r[v],v,r)}function g(){if(s)for(var v=0,y=r.length;v<y;++v)a[v]=+i(r[v],v,r)}return h.initialize=function(v,y){s=v,l=y,f()},h.links=function(v){return arguments.length?(r=v,f(),h):r},h.id=function(v){return arguments.length?(t=v,h):t},h.iterations=function(v){return arguments.length?(c=+v,h):c},h.strength=function(v){return arguments.length?(e=typeof v=="function"?v:li(+v),d(),h):e},h.distance=function(v){return arguments.length?(i=typeof v=="function"?v:li(+v),g(),h):i},h}var AP=M(41685),lP=M(83833);const cP=1664525,uP=1013904223,oC=4294967296;function hP(){let r=1;return()=>(r=(cP*r+uP)%oC)/oC}function fP(r){return r.x}function dP(r){return r.y}var gP=10,vP=Math.PI*(3-Math.sqrt(5));function pP(r){var t,e=1,n=.001,i=1-Math.pow(n,1/300),a=0,s=.6,o=new Map,A=(0,lP.HT)(u),l=(0,AP.Z)("tick","end"),c=hP();r==null&&(r=[]);function u(){h(),l.call("tick",t),e<n&&(A.stop(),l.call("end",t))}function h(g){var v,y=r.length,E;g===void 0&&(g=1);for(var C=0;C<g;++C)for(e+=(a-e)*i,o.forEach(function(I){I(e)}),v=0;v<y;++v)E=r[v],E.fx==null?E.x+=E.vx*=s:(E.x=E.fx,E.vx=0),E.fy==null?E.y+=E.vy*=s:(E.y=E.fy,E.vy=0);return t}function f(){for(var g=0,v=r.length,y;g<v;++g){if(y=r[g],y.index=g,y.fx!=null&&(y.x=y.fx),y.fy!=null&&(y.y=y.fy),isNaN(y.x)||isNaN(y.y)){var E=gP*Math.sqrt(.5+g),C=g*vP;y.x=E*Math.cos(C),y.y=E*Math.sin(C)}(isNaN(y.vx)||isNaN(y.vy))&&(y.vx=y.vy=0)}}function d(g){return g.initialize&&g.initialize(r,c),g}return f(),t={tick:h,restart:function(){return A.restart(u),t},stop:function(){return A.stop(),t},nodes:function(g){return arguments.length?(r=g,f(),o.forEach(d),t):r},alpha:function(g){return arguments.length?(e=+g,t):e},alphaMin:function(g){return arguments.length?(n=+g,t):n},alphaDecay:function(g){return arguments.length?(i=+g,t):+i},alphaTarget:function(g){return arguments.length?(a=+g,t):a},velocityDecay:function(g){return arguments.length?(s=1-g,t):1-s},randomSource:function(g){return arguments.length?(c=g,o.forEach(d),t):c},force:function(g,v){return arguments.length>1?(v==null?o.delete(g):o.set(g,d(v)),t):o.get(g)},find:function(g,v,y){var E=0,C=r.length,I,R,K,W,V;for(y==null?y=1/0:y*=y,E=0;E<C;++E)W=r[E],I=g-W.x,R=v-W.y,K=I*I+R*R,K<y&&(V=W,y=K);return V},on:function(g,v){return arguments.length>1?(l.on(g,v),t):l.on(g)}}}function mP(){var r,t,e,n,i=li(-30),a,s=1,o=1/0,A=.81;function l(f){var d,g=r.length,v=(0,Cy.Z)(r,fP,dP).visitAfter(u);for(n=f,d=0;d<g;++d)t=r[d],v.visit(h)}function c(){if(r){var f,d=r.length,g;for(a=new Array(d),f=0;f<d;++f)g=r[f],a[g.index]=+i(g,f,r)}}function u(f){var d=0,g,v,y=0,E,C,I;if(f.length){for(E=C=I=0;I<4;++I)(g=f[I])&&(v=Math.abs(g.value))&&(d+=g.value,y+=v,E+=v*g.x,C+=v*g.y);f.x=E/y,f.y=C/y}else{g=f,g.x=g.data.x,g.y=g.data.y;do d+=a[g.data.index];while(g=g.next)}f.value=d}function h(f,d,g,v){if(!f.value)return!0;var y=f.x-t.x,E=f.y-t.y,C=v-d,I=y*y+E*E;if(C*C/A<I)return I<o&&(y===0&&(y=SA(e),I+=y*y),E===0&&(E=SA(e),I+=E*E),I<s&&(I=Math.sqrt(s*I)),t.vx+=y*f.value*n/I,t.vy+=E*f.value*n/I),!0;if(f.length||I>=o)return;(f.data!==t||f.next)&&(y===0&&(y=SA(e),I+=y*y),E===0&&(E=SA(e),I+=E*E),I<s&&(I=Math.sqrt(s*I)));do f.data!==t&&(C=a[f.data.index]*n/I,t.vx+=y*C,t.vy+=E*C);while(f=f.next)}return l.initialize=function(f,d){r=f,e=d,c()},l.strength=function(f){return arguments.length?(i=typeof f=="function"?f:li(+f),c(),l):i},l.distanceMin=function(f){return arguments.length?(s=f*f,l):Math.sqrt(s)},l.distanceMax=function(f){return arguments.length?(o=f*f,l):Math.sqrt(o)},l.theta=function(f){return arguments.length?(A=f*f,l):Math.sqrt(A)},l}function yP(r,t){var e,n=1;r==null&&(r=0),t==null&&(t=0);function i(){var a,s=e.length,o,A=0,l=0;for(a=0;a<s;++a)o=e[a],A+=o.x,l+=o.y;for(A=(A/s-r)*n,l=(l/s-t)*n,a=0;a<s;++a)o=e[a],o.x-=A,o.y-=l}return i.initialize=function(a){e=a},i.x=function(a){return arguments.length?(r=+a,i):r},i.y=function(a){return arguments.length?(t=+a,i):t},i.strength=function(a){return arguments.length?(n=+a,i):n},i}function wP(r){return r.x+r.vx}function EP(r){return r.y+r.vy}function BP(r){var t,e,n,i=1,a=1;typeof r!="function"&&(r=li(r==null?1:+r));function s(){for(var l,c=t.length,u,h,f,d,g,v,y=0;y<a;++y)for(u=(0,Cy.Z)(t,wP,EP).visitAfter(o),l=0;l<c;++l)h=t[l],g=e[h.index],v=g*g,f=h.x+h.vx,d=h.y+h.vy,u.visit(E);function E(C,I,R,K,W){var V=C.data,J=C.r,et=g+J;if(V){if(V.index>h.index){var at=f-V.x-V.vx,ct=d-V.y-V.vy,pt=at*at+ct*ct;pt<et*et&&(at===0&&(at=SA(n),pt+=at*at),ct===0&&(ct=SA(n),pt+=ct*ct),pt=(et-(pt=Math.sqrt(pt)))/pt*i,h.vx+=(at*=pt)*(et=(J*=J)/(v+J)),h.vy+=(ct*=pt)*et,V.vx-=at*(et=1-et),V.vy-=ct*et)}return}return I>f+et||K<f-et||R>d+et||W<d-et}}function o(l){if(l.data)return l.r=e[l.data.index];for(var c=l.r=0;c<4;++c)l[c]&&l[c].r>l.r&&(l.r=l[c].r)}function A(){if(t){var l,c=t.length,u;for(e=new Array(c),l=0;l<c;++l)u=t[l],e[u.index]=+r(u,l,t)}}return s.initialize=function(l,c){t=l,n=c,A()},s.iterations=function(l){return arguments.length?(a=+l,s):a},s.strength=function(l){return arguments.length?(i=+l,s):i},s.radius=function(l){return arguments.length?(r=typeof l=="function"?l:li(+l),A(),s):r},s}function bP(r,t,e){var n,i=li(.1),a,s;typeof r!="function"&&(r=li(+r)),t==null&&(t=0),e==null&&(e=0);function o(l){for(var c=0,u=n.length;c<u;++c){var h=n[c],f=h.x-t||1e-6,d=h.y-e||1e-6,g=Math.sqrt(f*f+d*d),v=(s[c]-g)*a[c]*l/g;h.vx+=f*v,h.vy+=d*v}}function A(){if(n){var l,c=n.length;for(a=new Array(c),s=new Array(c),l=0;l<c;++l)s[l]=+r(n[l],l,n),a[l]=isNaN(s[l])?0:+i(n[l],l,n)}}return o.initialize=function(l){n=l,A()},o.strength=function(l){return arguments.length?(i=typeof l=="function"?l:li(+l),A(),o):i},o.radius=function(l){return arguments.length?(r=typeof l=="function"?l:li(+l),A(),o):r},o.x=function(l){return arguments.length?(t=+l,o):t},o.y=function(l){return arguments.length?(e=+l,o):e},o}function xP(r){var t=li(.1),e,n,i;typeof r!="function"&&(r=li(r==null?0:+r));function a(o){for(var A=0,l=e.length,c;A<l;++A)c=e[A],c.vx+=(i[A]-c.x)*n[A]*o}function s(){if(e){var o,A=e.length;for(n=new Array(A),i=new Array(A),o=0;o<A;++o)n[o]=isNaN(i[o]=+r(e[o],o,e))?0:+t(e[o],o,e)}}return a.initialize=function(o){e=o,s()},a.strength=function(o){return arguments.length?(t=typeof o=="function"?o:li(+o),s(),a):t},a.x=function(o){return arguments.length?(r=typeof o=="function"?o:li(+o),s(),a):r},a}function CP(r){var t=li(.1),e,n,i;typeof r!="function"&&(r=li(r==null?0:+r));function a(o){for(var A=0,l=e.length,c;A<l;++A)c=e[A],c.vy+=(i[A]-c.y)*n[A]*o}function s(){if(e){var o,A=e.length;for(n=new Array(A),i=new Array(A),o=0;o<A;++o)n[o]=isNaN(i[o]=+r(e[o],o,e))?0:+t(e[o],o,e)}}return a.initialize=function(o){e=o,s()},a.strength=function(o){return arguments.length?(t=typeof o=="function"?o:li(+o),s(),a):t},a.y=function(o){return arguments.length?(r=typeof o=="function"?o:li(+o),s(),a):r},a}class SP{constructor(t){this.id="d3-force",this.config={inputNodeAttrs:["x","y","vx","vy","fx","fy"],outputNodeAttrs:["x","y","vx","vy"],simulationAttrs:["alpha","alphaMin","alphaDecay","alphaTarget","velocityDecay","randomSource"]},this.forceMap={link:oP,manyBody:mP,center:yP,collide:BP,radial:bP,x:xP,y:CP},this.options={link:{id:e=>e.id},manyBody:{},center:{x:0,y:0}},this.context={options:{},assign:!1,nodes:[],edges:[]},Ci(this.options,t),this.options.forceSimulation&&(this.simulation=this.options.forceSimulation)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericLayout(!0,t,e)})}stop(){this.simulation.stop()}tick(t){return this.simulation.tick(t),this.getResult()}restart(){this.simulation.restart()}setFixedPosition(t,e){const n=this.context.nodes.find(i=>i.id===t);n&&e.forEach((i,a)=>{if(typeof i=="number"||i===null){const s=["fx","fy","fz"][a];n[s]=i}})}getOptions(t){var e,n;const i=Ci({},this.options,t);return i.collide&&((e=i.collide)===null||e===void 0?void 0:e.radius)===void 0&&(i.collide=i.collide||{},i.collide.radius=(n=i.nodeSize)!==null&&n!==void 0?n:10),i.iterations===void 0&&(i.link&&i.link.iterations===void 0&&(i.iterations=i.link.iterations),i.collide&&i.collide.iterations===void 0&&(i.iterations=i.collide.iterations)),this.context.options=i,i}genericLayout(t,e,n){var i;return(0,j.mG)(this,void 0,void 0,function*(){const a=this.getOptions(n),s=e.getAllNodes().map(({id:c,data:u})=>Object.assign(Object.assign({id:c},u),Bl(u.data,this.config.inputNodeAttrs))),o=e.getAllEdges().map(c=>Object.assign({},c));Object.assign(this.context,{assign:t,nodes:s,edges:o,graph:e});const A=new Promise(c=>{this.resolver=c}),l=this.setSimulation(a);return l.nodes(s),(i=l.force("link"))===null||i===void 0||i.links(o),A})}getResult(){const{assign:t,nodes:e,edges:n,graph:i}=this.context,a=e.map(o=>({id:o.id,data:Object.assign(Object.assign({},o.data),Bl(o,this.config.outputNodeAttrs))})),s=n.map(({id:o,source:A,target:l,data:c})=>({id:o,source:typeof A=="object"?A.id:A,target:typeof l=="object"?l.id:l,data:c}));return t&&a.forEach(o=>i.mergeNodeData(o.id,o.data)),{nodes:a,edges:s}}initSimulation(){return pP()}setSimulation(t){const e=this.simulation||this.options.forceSimulation||this.initSimulation();return this.simulation||(this.simulation=e.on("tick",()=>{var n;return(n=t.onTick)===null||n===void 0?void 0:n.call(t,this.getResult())}).on("end",()=>{var n;return(n=this.resolver)===null||n===void 0?void 0:n.call(this,this.getResult())})),AC(e,this.config.simulationAttrs.map(n=>[n,t[n]])),Object.entries(this.forceMap).forEach(([n,i])=>{const a=n;if(t[n]){let s=e.force(a);s||(s=i(),e.force(a,s)),AC(s,Object.entries(t[a]))}else e.force(a,null)}),e}}const AC=(r,t)=>t.reduce((e,[n,i])=>!e[n]||i===void 0?e:e[n].call(r,i),r);var lC=M(92546),MP=M.n(lC);class Ng{constructor(t){this.id="dagre",this.options={},Object.assign(this.options,Ng.defaultOptions,t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericDagreLayout(!1,t,Object.assign(Object.assign({},this.options),e))})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericDagreLayout(!0,t,Object.assign(Object.assign({},this.options),e))})}genericDagreLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const{nodeSize:i}=n,a=new lC.graphlib.Graph;a.setGraph(n),a.setDefaultEdgeLabel(()=>({}));const s=e.getAllNodes(),o=e.getAllEdges();[...s,...o].some(({id:l})=>we(l))&&console.error("Dagre layout only support string id, it will convert number to string."),e.getAllNodes().forEach(l=>{const{id:c}=l,u=Object.assign({},l.data);if(i!==void 0){const[h,f]=Sh(jt(i)?i(l):i);Object.assign(u,{width:h,height:f})}a.setNode(c.toString(),u)}),e.getAllEdges().forEach(({id:l,source:c,target:u})=>{a.setEdge(c.toString(),u.toString(),{id:l})}),MP().layout(a);const A={nodes:[],edges:[]};return a.nodes().forEach(l=>{const c=a.node(l);A.nodes.push({id:l,data:c}),t&&e.mergeNodeData(l,c)}),a.edges().forEach(l=>{const c=a.edge(l),{id:u}=c,h=(0,j._T)(c,["id"]),{v:f,w:d}=l;A.edges.push({id:u,source:f,target:d,data:h}),t&&e.mergeEdgeData(u,h)}),A})}}Ng.defaultOptions={};class Oy{constructor(t){this.id=t.id||0,this.rx=t.rx,this.ry=t.ry,this.fx=0,this.fy=0,this.mass=t.mass,this.degree=t.degree,this.g=t.g||0}distanceTo(t){const e=this.rx-t.rx,n=this.ry-t.ry;return Math.hypot(e,n)}setPos(t,e){this.rx=t,this.ry=e}resetForce(){this.fx=0,this.fy=0}addForce(t){const e=t.rx-this.rx,n=t.ry-this.ry;let i=Math.hypot(e,n);i=i<1e-4?1e-4:i;const a=this.g*(this.degree+1)*(t.degree+1)/i;this.fx+=a*e/i,this.fy+=a*n/i}in(t){return t.contains(this.rx,this.ry)}add(t){const e=this.mass+t.mass,n=(this.rx*this.mass+t.rx*t.mass)/e,i=(this.ry*this.mass+t.ry*t.mass)/e,a=this.degree+t.degree,s={rx:n,ry:i,mass:e,degree:a};return new Oy(s)}}class Dc{constructor(t){this.xmid=t.xmid,this.ymid=t.ymid,this.length=t.length,this.massCenter=t.massCenter||[0,0],this.mass=t.mass||1}getLength(){return this.length}contains(t,e){const n=this.length/2;return t<=this.xmid+n&&t>=this.xmid-n&&e<=this.ymid+n&&e>=this.ymid-n}NW(){const t=this.xmid-this.length/4,e=this.ymid+this.length/4,n=this.length/2,i={xmid:t,ymid:e,length:n};return new Dc(i)}NE(){const t=this.xmid+this.length/4,e=this.ymid+this.length/4,n=this.length/2,i={xmid:t,ymid:e,length:n};return new Dc(i)}SW(){const t=this.xmid-this.length/4,e=this.ymid-this.length/4,n=this.length/2,i={xmid:t,ymid:e,length:n};return new Dc(i)}SE(){const t=this.xmid+this.length/4,e=this.ymid-this.length/4,n=this.length/2,i={xmid:t,ymid:e,length:n};return new Dc(i)}}class Rc{constructor(t){this.body=null,this.quad=null,this.NW=null,this.NE=null,this.SW=null,this.SE=null,this.theta=.5,t!=null&&(this.quad=t)}insert(t){if(this.body==null){this.body=t;return}this._isExternal()?(this.quad&&(this.NW=new Rc(this.quad.NW()),this.NE=new Rc(this.quad.NE()),this.SW=new Rc(this.quad.SW()),this.SE=new Rc(this.quad.SE())),this._putBody(this.body),this._putBody(t),this.body=this.body.add(t)):(this.body=this.body.add(t),this._putBody(t))}_putBody(t){this.quad&&(t.in(this.quad.NW())&&this.NW?this.NW.insert(t):t.in(this.quad.NE())&&this.NE?this.NE.insert(t):t.in(this.quad.SW())&&this.SW?this.SW.insert(t):t.in(this.quad.SE())&&this.SE&&this.SE.insert(t))}_isExternal(){return this.NW==null&&this.NE==null&&this.SW==null&&this.SE==null}updateForce(t){if(!(this.body==null||t===this.body))if(this._isExternal())t.addForce(this.body);else{const e=this.quad?this.quad.getLength():0,n=this.body.distanceTo(t);e/n<this.theta?t.addForce(this.body):(this.NW&&this.NW.updateForce(t),this.NE&&this.NE.updateForce(t),this.SW&&this.SW.updateForce(t),this.SE&&this.SE.updateForce(t))}}}const TP={center:[0,0],width:300,height:300,kr:5,kg:1,mode:"normal",preventOverlap:!1,dissuadeHubs:!1,maxIteration:0,ks:.1,ksmax:10,tao:.1};class FP{constructor(t={}){this.options=t,this.id="forceAtlas2",this.options=Object.assign(Object.assign({},TP),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericForceAtlas2Layout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericForceAtlas2Layout(!0,t,e)})}genericForceAtlas2Layout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=e.getAllEdges(),a=e.getAllNodes(),s=this.formatOptions(n,a.length),{width:o,height:A,prune:l,maxIteration:c,nodeSize:u,center:h}=s;if(!(a!=null&&a.length)||a.length===1)return Sl(e,t,h);const f=a.map(y=>Qa(y,[o,A])),d=i.filter(y=>{const{source:E,target:C}=y;return E!==C}),g=new Gr({nodes:f,edges:d}),v=this.getSizes(g,u);if(this.run(g,e,c,v,t,s),l){for(let E=0;E<d.length;E+=1){const{source:C,target:I}=d[E],R=g.getDegree(C),K=g.getDegree(C);if(R<=1){const W=g.getNode(I);g.mergeNodeData(C,{x:W.data.x,y:W.data.y})}else if(K<=1){const W=g.getNode(C);g.mergeNodeData(I,{x:W.data.x,y:W.data.y})}}const y=Object.assign(Object.assign({},s),{prune:!1,barnesHut:!1});this.run(g,e,100,v,t,y)}return{nodes:f,edges:i}})}getSizes(t,e){const n=t.getAllNodes(),i={};for(let a=0;a<n.length;a+=1){const s=n[a];i[s.id]=By(e,void 0)(s)}return i}formatOptions(t={},e){const n=Object.assign(Object.assign({},this.options),t),{center:i,width:a,height:s,barnesHut:o,prune:A,maxIteration:l,kr:c,kg:u}=n;return n.width=!a&&typeof window!="undefined"?window.innerWidth:a,n.height=!s&&typeof window!="undefined"?window.innerHeight:s,n.center=i||[n.width/2,n.height/2],o===void 0&&e>250&&(n.barnesHut=!0),A===void 0&&e>100&&(n.prune=!0),l===0&&!A?(n.maxIteration=250,e<=200&&e>100?n.maxIteration=1e3:e>200&&(n.maxIteration=1200)):l===0&&A&&(n.maxIteration=100,e<=200&&e>100?n.maxIteration=500:e>200&&(n.maxIteration=950)),c||(n.kr=50,e>100&&e<=500?n.kr=20:e>500&&(n.kr=1)),u||(n.kg=20,e>100&&e<=500?n.kg=10:e>500&&(n.kg=1)),n}run(t,e,n,i,a,s){const{kr:o,barnesHut:A,onTick:l}=s,c=t.getAllNodes();let u=0,h=n;const f={},d={},g={};for(let v=0;v<c.length;v+=1){const{data:y,id:E}=c[v];if(f[E]=[0,0],A){const C={id:v,rx:y.x,ry:y.y,mass:1,g:o,degree:t.getDegree(E)};g[E]=new Oy(C)}}for(;h>0;)u=this.oneStep(t,{iter:h,preventOverlapIters:50,krPrime:100,sg:u,forces:f,preForces:d,bodies:g,sizes:i},s),h--,l==null||l({nodes:c,edges:e.getAllEdges()});return t}oneStep(t,e,n){const{iter:i,preventOverlapIters:a,krPrime:s,sg:o,preForces:A,bodies:l,sizes:c}=e;let{forces:u}=e;const{preventOverlap:h,barnesHut:f}=n,d=t.getAllNodes();for(let g=0;g<d.length;g+=1){const{id:v}=d[g];A[v]=[...u[v]],u[v]=[0,0]}return u=this.getAttrForces(t,i,a,c,u,n),f&&(h&&i>a||!h)?u=this.getOptRepGraForces(t,u,l,n):u=this.getRepGraForces(t,i,a,u,s,c,n),this.updatePos(t,u,A,o,n)}getAttrForces(t,e,n,i,a,s){const{preventOverlap:o,dissuadeHubs:A,mode:l,prune:c}=s,u=t.getAllEdges();for(let h=0;h<u.length;h+=1){const{source:f,target:d}=u[h],g=t.getNode(f),v=t.getNode(d),y=t.getDegree(f),E=t.getDegree(d);if(c&&(y<=1||E<=1))continue;const C=[v.data.x-g.data.x,v.data.y-g.data.y];let I=Math.hypot(C[0],C[1]);I=I<1e-4?1e-4:I,C[0]=C[0]/I,C[1]=C[1]/I,o&&e<n&&(I=I-i[f]-i[d]);let R=I,K=R;l==="linlog"&&(R=Math.log(1+I),K=R),A&&(R=I/y,K=I/E),o&&e<n&&I<=0?(R=0,K=0):o&&e<n&&I>0&&(R=I,K=I),a[f][0]+=R*C[0],a[d][0]-=K*C[0],a[f][1]+=R*C[1],a[d][1]-=K*C[1]}return a}getOptRepGraForces(t,e,n,i){const{kg:a,center:s,prune:o}=i,A=t.getAllNodes(),l=A.length;let c=9e10,u=-9e10,h=9e10,f=-9e10;for(let E=0;E<l;E+=1){const{id:C,data:I}=A[E];o&&t.getDegree(C)<=1||(n[C].setPos(I.x,I.y),I.x>=u&&(u=I.x),I.x<=c&&(c=I.x),I.y>=f&&(f=I.y),I.y<=h&&(h=I.y))}const d=Math.max(u-c,f-h),g={xmid:(u+c)/2,ymid:(f+h)/2,length:d,massCenter:s,mass:l},v=new Dc(g),y=new Rc(v);for(let E=0;E<l;E+=1){const{id:C}=A[E];o&&t.getDegree(C)<=1||n[C].in(v)&&y.insert(n[C])}for(let E=0;E<l;E+=1){const{id:C,data:I}=A[E],R=t.getDegree(C);if(o&&R<=1)continue;n[C].resetForce(),y.updateForce(n[C]),e[C][0]-=n[C].fx,e[C][1]-=n[C].fy;const K=[I.x-s[0],I.y-s[1]];let W=Math.hypot(K[0],K[1]);W=W<1e-4?1e-4:W,K[0]=K[0]/W,K[1]=K[1]/W;const V=a*(R+1);e[C][0]-=V*K[0],e[C][1]-=V*K[1]}return e}getRepGraForces(t,e,n,i,a,s,o){const{preventOverlap:A,kr:l,kg:c,center:u,prune:h}=o,f=t.getAllNodes(),d=f.length;for(let g=0;g<d;g+=1){const v=f[g],y=t.getDegree(v.id);for(let R=g+1;R<d;R+=1){const K=f[R],W=t.getDegree(K.id);if(h&&(y<=1||W<=1))continue;const V=[K.data.x-v.data.x,K.data.y-v.data.y];let J=Math.hypot(V[0],V[1]);J=J<1e-4?1e-4:J,V[0]=V[0]/J,V[1]=V[1]/J,A&&e<n&&(J=J-s[v.id]-s[K.id]);let et=l*(y+1)*(W+1)/J;A&&e<n&&J<0?et=a*(y+1)*(W+1):A&&e<n&&J===0?et=0:A&&e<n&&J>0&&(et=l*(y+1)*(W+1)/J),i[v.id][0]-=et*V[0],i[K.id][0]+=et*V[0],i[v.id][1]-=et*V[1],i[K.id][1]+=et*V[1]}const E=[v.data.x-u[0],v.data.y-u[1]],C=Math.hypot(E[0],E[1]);E[0]=E[0]/C,E[1]=E[1]/C;const I=c*(y+1);i[v.id][0]-=I*E[0],i[v.id][1]-=I*E[1]}return i}updatePos(t,e,n,i,a){const{ks:s,tao:o,prune:A,ksmax:l}=a,c=t.getAllNodes(),u=c.length,h=[],f=[];let d=0,g=0,v=i;for(let E=0;E<u;E+=1){const{id:C}=c[E],I=t.getDegree(C);if(A&&I<=1)continue;const R=[e[C][0]-n[C][0],e[C][1]-n[C][1]],K=Math.hypot(R[0],R[1]),W=[e[C][0]+n[C][0],e[C][1]+n[C][1]],V=Math.hypot(W[0],W[1]);h[E]=K,f[E]=V/2,d+=(I+1)*h[E],g+=(I+1)*f[E]}const y=v;v=o*g/d,y!==0&&(v=v>1.5*y?1.5*y:v);for(let E=0;E<u;E+=1){const{id:C,data:I}=c[E],R=t.getDegree(C);if(A&&R<=1||we(I.fx)&&we(I.fy))continue;let K=s*v/(1+v*Math.sqrt(h[E])),W=Math.hypot(e[C][0],e[C][1]);W=W<1e-4?1e-4:W;const V=l/W;K=K>V?V:K;const J=K*e[C][0],et=K*e[C][1];t.mergeNodeData(C,{x:I.x+J,y:I.y+et})}return v}}const OP={maxIteration:1e3,gravity:10,speed:5,clustering:!1,clusterGravity:10,width:300,height:300,nodeClusterBy:"cluster"},IP=800;class LP{constructor(t={}){this.options=t,this.id="fruchterman",this.timeInterval=0,this.running=!1,this.options=Object.assign(Object.assign({},OP),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericFruchtermanLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericFruchtermanLayout(!0,t,e)})}stop(){this.timeInterval&&typeof window!="undefined"&&window.clearInterval(this.timeInterval),this.running=!1}tick(t=this.options.maxIteration||1){if(this.lastResult)return this.lastResult;for(let n=0;n<t;n++)this.runOneStep(this.lastGraph,this.lastClusterMap,this.lastOptions);const e={nodes:this.lastLayoutNodes,edges:this.lastLayoutEdges};return this.lastAssign&&e.nodes.forEach(n=>this.lastGraph.mergeNodeData(n.id,{x:n.data.x,y:n.data.y,z:this.options.dimensions===3?n.data.z:void 0})),e}genericFruchtermanLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){if(this.running)return;const i=this.formatOptions(n),{dimensions:a,width:s,height:o,center:A,clustering:l,nodeClusterBy:c,maxIteration:u,onTick:h}=i,f=e.getAllNodes(),d=e.getAllEdges();if(!(f!=null&&f.length)){const C={nodes:[],edges:d};return this.lastResult=C,C}if(f.length===1){t&&e.mergeNodeData(f[0].id,{x:A[0],y:A[1],z:a===3?A[2]:void 0});const C={nodes:[Object.assign(Object.assign({},f[0]),{data:Object.assign(Object.assign({},f[0].data),{x:A[0],y:A[1],z:a===3?A[2]:void 0})})],edges:d};return this.lastResult=C,C}const g=f.map(C=>Qa(C,[s,o])),v=new Gr({nodes:g,edges:d}),y={};if(l&&g.forEach(C=>{const I=C.data[c];y[I]||(y[I]={name:I,cx:0,cy:0,count:0})}),this.lastLayoutNodes=g,this.lastLayoutEdges=d,this.lastAssign=t,this.lastGraph=v,this.lastOptions=i,this.lastClusterMap=y,typeof window=="undefined")return;let E=0;return new Promise(C=>{this.timeInterval=window.setInterval(()=>{if(!this.running){C({nodes:g,edges:d});return}this.runOneStep(v,y,i),t&&g.forEach(({id:I,data:R})=>e.mergeNodeData(I,{x:R.x,y:R.y,z:a===3?R.z:void 0})),h==null||h({nodes:g,edges:d}),E++,E>=u&&(window.clearInterval(this.timeInterval),C({nodes:g,edges:d}))},0),this.running=!0})})}formatOptions(t={}){const e=Object.assign(Object.assign({},this.options),t),{clustering:n,nodeClusterBy:i}=e,{center:a,width:s,height:o}=e;return e.width=!s&&typeof window!="undefined"?window.innerWidth:s,e.height=!o&&typeof window!="undefined"?window.innerHeight:o,e.center=a||[e.width/2,e.height/2],e.clustering=n&&!!i,e}runOneStep(t,e,n){const{dimensions:i,height:a,width:s,gravity:o,center:A,speed:l,clustering:c,nodeClusterBy:u,clusterGravity:h}=n,f=a*s,d=Math.sqrt(f)/10,g=t.getAllNodes(),v=f/(g.length+1),y=Math.sqrt(v),E={};if(this.applyCalculate(t,E,y,v),c){for(const I in e)e[I].cx=0,e[I].cy=0,e[I].count=0;g.forEach(I=>{const{data:R}=I,K=e[R[u]];we(R.x)&&(K.cx+=R.x),we(R.y)&&(K.cy+=R.y),K.count++});for(const I in e)e[I].cx/=e[I].count,e[I].cy/=e[I].count;const C=h||o;g.forEach((I,R)=>{const{id:K,data:W}=I;if(!we(W.x)||!we(W.y))return;const V=e[W[u]],J=Math.sqrt((W.x-V.cx)*(W.x-V.cx)+(W.y-V.cy)*(W.y-V.cy)),et=y*C;E[K].x-=et*(W.x-V.cx)/J,E[K].y-=et*(W.y-V.cy)/J})}g.forEach((C,I)=>{const{id:R,data:K}=C;if(!we(K.x)||!we(K.y))return;const W=.01*y*o;E[R].x-=W*(K.x-A[0]),E[R].y-=W*(K.y-A[1]),i===3&&(E[R].z-=W*(K.z-A[2]))}),g.forEach((C,I)=>{const{id:R,data:K}=C;if(we(K.fx)&&we(K.fy)){K.x=K.fx,K.y=K.fy,i===3&&(K.z=K.fz);return}if(!we(K.x)||!we(K.y))return;const W=Math.sqrt(E[R].x*E[R].x+E[R].y*E[R].y+(i===3?E[R].z*E[R].z:0));if(W>0){const V=Math.min(d*(l/IP),W);t.mergeNodeData(R,{x:K.x+E[R].x/W*V,y:K.y+E[R].y/W*V,z:i===3?K.z+E[R].z/W*V:void 0})}})}applyCalculate(t,e,n,i){this.calRepulsive(t,e,i),this.calAttractive(t,e,n)}calRepulsive(t,e,n){const i=t.getAllNodes();i.forEach(({data:a,id:s},o)=>{e[s]={x:0,y:0,z:0},i.forEach(({data:A,id:l},c)=>{if(o<=c||!we(a.x)||!we(A.x)||!we(a.y)||!we(A.y))return;let u=a.x-A.x,h=a.y-A.y,f=this.options.dimensions===3?a.z-A.z:0,d=u*u+h*h+f*f;d===0&&(d=1,u=.01,h=.01,f=.01);const g=n/d,v=u*g,y=h*g,E=f*g;e[s].x+=v,e[s].y+=y,e[l].x-=v,e[l].y-=y,this.options.dimensions===3&&(e[s].z+=E,e[l].z-=E)})})}calAttractive(t,e,n){t.getAllEdges().forEach(a=>{const{source:s,target:o}=a;if(!s||!o||s===o)return;const{data:A}=t.getNode(s),{data:l}=t.getNode(o);if(!we(l.x)||!we(A.x)||!we(l.y)||!we(A.y))return;const c=l.x-A.x,u=l.y-A.y,h=this.options.dimensions===3?l.z-A.z:0,f=Math.sqrt(c*c+u*u+h*h)/n,d=c*f,g=u*f,v=h*f;e[s].x+=d,e[s].y+=g,e[o].x-=d,e[o].y-=g,this.options.dimensions===3&&(e[s].z+=v,e[o].z-=v)})}}const NP={begin:[0,0],preventOverlap:!0,preventOverlapPadding:10,condense:!1,rows:void 0,cols:void 0,position:void 0,sortBy:"degree",nodeSize:30,width:300,height:300};class kP{constructor(t={}){this.options=t,this.id="grid",this.options=Object.assign(Object.assign({},NP),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericGridLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericGridLayout(!0,t,e)})}genericGridLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},this.options),n),{begin:a=[0,0],condense:s,preventOverlapPadding:o,preventOverlap:A,rows:l,cols:c,nodeSpacing:u,nodeSize:h,width:f,height:d,position:g}=i;let{sortBy:v}=i;const y=e.getAllNodes(),E=e.getAllEdges(),C=y==null?void 0:y.length;if(!C||C===1)return Sl(e,t,a);const I=y.map(Ct=>Qa(Ct));v!=="id"&&(!gn(v)||I[0].data[v]===void 0)&&(v="degree"),v==="degree"?I.sort((Ct,Ht)=>e.getDegree(Ht.id,"both")-e.getDegree(Ct.id,"both")):v==="id"?I.sort((Ct,Ht)=>we(Ht.id)&&we(Ct.id)?Ht.id-Ct.id:`${Ct.id}`.localeCompare(`${Ht.id}`)):I.sort((Ct,Ht)=>Ht.data[v]-Ct.data[v]);const R=!f&&typeof window!="undefined"?window.innerWidth:f,K=!d&&typeof window!="undefined"?window.innerHeight:d,W=C,V={rows:l,cols:c};if(l!=null&&c!=null)V.rows=l,V.cols=c;else if(l!=null&&c==null)V.rows=l,V.cols=Math.ceil(W/V.rows);else if(l==null&&c!=null)V.cols=c,V.rows=Math.ceil(W/V.cols);else{const Ct=Math.sqrt(W*K/R);V.rows=Math.round(Ct),V.cols=Math.round(R/K*Ct)}if(V.rows=Math.max(V.rows,1),V.cols=Math.max(V.cols,1),V.cols*V.rows>W){const Ct=kg(V),Ht=Qg(V);(Ct-1)*Ht>=W?kg(V,Ct-1):(Ht-1)*Ct>=W&&Qg(V,Ht-1)}else for(;V.cols*V.rows<W;){const Ct=kg(V),Ht=Qg(V);(Ht+1)*Ct>=W?Qg(V,Ht+1):kg(V,Ct+1)}let J=s?0:R/V.cols,et=s?0:K/V.rows;if(A||u){const Ct=Cl(10,u),Ht=Ey(30,h,!1);I.forEach(Rt=>{(!Rt.data.x||!Rt.data.y)&&(Rt.data.x=0,Rt.data.y=0);const St=e.getNode(Rt.id),[Ot,Gt]=Sh(Ht(St)||30),qt=Ct!==void 0?Ct(Rt):o,ae=Ot+qt,ue=Gt+qt;J=Math.max(J,ae),et=Math.max(et,ue)})}const at={},ct={row:0,col:0},pt={};for(let Ct=0;Ct<I.length;Ct++){const Ht=I[Ct];let Rt;if(g&&(Rt=g(e.getNode(Ht.id))),Rt&&(Rt.row!==void 0||Rt.col!==void 0)){const St={row:Rt.row,col:Rt.col};if(St.col===void 0)for(St.col=0;Iy(at,St);)St.col++;else if(St.row===void 0)for(St.row=0;Iy(at,St);)St.row++;pt[Ht.id]=St,cC(at,St)}QP(Ht,a,J,et,pt,V,ct,at)}const wt={nodes:I,edges:E};return t&&I.forEach(Ct=>{e.mergeNodeData(Ct.id,{x:Ct.data.x,y:Ct.data.y})}),wt})}}const kg=(r,t)=>{let e;const n=r.rows||5,i=r.cols||5;return t==null?e=Math.min(n,i):Math.min(n,i)===r.rows?r.rows=t:r.cols=t,e},Qg=(r,t)=>{let e;const n=r.rows||5,i=r.cols||5;return t==null?e=Math.max(n,i):Math.max(n,i)===r.rows?r.rows=t:r.cols=t,e},Iy=(r,t)=>r[`c-${t.row}-${t.col}`]||!1,cC=(r,t)=>r[`c-${t.row}-${t.col}`]=!0,uC=(r,t)=>{const e=r.cols||5;t.col++,t.col>=e&&(t.col=0,t.row++)},QP=(r,t,e,n,i,a,s,o)=>{let A,l;const c=i[r.id];if(c)A=c.col*e+e/2+t[0],l=c.row*n+n/2+t[1];else{for(;Iy(o,s);)uC(a,s);A=s.col*e+e/2+t[0],l=s.row*n+n/2+t[1],cC(o,s),uC(a,s)}r.data.x=A,r.data.y=l},UP=(r,t,e)=>{try{const n=CA.mul(CA.pow(t,2),-.5),i=n.mean("row"),a=n.mean("column"),s=n.mean();n.add(s).subRowVector(i).subColumnVector(a);const o=new tC(n),A=CA.sqrt(o.diagonalMatrix).diagonal();return o.leftSingularVectors.toJSON().map(l=>CA.mul([l],[A]).toJSON()[0].splice(0,r))}catch(n){const i=[];for(let a=0;a<t.length;a++){const s=Math.random()*e,o=Math.random()*e;i.push([s,o])}return i}},PP=800,DP={iterations:10,height:10,width:10,speed:100,gravity:10,k:5},RP=(r,t)=>{const e=Object.assign(Object.assign({},DP),t),{positions:n,iterations:i,width:a,k:s,speed:o=100,strictRadial:A,focusIdx:l,radii:c=[],nodeSizeFunc:u}=e,h=r.getAllNodes(),f=[],d=a/10;for(let g=0;g<i;g++)n.forEach((v,y)=>{f[y]={x:0,y:0}}),_P(h,n,f,s,c,u),HP(n,f,o,A,l,d,a,c);return n},_P=(r,t,e,n,i,a)=>{t.forEach((s,o)=>{e[o]={x:0,y:0},t.forEach((A,l)=>{if(o===l||i[o]!==i[l])return;let c=s.x-A.x,u=s.y-A.y,h=Math.sqrt(c*c+u*u);if(h===0){h=1;const f=o>l?1:-1;c=.01*f,u=.01*f}if(h<a(r[o])/2+a(r[l])/2){const f=n*n/h;e[o].x+=c/h*f,e[o].y+=u/h*f}})})},HP=(r,t,e,n,i,a,s,o)=>{const A=a||s/10;return n&&t.forEach((l,c)=>{const u=r[c].x-r[i].x,h=r[c].y-r[i].y,f=Math.sqrt(u*u+h*h);let d=h/f,g=-u/f;const v=Math.sqrt(l.x*l.x+l.y*l.y);let y=Math.acos((d*l.x+g*l.y)/v);y>Math.PI/2&&(y-=Math.PI/2,d*=-1,g*=-1);const E=Math.cos(y)*v;l.x=d*E,l.y=g*E}),r.forEach((l,c)=>{if(c===i)return;const u=Math.sqrt(t[c].x*t[c].x+t[c].y*t[c].y);if(u>0&&c!==i){const h=Math.min(A*(e/PP),u);if(l.x+=t[c].x/u*h,l.y+=t[c].y/u*h,n){let f=l.x-r[i].x,d=l.y-r[i].y;const g=Math.sqrt(f*f+d*d);f=f/g*o[c],d=d/g*o[c],l.x=r[i].x+f,l.y=r[i].y+d}}}),r},GP={maxIteration:1e3,focusNode:null,unitRadius:null,linkDistance:50,preventOverlap:!1,strictRadial:!0,maxPreventOverlapIteration:200,sortStrength:10};class KP{constructor(t={}){this.options=t,this.id="radial",this.options=Object.assign(Object.assign({},GP),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericRadialLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericRadialLayout(!0,t,e)})}genericRadialLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},this.options),n),{width:a,height:s,center:o,focusNode:A,unitRadius:l,nodeSize:c,nodeSpacing:u,strictRadial:h,preventOverlap:f,maxPreventOverlapIteration:d,sortBy:g,linkDistance:v=50,sortStrength:y=10,maxIteration:E=1e3}=i,C=e.getAllNodes(),I=e.getAllEdges(),R=!a&&typeof window!="undefined"?window.innerWidth:a,K=!s&&typeof window!="undefined"?window.innerHeight:s,W=o||[R/2,K/2];if(!(C!=null&&C.length)||C.length===1)return Sl(e,t,W);let V=C[0];if(gn(A)){for(let Re=0;Re<C.length;Re++)if(C[Re].id===A){V=C[Re];break}}else V=A||C[0];const J=WP(C,V.id),et=nC({nodes:C,edges:I},!1),at=eC(et),ct=jP(at,J);ZP(at,J,ct+1);const pt=at[J];let wt=R-W[0]>W[0]?W[0]:R-W[0],Ct=K-W[1]>W[1]?W[1]:K-W[1];wt===0&&(wt=R/2),Ct===0&&(Ct=K/2);const Ht=Math.min(wt,Ct),Rt=Math.max(...pt),St=[],Ot=l||Ht/Rt;pt.forEach((Re,nn)=>{St[nn]=Re*Ot});const Gt=zP(C,at,v,St,Ot,g,y),qt=VP(Gt),ae=UP(v,Gt,v);let ue=ae.map(([Re,nn])=>({x:(isNaN(Re)?Math.random()*v:Re)-ae[J][0],y:(isNaN(nn)?Math.random()*v:nn)-ae[J][1]}));this.run(E,ue,qt,Gt,St,J);let pe;if(f){pe=By(c,u);const Re={nodes:C,nodeSizeFunc:pe,positions:ue,radii:St,height:K,width:R,strictRadial:!!h,focusIdx:J,iterations:d||200,k:ue.length/4.5};ue=RP(e,Re)}const Ce=[];return ue.forEach((Re,nn)=>{const mn=Qa(C[nn]);mn.data.x=Re.x+W[0],mn.data.y=Re.y+W[1],Ce.push(mn)}),t&&Ce.forEach(Re=>e.mergeNodeData(Re.id,{x:Re.data.x,y:Re.data.y})),{nodes:Ce,edges:I}})}run(t,e,n,i,a,s){for(let o=0;o<=t;o++){const A=o/t;this.oneIteration(A,e,a,i,n,s)}}oneIteration(t,e,n,i,a,s){const o=1-t;e.forEach((A,l)=>{const c=rC(A,{x:0,y:0}),u=c===0?0:1/c;if(l===s)return;let h=0,f=0,d=0;e.forEach((v,y)=>{if(l===y)return;const E=rC(A,v),C=E===0?0:1/E,I=i[y][l];d+=a[l][y],h+=a[l][y]*(v.x+I*(A.x-v.x)*C),f+=a[l][y]*(v.y+I*(A.y-v.y)*C)});const g=n[l]===0?0:1/n[l];d*=o,d+=t*g*g,h*=o,h+=t*g*A.x*u,A.x=h/d,f*=o,f+=t*g*A.y*u,A.y=f/d})}}const zP=(r,t,e,n,i,a,s)=>{if(!r)return[];const o=[];if(t){const A={};t.forEach((l,c)=>{const u=[];l.forEach((h,f)=>{var d,g;if(c===f)u.push(0);else if(n[c]===n[f])if(a==="data")u.push(h*(Math.abs(c-f)*s)/(n[c]/i));else if(a){let v,y;if(A[r[c].id])v=A[r[c].id];else{const E=(a==="id"?r[c].id:(d=r[c].data)===null||d===void 0?void 0:d[a])||0;gn(E)?v=E.charCodeAt(0):v=E,A[r[c].id]=v}if(A[r[f].id])y=A[r[f].id];else{const E=(a==="id"?r[f].id:(g=r[f].data)===null||g===void 0?void 0:g[a])||0;gn(E)?y=E.charCodeAt(0):y=E,A[r[f].id]=y}u.push(h*(Math.abs(v-y)*s)/(n[c]/i))}else u.push(h*e/(n[c]/i));else{const v=(e+i)/2;u.push(h*v)}}),o.push(u)})}return o},VP=r=>{const t=r.length,e=r[0].length,n=[];for(let i=0;i<t;i++){const a=[];for(let s=0;s<e;s++)r[i][s]!==0?a.push(1/(r[i][s]*r[i][s])):a.push(0);n.push(a)}return n},WP=(r,t)=>{let e=-1;return r.forEach((n,i)=>{n.id===t&&(e=i)}),Math.max(e,0)},ZP=(r,t,e)=>{const n=r.length;for(let i=0;i<n;i++)if(r[t][i]===1/0){r[t][i]=e,r[i][t]=e;for(let a=0;a<n;a++)r[i][a]!==1/0&&r[t][a]===1/0&&(r[t][a]=e+r[i][a],r[a][t]=e+r[i][a])}for(let i=0;i<n;i++)if(i!==t){for(let a=0;a<n;a++)if(r[i][a]===1/0){let s=Math.abs(r[t][i]-r[t][a]);s=s===0?1:s,r[i][a]=s}}},jP=(r,t)=>{let e=0;for(let n=0;n<r[t].length;n++)r[t][n]!==1/0&&(e=r[t][n]>e?r[t][n]:e);return e},YP={center:[0,0],width:300,height:300};class XP{constructor(t={}){this.options=t,this.id="random",this.options=Object.assign(Object.assign({},YP),t)}execute(t,e){return(0,j.mG)(this,void 0,void 0,function*(){return this.genericRandomLayout(!1,t,e)})}assign(t,e){return(0,j.mG)(this,void 0,void 0,function*(){yield this.genericRandomLayout(!0,t,e)})}genericRandomLayout(t,e,n){return(0,j.mG)(this,void 0,void 0,function*(){const i=Object.assign(Object.assign({},this.options),n),{center:a,width:s,height:o}=i,A=e.getAllNodes(),l=.9,c=!s&&typeof window!="undefined"?window.innerWidth:s,u=!o&&typeof window!="undefined"?window.innerHeight:o,h=a||[c/2,u/2],f=[];return A&&A.forEach(g=>{f.push({id:g.id,data:{x:(Math.random()-.5)*l*c+h[0],y:(Math.random()-.5)*l*u+h[1]}})}),t&&f.forEach(g=>e.mergeNodeData(g.id,{x:g.data.x,y:g.data.y})),{nodes:f,edges:e.getAllEdges()}})}}function JP(r){var t,e,n,i=r||1;function a(o,A){++t>i&&(n=e,s(1),++t),e[o]=A}function s(o){t=0,e=Object.create(null),o||(n=Object.create(null))}return s(),{clear:s,has:function(o){return e[o]!==void 0||n[o]!==void 0},get:function(o){var A=e[o];if(A!==void 0)return A;if((A=n[o])!==void 0)return a(o,A),A},set:function(o,A){e[o]!==void 0?e[o]=A:a(o,A)}}}var Ly=new Map;function Ny(r,t,e){e===void 0&&(e=128);var n=function(){for(var i=[],a=0;a<arguments.length;a++)i[a]=arguments[a];var s=t?t.apply(this,i):i[0];Ly.has(r)||Ly.set(r,JP(e));var o=Ly.get(r);if(o.has(s))return o.get(s);var A=r.apply(this,i);return o.set(s,A),A};return n}var qP=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Ug extends xg{constructor(){super(...arguments),this.id="fishbone"}getRoot(){const t=this.context.model.getRootsData();if(!(ro(t)||t.length>2))return t[0]}formatSize(t){const e=typeof t=="function"?t:()=>t;return n=>ka(e(n))}doLayout(t,e){const{hGap:n,getRibSep:i,vGap:a,nodeSize:s,height:o}=e,{model:A}=this.context,l=this.formatSize(s);let c=l(t)[0]+i(t);const u=(C,I=0)=>{var R;return I+=n*((C.children||[]).length+1),(R=C.children)===null||R===void 0||R.forEach(K=>{var W;(W=A.getNodeLikeDatum(K).children)===null||W===void 0||W.forEach(J=>{const et=A.getNodeLikeDatum(J);I=u(et,I)})}),I},h=C=>{if(C.depth===1)return c;const I=A.getParentData(C.id,"tree");if(_c(C)){const R=A.getParentData(I.id,"tree"),K=g(C)-g(R);return h(I)+K*n/a}else{const R=(I.children||[]).indexOf(C.id),K=A.getNodeData((I.children||[]).slice(R));return f(I)-K.reduce((W,V)=>W+u(V),0)-l(I)[0]/2}},f=Ny(C=>{if(ky(C))return l(C)[0]/2;const I=A.getParentData(C.id,"tree");if(_c(C))return h(C)+u(C)+l(C)[0]/2;{const R=g(C)-g(I),K=n/a;return h(C)+R*K}},C=>C.id),d=C=>g(A.getParentData(C,"tree")),g=Ny(C=>{if(ky(C))return o/2;if(_c(C)){const I=A.getParentData(C.id,"tree"),R=I.children.indexOf(C.id);if(R===0)return d(I.id)+a;const K=A.getNodeLikeDatum(I.children[R-1]);if(ro(K.children))return g(K)+a;const W=A.getDescendantsData(K.id);return Math.max(...W.map(V=>_c(V)?d(V.id):g(V)))+a}else{if(ro(C.children))return d(C.id)+a;const I=A.getNodeLikeDatum(C.children.slice(-1)[0]);if(ro(I.children))return g(I)+a;const R=A.getDescendantsData(C.id).slice(-1)[0];return(_c(R)?d(R.id):g(R))+a}},C=>C.id);let v=0;const y={nodes:[],edges:[]},E=C=>{var I;(I=C.children)===null||I===void 0||I.forEach(J=>E(A.getNodeLikeDatum(J)));const R=g(C),K=f(C);if(y.nodes.push({id:C.id,x:K,y:R}),ky(C))return;const W=A.getRelatedEdgesData(C.id,"in")[0],V=[h(C),_c(C)?R:d(C.id)];y.edges.push({id:Pt(W),controlPoints:[V],relatedNodeId:C.id}),v=Math.max(v,K+i(C)),C.depth===1&&(c=v)};return E(t),y}placeAlterative(t,e){const n=(e.children||[]).filter((o,A)=>A%2!==0);if(n.length===0)return t;const{model:i}=this.context,a=t.nodes.find(o=>o.id===e.id).y,s=o=>{const A=i.getAncestorsData(o,"tree");if(ro(A))return!1;const l=A.length===1?o:A[A.length-2].id;return n.includes(l)};t.nodes.forEach(o=>{s(o.id)&&(o.y=2*a-o.y)}),t.edges.forEach(o=>{s(o.relatedNodeId)&&(o.controlPoints=o.controlPoints.map(A=>[A[0],2*a-A[1]]))})}rightToLeft(t,e){return t.nodes.forEach(n=>n.x=e.width-n.x),t.edges.forEach(n=>{n.controlPoints=n.controlPoints.map(i=>[e.width-i[0],i[1]])}),t}execute(t,e){return qP(this,void 0,void 0,function*(){const n=Object.assign(Object.assign(Object.assign({},Ug.defaultOptions),this.options),e),{direction:i,nodeSize:a}=n,s=this.getRoot();if(!s)return t;const o=this.formatSize(a);n.vGap||(n.vGap=Math.max(...(t.nodes||[]).map(h=>o(h)[1]))),n.hGap||(n.hGap=Math.max(...(t.nodes||[]).map(h=>o(h)[0])));let A=this.doLayout(s,n);this.placeAlterative(A,s),i==="RL"&&(A=this.rightToLeft(A,n));const{model:l}=this.context,c=[],u=[];return A.nodes.forEach(h=>{const{id:f,x:d,y:g}=h,v=l.getNodeLikeDatum(f);c.push(hC(v,{x:d,y:g}))}),A.edges.forEach(h=>{const{id:f,controlPoints:d}=h,g=l.getEdgeDatum(f);u.push(hC(g,{controlPoints:d}))}),{nodes:c,edges:u}})}}Ug.defaultOptions={direction:"RL",getRibSep:()=>60};const hC=(r,t)=>Object.assign(Object.assign({},r),{style:Object.assign(Object.assign({},r.style||{}),t)}),ky=r=>r.depth===0,_c=r=>(r.depth||(r.depth=0))%2===0;var $P=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Pg extends xg{constructor(){super(...arguments),this.id="snake"}formatSize(t,e){const n=typeof e=="function"?e:()=>e;return t.reduce((i,a)=>{const[s,o]=ka(n(a))||[0,0];return[Math.max(i[0],s),Math.max(i[1],o)]},[0,0])}validate(t){const{nodes:e=[],edges:n=[]}=t,i={},a={},s={};e.forEach(h=>{i[h.id]=0,a[h.id]=0,s[h.id]=[]}),n.forEach(h=>{i[h.target]++,a[h.source]++,s[h.source].push(h.target)});const o=new Set,A=h=>{o.has(h)||(o.add(h),s[h].forEach(A))};if(A(e[0].id),o.size!==e.length)return!1;const l=e.filter(h=>i[h.id]===0),c=e.filter(h=>a[h.id]===0);return!(l.length!==1||c.length!==1||e.filter(h=>i[h.id]===1&&a[h.id]===1).length!==e.length-2)}execute(t,e){return $P(this,void 0,void 0,function*(){var n;if(!this.validate(t))return t;const{nodeSize:i,padding:a,sortBy:s,cols:o,colGap:A,rowGap:l,clockwise:c,width:u,height:h}=Object.assign({},Pg.defaultOptions,this.options,e),[f,d,g,v]=La(a),y=this.formatSize(t.nodes||[],i),E=Math.ceil((t.nodes||[]).length/o);let C=A||(u-v-d-o*y[0])/(o-1),I=l||(h-f-g-E*y[1])/(E-1);return(I===1/0||I<0)&&(I=0),(C===1/0||C<0)&&(C=0),{nodes:((s?(n=t.nodes)===null||n===void 0?void 0:n.sort(s):t3(t))||[]).map((W,V)=>{const J=Math.floor(V/o),et=V%o,at=c?J%2===0?et:o-1-et:J%2===0?o-1-et:et,ct=v+at*(y[0]+C)+y[0]/2,pt=f+J*(y[1]+I)+y[1]/2;return{id:W.id,style:{x:ct,y:pt}}})}})}}Pg.defaultOptions={padding:0,cols:5,clockwise:!0};function t3(r){const{nodes:t=[],edges:e=[]}=r,n={},i={};t.forEach(o=>{n[o.id]=0,i[o.id]=[]}),e.forEach(o=>{n[o.target]++,i[o.source].push(o.target)});const a=[],s=[];for(t.forEach(o=>{n[o.id]===0&&a.push(o.id)});a.length>0;){const o=a.shift(),A=t.find(l=>l.id===o);s.push(A),i[o].forEach(l=>{n[l]--,n[l]===0&&a.push(l)})}return s}const e3=["rgb(158, 1, 66)","rgb(213, 62, 79)","rgb(244, 109, 67)","rgb(253, 174, 97)","rgb(254, 224, 139)","rgb(255, 255, 191)","rgb(230, 245, 152)","rgb(171, 221, 164)","rgb(102, 194, 165)","rgb(50, 136, 189)","rgb(94, 79, 162)"],n3=["rgb(78, 121, 167)","rgb(242, 142, 44)","rgb(225, 87, 89)","rgb(118, 183, 178)","rgb(89, 161, 79)","rgb(237, 201, 73)","rgb(175, 122, 161)","rgb(255, 157, 167)","rgb(156, 117, 95)","rgb(186, 176, 171)"],r3=["rgb(255, 245, 235)","rgb(254, 230, 206)","rgb(253, 208, 162)","rgb(253, 174, 107)","rgb(253, 141, 60)","rgb(241, 105, 19)","rgb(217, 72, 1)","rgb(166, 54, 3)","rgb(127, 39, 4)"],i3=["rgb(247, 252, 245)","rgb(229, 245, 224)","rgb(199, 233, 192)","rgb(161, 217, 155)","rgb(116, 196, 118)","rgb(65, 171, 93)","rgb(35, 139, 69)","rgb(0, 109, 44)","rgb(0, 68, 27)"],a3=["rgb(247, 251, 255)","rgb(222, 235, 247)","rgb(198, 219, 239)","rgb(158, 202, 225)","rgb(107, 174, 214)","rgb(66, 146, 198)","rgb(33, 113, 181)","rgb(8, 81, 156)","rgb(8, 48, 107)"];var s3=function(r,t,e){if(!Ni(r)&&!Lc(r))return r;var n=e;return Pb(r,function(i,a){n=t(n,i,a)}),n},o3=s3,Qy=function(r,t){return o3(r,function(e,n,i){return t.includes(i)||(e[i]=n),e},{})};class mi extends Hm{}function Hc(r,t=!0,e){const n=document.createElement("div");return n.setAttribute("class",`g6-${r}`),Object.assign(n.style,{position:"absolute",display:"block"}),t&&Object.assign(n.style,{position:"unset",gridArea:"1 / 1 / 2 / 2",inset:"0px",height:"100%",width:"100%",overflow:"hidden",pointerEvents:"none"}),e&&Object.assign(n.style,e),n}function Uy(r,t="div",e={},n="",i=document.body){const a=document.getElementById(r);a&&a.remove();const s=document.createElement(t);return s.innerHTML=n,s.id=r,Object.assign(s.style,e),i.appendChild(s),s}var A3=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Dg extends mi{constructor(t,e){super(t,Object.assign({},Dg.defaultOptions,e)),this.$element=Hc("background"),this.context.canvas.getContainer().prepend(this.$element),this.update(e)}update(t){const e=Object.create(null,{update:{get:()=>super.update}});return A3(this,void 0,void 0,function*(){e.update.call(this,t),Object.assign(this.$element.style,Qy(this.options,["key","type"]))})}destroy(){super.destroy(),this.$element.remove()}}Dg.defaultOptions={transition:"background 0.5s",backgroundSize:"cover",zIndex:"-1"};function Py(r,t,e,n,i,a){const s=r,o=t,A=e-s,l=n-o;let c=i-s,u=a-o,h=c*A+u*l,f=0;h<=0?f=0:(c=A-c,u=l-u,h=c*A+u*l,h<=0?f=0:f=h*h/(A*A+l*l));const d=c*c+u*u-f;return d<0?0:d}function MA(r,t,e,n){return(r-e)*(r-e)+(t-n)*(t-n)}function fC(r,t,e,n,i){return MA(r,t,e,n)<i*i}function l3(r){if(!Number.isFinite(r))return e=>e;if(r===0)return Math.round;const t=Math.pow(10,r);return e=>Math.round(e*t)/t}function dC(r){const t=Math.min(r.x1,r.x2),e=Math.max(r.x1,r.x2),n=Math.min(r.y1,r.y2),i=Math.max(r.y1,r.y2);return{x:t,y:n,x2:e,y2:i,width:e-t,height:i-n}}class yi{constructor(t,e,n,i){this.x1=t,this.y1=e,this.x2=n,this.y2=i}equals(t){return this.x1===t.x1&&this.y1===t.y1&&this.x2===t.x2&&this.y2===t.y2}draw(t){t.moveTo(this.x1,this.y1),t.lineTo(this.x2,this.y2)}toString(){return`Line(from=(${this.x1},${this.y1}),to=(${this.x2},${this.y2}))`}static from(t){return new yi(t.x1,t.y1,t.x2,t.y2)}cuts(t,e){if(this.y1===this.y2||e<this.y1&&e<=this.y2||e>this.y1&&e>=this.y2||t>this.x1&&t>=this.x2)return!1;if(t<this.x1&&t<=this.x2)return!0;const n=this.x1+(e-this.y1)*(this.x2-this.x1)/(this.y2-this.y1);return t<=n}distSquare(t,e){return Py(this.x1,this.y1,this.x2,this.y2,t,e)}ptClose(t,e,n){if(this.x1<this.x2){if(t<this.x1-n||t>this.x2+n)return!1}else if(t<this.x2-n||t>this.x1+n)return!1;if(this.y1<this.y2){if(e<this.y1-n||e>this.y2+n)return!1}else if(e<this.y2-n||e>this.y1+n)return!1;return!0}}var Lr;(function(r){r[r.POINT=1]="POINT",r[r.PARALLEL=2]="PARALLEL",r[r.COINCIDENT=3]="COINCIDENT",r[r.NONE=4]="NONE"})(Lr||(Lr={}));class Dy{constructor(t,e=0,n=0){this.state=t,this.x=e,this.y=n}}function Rg(r,t){const e=(t.x2-t.x1)*(r.y1-t.y1)-(t.y2-t.y1)*(r.x1-t.x1),n=(r.x2-r.x1)*(r.y1-t.y1)-(r.y2-r.y1)*(r.x1-t.x1),i=(t.y2-t.y1)*(r.x2-r.x1)-(t.x2-t.x1)*(r.y2-r.y1);if(i){const a=e/i,s=n/i;return 0<=a&&a<=1&&0<=s&&s<=1?new Dy(Lr.POINT,r.x1+a*(r.x2-r.x1),r.y1+a*(r.y2-r.y1)):new Dy(Lr.NONE)}return new Dy(e===0||n===0?Lr.COINCIDENT:Lr.PARALLEL)}function gC(r,t){const e=(t.x2-t.x1)*(r.y1-t.y1)-(t.y2-t.y1)*(r.x1-t.x1),n=(r.x2-r.x1)*(r.y1-t.y1)-(r.y2-r.y1)*(r.x1-t.x1),i=(t.y2-t.y1)*(r.x2-r.x1)-(t.x2-t.x1)*(r.y2-r.y1);if(i){const a=e/i,s=n/i;if(0<=a&&a<=1&&0<=s&&s<=1)return a}return Number.POSITIVE_INFINITY}function c3(r,t){function e(i,a,s,o){let A=gC(t,new yi(i,a,s,o));return A=Math.abs(A-.5),A>=0&&A<=1?1:0}let n=e(r.x,r.y,r.x2,r.y);return n+=e(r.x,r.y,r.x,r.y2),n>1||(n+=e(r.x,r.y2,r.x2,r.y2),n>1)?!0:(n+=e(r.x2,r.y,r.x2,r.y2),n>0)}var Nr;(function(r){r[r.LEFT=0]="LEFT",r[r.TOP=1]="TOP",r[r.RIGHT=2]="RIGHT",r[r.BOTTOM=3]="BOTTOM"})(Nr||(Nr={}));function _g(r,t,e){const n=new Set;return r.width<=0?(n.add(Nr.LEFT),n.add(Nr.RIGHT)):t<r.x?n.add(Nr.LEFT):t>r.x+r.width&&n.add(Nr.RIGHT),r.height<=0?(n.add(Nr.TOP),n.add(Nr.BOTTOM)):e<r.y?n.add(Nr.TOP):e>r.y+r.height&&n.add(Nr.BOTTOM),n}function vC(r,t){let e=t.x1,n=t.y1;const i=t.x2,a=t.y2,s=Array.from(_g(r,i,a));if(s.length===0)return!0;let o=_g(r,e,n);for(;o.size!==0;){for(const A of s)if(o.has(A))return!1;if(o.has(Nr.RIGHT)||o.has(Nr.LEFT)){let A=r.x;o.has(Nr.RIGHT)&&(A+=r.width),n=n+(A-e)*(a-n)/(i-e),e=A}else{let A=r.y;o.has(Nr.BOTTOM)&&(A+=r.height),e=e+(A-n)*(i-e)/(a-n),n=A}o=_g(r,e,n)}return!0}function u3(r,t){let e=Number.POSITIVE_INFINITY,n=0;function i(a,s,o,A){let l=gC(t,new yi(a,s,o,A));l=Math.abs(l-.5),l>=0&&l<=1&&(n++,l<e&&(e=l))}return i(r.x,r.y,r.x2,r.y),i(r.x,r.y,r.x,r.y2),n>1||(i(r.x,r.y2,r.x2,r.y2),n>1)?e:(i(r.x2,r.y,r.x2,r.y2),n===0?-1:e)}function h3(r,t){let e=0;const n=Rg(r,new yi(t.x,t.y,t.x2,t.y));e+=n.state===Lr.POINT?1:0;const i=Rg(r,new yi(t.x,t.y,t.x,t.y2));e+=i.state===Lr.POINT?1:0;const a=Rg(r,new yi(t.x,t.y2,t.x2,t.y2));e+=a.state===Lr.POINT?1:0;const s=Rg(r,new yi(t.x2,t.y,t.x2,t.y2));return e+=s.state===Lr.POINT?1:0,{top:n,left:i,bottom:a,right:s,count:e}}class Ri{constructor(t,e,n,i){this.x=t,this.y=e,this.width=n,this.height=i}get x2(){return this.x+this.width}get y2(){return this.y+this.height}get cx(){return this.x+this.width/2}get cy(){return this.y+this.height/2}get radius(){return Math.max(this.width,this.height)/2}static from(t){return new Ri(t.x,t.y,t.width,t.height)}equals(t){return this.x===t.x&&this.y===t.y&&this.width===t.width&&this.height===t.height}clone(){return new Ri(this.x,this.y,this.width,this.height)}add(t){const e=Math.min(this.x,t.x),n=Math.min(this.y,t.y),i=Math.max(this.x2,t.x+t.width),a=Math.max(this.y2,t.y+t.height);this.x=e,this.y=n,this.width=i-e,this.height=a-n}addPoint(t){const e=Math.min(this.x,t.x),n=Math.min(this.y,t.y),i=Math.max(this.x2,t.x),a=Math.max(this.y2,t.y);this.x=e,this.y=n,this.width=i-e,this.height=a-n}toString(){return`Rectangle[x=${this.x}, y=${this.y}, w=${this.width}, h=${this.height}]`}draw(t){t.rect(this.x,this.y,this.width,this.height)}containsPt(t,e){return t>=this.x&&t<=this.x2&&e>=this.y&&e<=this.y2}get area(){return this.width*this.height}intersects(t){return this.area<=0||t.width<=0||t.height<=0?!1:t.x+t.width>this.x&&t.y+t.height>this.y&&t.x<this.x2&&t.y<this.y2}distSquare(t,e){if(this.containsPt(t,e))return 0;const n=_g(this,t,e);return n.has(Nr.TOP)?n.has(Nr.LEFT)?MA(t,e,this.x,this.y):n.has(Nr.RIGHT)?MA(t,e,this.x2,this.y):(this.y-e)*(this.y-e):n.has(Nr.BOTTOM)?n.has(Nr.LEFT)?MA(t,e,this.x,this.y2):n.has(Nr.RIGHT)?MA(t,e,this.x2,this.y2):(e-this.y2)*(e-this.y2):n.has(Nr.LEFT)?(this.x-t)*(this.x-t):n.has(Nr.RIGHT)?(t-this.x2)*(t-this.x2):0}}function f3(r){if(r.length===0)return null;const t=r[0],e=new Ri(t.x,t.y,0,0);for(const n of r)e.addPoint(n);return e}class Hg{constructor(t,e,n){this.cx=t,this.cy=e,this.radius=n}get x(){return this.cx-this.radius}get x2(){return this.cx+this.radius}get width(){return this.radius*2}get y(){return this.cy-this.radius}get y2(){return this.cy+this.radius}get height(){return this.radius*2}static from(t){return new Hg(t.cx,t.cy,t.radius)}containsPt(t,e){return MA(this.cx,this.cy,t,e)<this.radius*this.radius}distSquare(t,e){const n=MA(this.cx,this.cy,t,e);if(n<this.radius*this.radius)return 0;const i=Math.sqrt(n)-this.radius;return i*i}draw(t){t.ellipse(this.cx,this.cy,this.radius,this.radius,0,0,Math.PI*2)}}class Ml{constructor(t,e=0,n=0,i=0,a=0,s=10,o=10,A=new Float32Array(Math.max(0,s*o)).fill(0)){this.pixelGroup=t,this.i=e,this.j=n,this.pixelX=i,this.pixelY=a,this.width=s,this.height=o,this.area=A}createSub(t,e){return new Ml(this.pixelGroup,t.x,t.y,e.x,e.y,t.width,t.height)}static fromPixelRegion(t,e){return new Ml(e,0,0,t.x,t.y,Math.ceil(t.width/e),Math.ceil(t.height/e))}copy(t,e){return new Ml(this.pixelGroup,this.scaleX(e.x),this.scaleY(e.y),e.x,e.y,t.width,t.height,t.area)}boundX(t){return t<this.i?this.i:t>=this.width?this.width-1:t}boundY(t){return t<this.j?this.j:t>=this.height?this.height-1:t}scaleX(t){return this.boundX(Math.floor((t-this.pixelX)/this.pixelGroup))}scaleY(t){return this.boundY(Math.floor((t-this.pixelY)/this.pixelGroup))}scale(t){const e=this.scaleX(t.x),n=this.scaleY(t.y),i=this.boundX(Math.ceil((t.x+t.width-this.pixelX)/this.pixelGroup)),a=this.boundY(Math.ceil((t.y+t.height-this.pixelY)/this.pixelGroup)),s=i-e,o=a-n;return new Ri(e,n,s,o)}invertScaleX(t){return Math.round(t*this.pixelGroup+this.pixelX)}invertScaleY(t){return Math.round(t*this.pixelGroup+this.pixelY)}addPadding(t,e){const n=Math.ceil(e/this.pixelGroup),i=this.boundX(t.x-n),a=this.boundY(t.y-n),s=this.boundX(t.x2+n),o=this.boundY(t.y2+n),A=s-i,l=o-a;return new Ri(i,a,A,l)}get(t,e){return t<0||e<0||t>=this.width||e>=this.height?Number.NaN:this.area[t+e*this.width]}inc(t,e,n){t<0||e<0||t>=this.width||e>=this.height||(this.area[t+e*this.width]+=n)}set(t,e,n){t<0||e<0||t>=this.width||e>=this.height||(this.area[t+e*this.width]=n)}incArea(t,e){if(t.width<=0||t.height<=0||e===0)return;const n=this.width,i=t.width,a=Math.max(0,t.i),s=Math.max(0,t.j),o=Math.min(t.i+t.width,n),A=Math.min(t.j+t.height,this.height);if(!(A<=0||o<=0||a>=n||A>=this.height))for(let l=s;l<A;l++){const c=(l-t.j)*i,u=l*n;for(let h=a;h<o;h++){const f=t.area[h-t.i+c];f!==0&&(this.area[h+u]+=e*f)}}}fill(t){this.area.fill(t)}fillArea(t,e){const n=t.x+t.y*this.width;for(let i=0;i<t.height;i++){const a=n+i*this.width;this.area.fill(e,a,a+t.width)}}fillHorizontalLine(t,e,n,i){const a=t+e*this.width;this.area.fill(i,a,a+n)}fillVerticalLine(t,e,n,i){const a=t+e*this.width;for(let s=0;s<n;s++)this.area[a+s*this.width]=i}clear(){this.area.fill(0)}toString(){let t="";for(let e=0;e<this.height;e++){const n=e*this.width;for(let i=0;i<this.width;i++){const a=this.area[n+i];t+=a.toFixed(1).padStart(6),t+=" "}t+=`
|
|
|
`}return t}draw(t,e=!0){if(this.width<=0||this.height<=0)return;t.save(),e&&t.translate(this.pixelX,this.pixelY);const n=this.area.reduce((s,o)=>Math.min(s,o),Number.POSITIVE_INFINITY),i=this.area.reduce((s,o)=>Math.max(s,o),Number.NEGATIVE_INFINITY),a=s=>(s-n)/(i-n);t.scale(this.pixelGroup,this.pixelGroup);for(let s=0;s<this.width;s++)for(let o=0;o<this.height;o++){const A=this.area[s+o*this.width];t.fillStyle=`rgba(0, 0, 0, ${a(A)})`,t.fillRect(s,o,1,1)}t.restore()}drawThreshold(t,e,n=!0){if(!(this.width<=0||this.height<=0)){t.save(),n&&t.translate(this.pixelX,this.pixelY),t.scale(this.pixelGroup,this.pixelGroup);for(let i=0;i<this.width;i++)for(let a=0;a<this.height;a++){const s=this.area[i+a*this.width];t.fillStyle=s>e?"black":"white",t.fillRect(i,a,1,1)}t.restore()}}}function pC(r,t){const e=n=>({x:n.x-t,y:n.y-t,width:n.width+2*t,height:n.height+2*t});return Array.isArray(r)?r.map(e):e(r)}function mC(r,t,e){return yC(Object.assign(dC(r),{distSquare:(n,i)=>Py(r.x1,r.y1,r.x2,r.y2,n,i)}),t,e)}function yC(r,t,e){const n=pC(r,e),i=t.scale(n),a=t.createSub(i,n);return d3(a,t,e,(s,o)=>r.distSquare(s,o)),a}function d3(r,t,e,n){const i=e*e;for(let a=0;a<r.height;a++)for(let s=0;s<r.width;s++){const o=t.invertScaleX(r.i+s),A=t.invertScaleY(r.j+a),l=n(o,A);if(l===0){r.set(s,a,i);continue}if(l<i){const c=e-Math.sqrt(l);r.set(s,a,c*c)}}return r}function g3(r,t,e){const n=t.scale(r),i=t.addPadding(n,e),a=t.createSub(i,{x:r.x-e,y:r.y-e}),s=n.x-i.x,o=n.y-i.y,A=i.x2-n.x2,l=i.y2-n.y2,c=i.width-s-A,u=i.height-o-l,h=e*e;a.fillArea({x:s,y:o,width:c+1,height:u+1},h);const f=[0],d=Math.max(o,s,A,l);{const E=t.invertScaleX(n.x+n.width/2);for(let C=1;C<d;C++){const I=t.invertScaleY(n.y-C),R=r.distSquare(E,I);if(R<h){const K=e-Math.sqrt(R);f.push(K*K)}else break}}const g=[],v=Math.max(s,A),y=Math.max(o,A);for(let E=1;E<v;E++){const C=t.invertScaleX(n.x-E),I=[];for(let R=1;R<y;R++){const K=t.invertScaleY(n.y-R),W=r.distSquare(C,K);if(W<h){const V=e-Math.sqrt(W);I.push(V*V)}else I.push(0)}g.push(I)}for(let E=1;E<Math.min(o,f.length);E++){const C=f[E];a.fillHorizontalLine(s,o-E,c+1,C)}for(let E=1;E<Math.min(l,f.length);E++){const C=f[E];a.fillHorizontalLine(s,o+u+E,c+1,C)}for(let E=1;E<Math.min(s,f.length);E++){const C=f[E];a.fillVerticalLine(s-E,o,u+1,C)}for(let E=1;E<Math.min(l,f.length);E++){const C=f[E];a.fillVerticalLine(s+c+E,o,u+1,C)}for(let E=1;E<s;E++){const C=g[E-1],I=s-E;for(let R=1;R<o;R++)a.set(I,o-R,C[R-1]);for(let R=1;R<l;R++)a.set(I,o+u+R,C[R-1])}for(let E=1;E<A;E++){const C=g[E-1],I=s+c+E;for(let R=1;R<o;R++)a.set(I,o-R,C[R-1]);for(let R=1;R<l;R++)a.set(I,o+u+R,C[R-1])}return a}function W9(r,t,e,n){return{x:r,y:t,width:e,height:n}}function Z9(r,t,e){return{cx:r,cy:t,radius:e}}function j9(r,t,e,n){return{x1:r,y1:t,x2:e,y2:n}}function dr(r,t){return{x:r,y:t}}function v3(r,t,e,n){if(r.length===0)return[];const i=E3(r);return i.map((a,s)=>{const o=i.slice(0,s);return p3(t,a,o,e,n)}).flat()}function p3(r,t,e,n,i){const a=dr(t.cx,t.cy),s=w3(a,e,r);if(s==null)return[];const o=new yi(a.x,a.y,s.cx,s.cy),A=m3(o,r,n,i);return y3(A,r)}function m3(r,t,e,n){const i=[],a=[];a.push(r);let s=!0;for(let o=0;o<e&&s;o++)for(s=!1;!s&&a.length>0;){const A=a.pop(),l=wC(t,A),c=l?h3(A,l):null;if(!l||!c||c.count!==2){s||i.push(A);continue}let u=n,h=Kg(l,u,c,!0),f=TA(h,a)||TA(h,i),d=Gg(h,t);for(;!f&&d&&u>=1;)u/=1.5,h=Kg(l,u,c,!0),f=TA(h,a)||TA(h,i),d=Gg(h,t);if(h&&!f&&!d&&(a.push(new yi(A.x1,A.y1,h.x,h.y)),a.push(new yi(h.x,h.y,A.x2,A.y2)),s=!0),s)continue;u=n,h=Kg(l,u,c,!1);let g=TA(h,a)||TA(h,i);for(d=Gg(h,t);!g&&d&&u>=1;)u/=1.5,h=Kg(l,u,c,!1),g=TA(h,a)||TA(h,i),d=Gg(h,t);h&&!g&&(a.push(new yi(A.x1,A.y1,h.x,h.y)),a.push(new yi(h.x,h.y,A.x2,A.y2)),s=!0),s||i.push(A)}for(;a.length>0;)i.push(a.pop());return i}function y3(r,t){const e=[];for(;r.length>0;){const n=r.pop();if(r.length===0){e.push(n);break}const i=r.pop(),a=new yi(n.x1,n.y1,i.x2,i.y2);wC(t,a)?(e.push(n),r.push(i)):r.push(a)}return e}function w3(r,t,e){let n=Number.POSITIVE_INFINITY;return t.reduce((i,a)=>{const s=MA(r.x,r.y,a.cx,a.cy);if(s>n)return i;const o=new yi(r.x,r.y,a.cx,a.cy),A=B3(e,o);return s*(A+1)*(A+1)<n&&(i=a,n=s*(A+1)*(A+1)),i},null)}function E3(r){if(r.length<2)return r;let t=0,e=0;return r.forEach(n=>{t+=n.cx,e+=n.cy}),t/=r.length,e/=r.length,r.map(n=>{const i=t-n.cx,a=e-n.cy,s=i*i+a*a;return[n,s]}).sort((n,i)=>n[1]-i[1]).map(n=>n[0])}function Gg(r,t){return t.some(e=>e.containsPt(r.x,r.y))}function TA(r,t){return t.some(e=>!!(fC(e.x1,e.y1,r.x,r.y,.001)||fC(e.x2,e.y2,r.x,r.y,.001)))}function wC(r,t){let e=Number.POSITIVE_INFINITY,n=null;for(const i of r){if(!vC(i,t))continue;const a=u3(i,t);a>=0&&a<e&&(n=i,e=a)}return n}function B3(r,t){return r.reduce((e,n)=>vC(n,t)&&c3(n,t)?e+1:e,0)}function Kg(r,t,e,n){const i=e.top,a=e.left,s=e.bottom,o=e.right;if(n){if(a.state===Lr.POINT){if(i.state===Lr.POINT)return dr(r.x-t,r.y-t);if(s.state===Lr.POINT)return dr(r.x-t,r.y2+t);const h=r.width*r.height;return r.width*((a.y-r.y+(o.y-r.y))*.5)<h*.5?a.y>o.y?dr(r.x-t,r.y-t):dr(r.x2+t,r.y-t):a.y<o.y?dr(r.x-t,r.y2+t):dr(r.x2+t,r.y2+t)}if(o.state===Lr.POINT){if(i.state===Lr.POINT)return dr(r.x2+t,r.y-t);if(s.state===Lr.POINT)return dr(r.x2+t,r.y2+t)}const c=r.height*r.width;return r.height*((i.x-r.x+(o.x-r.x))*.5)<c*.5?i.x>s.x?dr(r.x-t,r.y-t):dr(r.x-t,r.y2+t):i.x<s.x?dr(r.x2+t,r.y-t):dr(r.x2+t,r.y2+t)}if(a.state===Lr.POINT){if(i.state===Lr.POINT)return dr(r.x2+t,r.y2+t);if(s.state===Lr.POINT)return dr(r.x2+t,r.y-t);const c=r.height*r.width;return r.width*((a.y-r.y+(o.y-r.y))*.5)<c*.5?a.y>o.y?dr(r.x2+t,r.y2+t):dr(r.x-t,r.y2+t):a.y<o.y?dr(r.x2+t,r.y-t):dr(r.x-t,r.y-t)}if(o.state===Lr.POINT){if(i.state===Lr.POINT)return dr(r.x-t,r.y2+t);if(s.state===Lr.POINT)return dr(r.x-t,r.y-t)}const A=r.height*r.width;return r.height*((i.x-r.x+(o.x-r.x))*.5)<A*.5?i.x>s.x?dr(r.x2+t,r.y2+t):dr(r.x2+t,r.y-t):i.x<s.x?dr(r.x-t,r.y2+t):dr(r.x-t,r.y-t)}function b3(r,t,e,n){if(!(r.closed?e<r.length:e<r.length-1))return!1;const a=r.get(t),s=r.get(e+1);for(let o=t+1;o<=e;o++){const A=r.get(o);if(Py(a.x,a.y,s.x,s.y,A.x,A.y)>n)return!1}return!0}function x3(r=0){return t=>{if(r<0||t.length<3)return t;const e=[];let n=0;const i=r*r;for(;n<t.length;){let a=n+1;for(;b3(t,n,a,i);)a++;e.push(t.get(n)),n=a}return new Tl(e)}}function C3(r,t){switch(r){case-2:return(((-t+3)*t-3)*t+1)/6;case-1:return((3*t-6)*t*t+4)/6;case 0:return(((-3*t+3)*t+3)*t+1)/6;case 1:return t*t*t/6;default:throw new Error("unknown error")}}function S3(r=6){function a(s,o,A){let l=0,c=0;for(let u=-2;u<=1;u++){const h=s.get(o+u),f=C3(u,A);l+=f*h.x,c+=f*h.y}return{x:l,y:c}}return s=>{if(s.length<3)return s;const o=[],A=s.closed,l=s.length+3-1+(A?0:2);o.push(a(s,2-(A?0:2),0));for(let c=2-(A?0:2);c<l;c++)for(let u=1;u<=r;u++)o.push(a(s,c,u/r));return new Tl(o)}}function M3(r=8){return t=>{let e=r,n=t.length;if(e>1)for(n=Math.floor(t.length/e);n<3&&e>1;)e-=1,n=Math.floor(t.length/e);const i=[];for(let a=0,s=0;s<n;s++,a+=e)i.push(t.get(a));return new Tl(i)}}class Tl{constructor(t=[],e=!0){this.points=t,this.closed=e}get(t){const e=t,n=this.points.length;return t<0?this.closed?this.get(t+n):this.points[0]:t>=n?this.closed?this.get(t-n):this.points[n-1]:this.points[e]}get length(){return this.points.length}toString(t=1/0){const e=this.points;if(e.length===0)return"";const n=typeof t=="function"?t:l3(t);let i="M";for(const a of e)i+=`${n(a.x)},${n(a.y)} L`;return i=i.slice(0,-1),this.closed&&(i+=" Z"),i}draw(t){const e=this.points;if(e.length!==0){t.beginPath(),t.moveTo(e[0].x,e[0].y);for(const n of e)t.lineTo(n.x,n.y);this.closed&&t.closePath()}}sample(t){return M3(t)(this)}simplify(t){return x3(t)(this)}bSplines(t){return S3(t)(this)}apply(t){return t(this)}containsElements(t){const e=f3(this.points);return e?t.every(n=>e.containsPt(n.cx,n.cy)&&this.withinArea(n.cx,n.cy)):!1}withinArea(t,e){if(this.length===0)return!1;let n=0;const i=this.points[0],a=new yi(i.x,i.y,i.x,i.y);for(let s=1;s<this.points.length;s++){const o=this.points[s];a.x1=a.x2,a.y1=a.y2,a.x2=o.x,a.y2=o.y,a.cuts(t,e)&&n++}return a.x1=a.x2,a.y1=a.y2,a.x2=i.x,a.y2=i.y,a.cuts(t,e)&&n++,n%2===1}}class T3{constructor(t=0){this.count=0,this.arr=[],this.set=new Set,this.arr.length=t}add(t){this.set.add(`${t.x}x${t.y}`),this.arr[this.count++]=t}contains(t){return this.set.has(`${t.x}x${t.y}`)}isFirst(t){if(this.count===0)return!1;const e=this.arr[0];return e!=null&&e.x===t.x&&e.y===t.y}path(){return new Tl(this.arr.slice(0,this.count))}clear(){this.set.clear(),this.count=0}get(t){return this.arr[t]}get length(){return this.count}}const Mh=0,zg=1,Vg=2,Ry=3;function F3(r,t){const e=(Math.floor(r.width)+Math.floor(r.height))*2,n=new T3(e);function i(A,l,c,u){const h=r.get(A,l);return Number.isNaN(h)?Number.NaN:h>t?c+u:c}function a(A,l){let c=Mh;return c=i(A,l,c,1),c=i(A+1,l,c,2),c=i(A,l+1,c,4),c=i(A+1,l+1,c,8),Number.isNaN(c)?-1:c}let s=zg;function o(A,l){let c=A,u=l,h=r.invertScaleX(c),f=r.invertScaleY(u);for(let d=0;d<r.width*r.height;d++){const g={x:h,y:f};if(n.contains(g)){if(n.isFirst(g))return!0}else n.add(g);const v=a(c,u);switch(v){case-1:return!0;case 0:case 3:case 2:case 7:s=Vg;break;case 12:case 14:case 4:s=Ry;break;case 6:s=s===Mh?Ry:Vg;break;case 1:case 13:case 5:s=Mh;break;case 9:s=s===Vg?Mh:zg;break;case 10:case 8:case 11:s=zg;break;default:return console.warn("Marching squares invalid state: "+v),!0}switch(s){case Mh:u--,f-=r.pixelGroup;break;case zg:u++,f+=r.pixelGroup;break;case Ry:c--,h-=r.pixelGroup;break;case Vg:c++,h+=r.pixelGroup;break;default:return console.warn("Marching squares invalid state: "+v),!0}}return!0}for(let A=0;A<r.width;A++)for(let l=0;l<r.height;l++){if(r.get(A,l)<=t)continue;const c=a(A,l);if(!(c<0||c===15)&&o(A,l))return n.path()}return null}const Wg={maxRoutingIterations:100,maxMarchingIterations:20,pixelGroup:4,edgeR0:10,edgeR1:20,nodeR0:15,nodeR1:50,morphBuffer:10,threshold:1,memberInfluenceFactor:1,edgeInfluenceFactor:1,nonMemberInfluenceFactor:-.8,virtualEdges:!0};function Th(r){return r!=null&&typeof r.radius=="number"}function EC(r,t){if(Th(r)!==Th(t))return!1;if(Th(r)){const n=t;return r.cx===n.cx&&r.cy===n.cy&&r.radius===n.radius}const e=t;return r.x===e.x&&r.y===e.y&&r.width===e.width&&r.height===e.height}var Ms;(function(r){r[r.MEMBERS=0]="MEMBERS",r[r.NON_MEMBERS=1]="NON_MEMBERS",r[r.EDGES=2]="EDGES"})(Ms||(Ms={}));class _y{constructor(t={}){this.dirty=new Set,this.members=[],this.nonMembers=[],this.virtualEdges=[],this.edges=[],this.activeRegion=new Ri(0,0,0,0),this.potentialArea=new Ml(1,0,0,0,0,0,0),this.o=Object.assign({},Wg,t)}pushMember(...t){if(t.length!==0){this.dirty.add(Ms.MEMBERS);for(const e of t)this.members.push({raw:e,obj:Th(e)?Hg.from(e):Ri.from(e),area:null})}}removeMember(t){const e=this.members.findIndex(n=>EC(n.raw,t));return e<0?!1:(this.members.splice(e,1),this.dirty.add(Ms.MEMBERS),!0)}removeNonMember(t){const e=this.nonMembers.findIndex(n=>EC(n.raw,t));return e<0?!1:(this.nonMembers.splice(e,1),this.dirty.add(Ms.NON_MEMBERS),!0)}removeEdge(t){const e=this.edges.findIndex(n=>n.obj.equals(t));return e<0?!1:(this.edges.splice(e,1),this.dirty.add(Ms.NON_MEMBERS),!0)}pushNonMember(...t){if(t.length!==0){this.dirty.add(Ms.NON_MEMBERS);for(const e of t)this.nonMembers.push({raw:e,obj:Th(e)?Hg.from(e):Ri.from(e),area:null})}}pushEdge(...t){if(t.length!==0){this.dirty.add(Ms.EDGES);for(const e of t)this.edges.push({raw:e,obj:yi.from(e),area:null})}}update(){const t=this.dirty.has(Ms.MEMBERS),e=this.dirty.has(Ms.NON_MEMBERS);let n=this.dirty.has(Ms.EDGES);this.dirty.clear();const i=this.members.map(l=>l.obj);if(this.o.virtualEdges&&(t||e)){const l=this.nonMembers.map(h=>h.obj),c=v3(i,l,this.o.maxRoutingIterations,this.o.morphBuffer),u=new Map(this.virtualEdges.map(h=>[h.obj.toString(),h.area]));this.virtualEdges=c.map(h=>{var f;return{raw:h,obj:h,area:(f=u.get(h.toString()))!==null&&f!==void 0?f:null}}),n=!0}let a=!1;if(t||n){const l=this.virtualEdges.concat(this.edges).map(f=>f.obj),c=I3(i,l),u=Math.max(this.o.edgeR1,this.o.nodeR1)+this.o.morphBuffer,h=Ri.from(pC(c,u));h.equals(this.activeRegion)||(a=!0,this.activeRegion=h)}if(a){const l=Math.ceil(this.activeRegion.width/this.o.pixelGroup),c=Math.ceil(this.activeRegion.height/this.o.pixelGroup);this.activeRegion.x!==this.potentialArea.pixelX||this.activeRegion.y!==this.potentialArea.pixelY?(this.potentialArea=Ml.fromPixelRegion(this.activeRegion,this.o.pixelGroup),this.members.forEach(u=>u.area=null),this.nonMembers.forEach(u=>u.area=null),this.edges.forEach(u=>u.area=null),this.virtualEdges.forEach(u=>u.area=null)):(l!==this.potentialArea.width||c!==this.potentialArea.height)&&(this.potentialArea=Ml.fromPixelRegion(this.activeRegion,this.o.pixelGroup))}const s=new Map,o=l=>{if(l.area){const c=`${l.obj.width}x${l.obj.height}x${l.obj instanceof Ri?"R":"C"}`;s.set(c,l.area)}},A=l=>{if(l.area)return;const c=`${l.obj.width}x${l.obj.height}x${l.obj instanceof Ri?"R":"C"}`;if(s.has(c)){const h=s.get(c);l.area=this.potentialArea.copy(h,{x:l.obj.x-this.o.nodeR1,y:l.obj.y-this.o.nodeR1});return}const u=l.obj instanceof Ri?g3(l.obj,this.potentialArea,this.o.nodeR1):yC(l.obj,this.potentialArea,this.o.nodeR1);l.area=u,s.set(c,u)};this.members.forEach(o),this.nonMembers.forEach(o),this.members.forEach(A),this.nonMembers.forEach(l=>{this.activeRegion.intersects(l.obj)?A(l):l.area=null}),this.edges.forEach(l=>{l.area||(l.area=mC(l.obj,this.potentialArea,this.o.edgeR1))}),this.virtualEdges.forEach(l=>{l.area||(l.area=mC(l.obj,this.potentialArea,this.o.edgeR1))})}drawMembers(t){for(const e of this.members)e.obj.draw(t)}drawNonMembers(t){for(const e of this.nonMembers)e.obj.draw(t)}drawEdges(t){for(const e of this.edges)e.obj.draw(t)}drawPotentialArea(t,e=!0){this.potentialArea.draw(t,e)}compute(){if(this.members.length===0)return new Tl([]);this.dirty.size>0&&this.update();const{o:t,potentialArea:e}=this,n=this.members.map(o=>o.area),i=this.virtualEdges.concat(this.edges).map(o=>o.area),a=this.nonMembers.filter(o=>o.area!=null).map(o=>o.area),s=this.members.map(o=>o.obj);return O3(e,n,i,a,o=>o.containsElements(s),t)}}function O3(r,t,e,n,i,a={}){const s=Object.assign({},Wg,a);let o=s.threshold,A=s.memberInfluenceFactor,l=s.edgeInfluenceFactor,c=s.nonMemberInfluenceFactor;const u=(s.nodeR0-s.nodeR1)*(s.nodeR0-s.nodeR1),h=(s.edgeR0-s.edgeR1)*(s.edgeR0-s.edgeR1);for(let f=0;f<s.maxMarchingIterations;f++){if(r.clear(),A!==0){const g=A/u;for(const v of t)r.incArea(v,g)}if(l!==0){const g=l/h;for(const v of e)r.incArea(v,g)}if(c!==0){const g=c/u;for(const v of n)r.incArea(v,g)}const d=F3(r,o);if(d&&i(d))return d;if(o*=.95,f<=s.maxMarchingIterations*.5)A*=1.2,l*=1.2;else if(c!==0&&n.length>0)c*=.8;else break}return new Tl([])}function I3(r,t){if(r.length===0)return new Ri(0,0,0,0);const e=Ri.from(r[0]);for(const n of r)e.add(n);for(const n of t)e.add(dC(n));return e}function Y9(r,t=[],e=[],n={}){if(r.length===0)return new Tl([]);const i=new _y(n);return i.pushMember(...r),i.pushNonMember(...t),i.pushEdge(...e),i.compute()}var L3=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class Zg extends mi{constructor(t,e){super(t,Ci({},Zg.defaultOptions,e)),this.members=new Map,this.avoidMembers=new Map,this.bubbleSetOptions={},this.drawBubbleSets=()=>{const{style:n,bubbleSetOptions:i}=this.parseOptions();Rr(this.bubbleSetOptions,i)||this.init(),this.bubbleSetOptions=Object.assign({},i);const a=Object.assign(Object.assign({},n),{d:this.getPath()});this.shape?this.shape.update(a):(this.shape=new ph({style:a}),this.context.canvas.appendChild(this.shape))},this.updateBubbleSetsPath=n=>{if(!this.shape)return;const i=Pt(n.data);[...this.options.members,...this.options.avoidMembers].includes(i)&&this.shape.update(Object.assign(Object.assign({},this.parseOptions().style),{d:this.getPath(i)}))},this.getPath=n=>{const{graph:i}=this.context,a=this.options.members,s=[...this.members.keys()],o=this.options.avoidMembers,A=[...this.avoidMembers.keys()];if(!n&&Rr(a,s)&&Rr(o,A))return this.path;const{enter:l=[],exit:c=[]}=mA(s,a,v=>v),{enter:u=[],exit:h=[]}=mA(A,o,v=>v);n&&(c.push(n),l.push(n));const f=(v,y,E)=>{v.forEach(C=>{const I=E?this.members:this.avoidMembers,R=E?"pushMember":"pushNonMember",K=E?"removeMember":"removeNonMember";if(y){let W;i.getElementType(C)==="edge"?([W]=k3(i,C),this.bubbleSets.pushEdge(W)):([W]=N3(i,C),this.bubbleSets[R](W)),I.set(C,W)}else{const W=I.get(C);W&&(i.getElementType(C)==="edge"?this.bubbleSets.removeEdge(W):this.bubbleSets[K](W),I.delete(C))}})};f(c,!1,!0),f(l,!0,!0),f(h,!1,!1),f(u,!0,!1);const g=this.bubbleSets.compute().sample(8).simplify(0).bSplines().simplify(0);return this.path=Eb(g.points.map(Si)),this.path},this.bindEvents(),this.bubbleSets=new _y(this.options)}bindEvents(){this.context.graph.on(ce.AFTER_RENDER,this.drawBubbleSets),this.context.graph.on(ce.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath)}init(){this.bubbleSets=new _y(this.options),this.members=new Map,this.avoidMembers=new Map}parseOptions(){const t=this.options,{type:e,key:n,members:i,avoidMembers:a}=t,s=L3(t,["type","key","members","avoidMembers"]),o=Object.keys(s).reduce((A,l)=>(l in Wg?A.bubbleSetOptions[l]=s[l]:A.style[l]=s[l],A),{style:{},bubbleSetOptions:{}});return Object.assign({type:e,key:n,members:i,avoidMembers:a},o)}addMember(t){const e=Array.isArray(t)?t:[t];e.some(n=>this.options.avoidMembers.includes(n))&&(this.options.avoidMembers=this.options.avoidMembers.filter(n=>!e.includes(n))),this.options.members=[...new Set([...this.options.members,...e])],this.drawBubbleSets()}removeMember(t){const e=Array.isArray(t)?t:[t];this.options.members=this.options.members.filter(n=>!e.includes(n)),this.drawBubbleSets()}updateMember(t){this.options.members=jt(t)?t(this.options.members):t,this.drawBubbleSets()}getMember(){return this.options.members}addAvoidMember(t){const e=Array.isArray(t)?t:[t];e.some(n=>this.options.members.includes(n))&&(this.options.members=this.options.members.filter(n=>!e.includes(n))),this.options.avoidMembers=[...new Set([...this.options.avoidMembers,...e])],this.drawBubbleSets()}removeAvoidMember(t){const e=Array.isArray(t)?t:[t];this.options.avoidMembers.some(n=>e.includes(n))&&(this.options.avoidMembers=this.options.avoidMembers.filter(n=>!e.includes(n)),this.drawBubbleSets())}updateAvoidMember(t){this.options.avoidMembers=Array.isArray(t)?t:[t],this.drawBubbleSets()}getAvoidMember(){return this.options.avoidMembers}destroy(){this.context.graph.off(ce.AFTER_RENDER,this.drawBubbleSets),this.context.graph.off(ce.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath),this.shape.destroy(),super.destroy()}}Zg.defaultOptions=Object.assign({members:[],avoidMembers:[],fill:"lightblue",fillOpacity:.2,stroke:"blue",strokeOpacity:.2},Wg);const N3=(r,t)=>(Array.isArray(t)?t:[t]).map(n=>{const i=r.getElementRenderBounds(n);return new Ri(i.min[0],i.min[1],to(i),eo(i))}),k3=(r,t)=>(Array.isArray(t)?t:[t]).map(n=>{const i=r.getEdgeData(n),a=r.getElementPosition(i.source),s=r.getElementPosition(i.target);return yi.from({x1:a[0],y1:a[1],x2:s[0],y2:s[1]})});class X9 extends null{constructor(t,e){super(t,e),this.setOptions=n=>{const i={cameraType:"setType",near:"setNear",far:"setFar",fov:"setFov",aspect:"setAspect",projectionMode:"setProjectionMode",distance:"setDistance",minDistance:"setMinDistance",maxDistance:"setMaxDistance",roll:"setRoll",elevation:"setElevation",azimuth:"setAzimuth"},a=(s,o)=>{switch(s){case"projectionMode":return o==="perspective"?1:0;case"cameraType":return{orbiting:0,exploring:1,tracking:2}[o];case"aspect":return typeof o=="number"?o:this.getCanvasAspect();default:return o}};Object.entries(i).forEach(([s,o])=>{const A=n[s];if(A!==void 0){const l=a(s,A);this.context.canvas.getCamera()[o](l)}})},this.bindEvents()}update(t){this.setOptions(t),super.update(t)}bindEvents(){this.context.graph.once(GraphEvent.BEFORE_DRAW,()=>this.setOptions(this.options))}getCanvasAspect(){const[t,e]=this.context.viewport.getCanvasSize();return t/e}}function Q3(r){return`
|
|
|
<ul class="g6-contextmenu-ul">
|
|
|
${r.map(t=>`<li class="g6-contextmenu-li" value="${t.value}">${t.name}</li>`).join("")}
|
|
|
</ul>
|
|
|
`}const U3=`
|
|
|
.g6-contextmenu {
|
|
|
font-size: 12px;
|
|
|
background-color: rgba(255, 255, 255, 0.96);
|
|
|
border-radius: 4px;
|
|
|
overflow: hidden;
|
|
|
box-shadow: rgba(0, 0, 0, 0.12) 0px 6px 12px 0px;
|
|
|
transition: visibility 0.2s cubic-bezier(0.23, 1, 0.32, 1) 0s, left 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s, top 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s;
|
|
|
}
|
|
|
|
|
|
.g6-contextmenu-ul {
|
|
|
max-width: 256px;
|
|
|
min-width: 96px;
|
|
|
list-style: none;
|
|
|
padding: 0;
|
|
|
margin: 0;
|
|
|
}
|
|
|
|
|
|
.g6-contextmenu-li {
|
|
|
padding: 8px 12px;
|
|
|
cursor: pointer;
|
|
|
user-select: none;
|
|
|
}
|
|
|
|
|
|
.g6-contextmenu-li:hover {
|
|
|
background-color: #f5f5f5;
|
|
|
cursor: pointer;
|
|
|
}
|
|
|
`;var BC=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class jg extends mi{constructor(t,e){super(t,Object.assign({},jg.defaultOptions,e)),this.targetElement=null,this.onTriggerEvent=n=>{var i;(i=n.preventDefault)===null||i===void 0||i.call(n),this.show(n)},this.onMenuItemClick=n=>{const{onClick:i,trigger:a}=this.options;if(n.target instanceof HTMLElement&&n.target.className.includes("g6-contextmenu-li")){const s=n.target.getAttribute("value");i==null||i(s,n.target,this.targetElement),this.hide()}a!=="click"&&this.hide()},this.initElement(),this.update(e)}initElement(){this.$element=Hc("contextmenu",!1,{zIndex:"99"});const{className:t}=this.options;t&&this.$element.classList.add(t),this.context.canvas.getContainer().appendChild(this.$element),Uy("g6-contextmenu-css","style",{},U3,document.head)}show(t){return BC(this,void 0,void 0,function*(){const{enable:e,offset:n}=this.options;if(typeof e=="function"&&!e(t)||!e){this.hide();return}const i=yield this.getDOMContent(t);i instanceof HTMLElement?(this.$element.innerHTML="",this.$element.appendChild(i)):this.$element.innerHTML=i;const a=this.context.graph.getCanvas().getContainer().getBoundingClientRect();this.$element.style.left=`${t.client.x-a.left+n[0]}px`,this.$element.style.top=`${t.client.y-a.top+n[1]}px`,this.$element.style.display="block",this.targetElement=t.target})}hide(){this.$element.style.display="none",this.targetElement=null}update(t){this.unbindEvents(),super.update(t),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy(),this.$element.remove()}getDOMContent(t){return BC(this,void 0,void 0,function*(){const{getContent:e,getItems:n}=this.options;return n?Q3(yield n(t)):yield e(t)})}bindEvents(){const{graph:t}=this.context,{trigger:e}=this.options;t.on(`canvas:${e}`,this.onTriggerEvent),t.on(`node:${e}`,this.onTriggerEvent),t.on(`edge:${e}`,this.onTriggerEvent),t.on(`combo:${e}`,this.onTriggerEvent),document.addEventListener("click",this.onMenuItemClick)}unbindEvents(){const{graph:t}=this.context,{trigger:e}=this.options;t.off(`canvas:${e}`,this.onTriggerEvent),t.off(`node:${e}`,this.onTriggerEvent),t.off(`edge:${e}`,this.onTriggerEvent),t.off(`combo:${e}`,this.onTriggerEvent),document.removeEventListener("click",this.onMenuItemClick)}}jg.defaultOptions={trigger:"contextmenu",offset:[4,4],loadingContent:'<div class="g6-contextmenu-loading">Loading...</div>',getContent:()=>"It is a empty context menu.",enable:()=>!0};class Yg extends mi{constructor(t,e){super(t,Object.assign({},Yg.defaultOptions,e)),this.edgeBundles={},this.edgePoints={},this.onBundle=()=>{const{model:n,element:i}=this.context,a=n.getEdgeData();this.divideEdges(this.options.divisions);const{cycles:s,iterRate:o,divRate:A}=this.options;let{lambda:l,divisions:c,iterations:u}=this.options;for(let h=0;h<s;h++){for(let f=0;f<u;f++){const d={};a.forEach(g=>{var v;if(g.source===g.target)return;const y=Pt(g);d[y]=this.getEdgeForces(g,c,l);for(let E=0;E<c+1;E++)(v=this.edgePoints)[y]||(v[y]=[]),this.edgePoints[y][E]=tn(this.edgePoints[y][E],d[y][E])})}l/=2,c*=A,u*=o,this.divideEdges(c)}a.forEach(h=>{const f=Pt(h),d=i.getElement(f);d==null||d.update({d:ay(this.edgePoints[f])})})},this.bindEvents()}get nodeMap(){const t=this.context.model.getNodeData();return Object.fromEntries(t.map(e=>[Pt(e),pl(Ai(e))]))}divideEdges(t){this.context.model.getEdgeData().forEach(n=>{var i;const a=Pt(n);(i=this.edgePoints)[a]||(i[a]=[]);const s=this.nodeMap[n.source],o=this.nodeMap[n.target];if(t===1)this.edgePoints[a].push(s),this.edgePoints[a].push(bs(tn(s,o),2)),this.edgePoints[a].push(o);else{const l=(this.edgePoints[a].length===0?lr(s,o):H3(this.edgePoints[a]))/(t+1);let c=l;const u=[s];for(let h=1;h<this.edgePoints[a].length;h++){const f=this.edgePoints[a][h-1],d=this.edgePoints[a][h];let g=lr(d,f);for(;g>c;){const v=c/g,y=tn(f,Bs(tr(d,f),v));u.push(y),g-=c,c=l}c-=g}u.push(o),this.edgePoints[a]=u}})}getVectorPosition(t){const e=this.nodeMap[t.source],n=this.nodeMap[t.target],[i,a]=tr(n,e),s=lr(e,n);return{source:e,target:n,vx:i,vy:a,length:s}}measureEdgeCompatibility(t,e){const n=this.getVectorPosition(t),i=this.getVectorPosition(e),a=P3(n,i),s=D3(n,i),o=R3(n,i),A=_3(n,i);return a*s*o*A}getEdgeBundles(){const t={},e=this.options.bundleThreshold,n=this.context.model.getEdgeData();return n.forEach((i,a)=>{n.forEach((s,o)=>{var A,l;if(o<=a)return;this.measureEdgeCompatibility(i,s)>=e&&(t[A=Pt(i)]||(t[A]=[]),t[Pt(i)].push(s),t[l=Pt(s)]||(t[l]=[]),t[Pt(s)].push(i))})}),t}getSpringForce(t,e){const{pre:n,cur:i,next:a}=t;return Bs(tr(tn(n,a),Bs(i,2)),e)}getElectrostaticForce(t,e){ro(this.edgeBundles)&&(this.edgeBundles=this.getEdgeBundles());const n=this.edgeBundles[Pt(e)];let i=[0,0];return n==null||n.forEach(a=>{const s=this.edgePoints[Pt(a)][t],o=this.edgePoints[Pt(e)][t],A=tr(s,o),l=lr(s,o);i=tn(i,Bs(A,1/l))}),i}getEdgeForces(t,e,n){const i=this.nodeMap[t.source],a=this.nodeMap[t.target],s=this.options.K/(lr(i,a)*(e+1)),o=[[0,0]],A=Pt(t);for(let l=1;l<e;l++){const c=this.getSpringForce({pre:this.edgePoints[A][l-1],cur:this.edgePoints[A][l],next:this.edgePoints[A][l+1]||[0,0]},s),u=this.getElectrostaticForce(l,t);o.push(Bs(tn(c,u),n))}return o.push([0,0]),o}bindEvents(){const{graph:t}=this.context;t.on(ce.AFTER_RENDER,this.onBundle)}unbindEvents(){const{graph:t}=this.context;t.off(ce.AFTER_RENDER,this.onBundle)}destroy(){this.unbindEvents(),super.destroy()}}Yg.defaultOptions={K:.1,lambda:.1,divisions:1,divRate:2,cycles:6,iterations:90,iterRate:2/3,bundleThreshold:.6};const P3=(r,t)=>Math.abs(vL([r.vx,r.vy],[t.vx,t.vy])/(r.length*t.length)),D3=(r,t)=>{const e=(r.length+t.length)/2;return 2/(e/Math.min(r.length,t.length)+Math.max(r.length,t.length)/e)},R3=(r,t)=>{const e=(r.length+t.length)/2,n=bs(tn(r.source,r.target),2),i=bs(tn(t.source,t.target),2);return e/(e+lr(n,i))},bC=(r,t)=>{if(t.source[0]===t.target[0])return[t.source[0],r[1]];if(t.source[1]===t.target[1])return[r[0],t.source[1]];const e=(t.source[1]-t.target[1])/(t.source[0]-t.target[0]),n=(e*e*t.source[0]+e*(r[1]-t.source[1])+r[0])/(e*e+1),i=e*(n-t.source[0])+t.source[1];return[n,i]},xC=(r,t)=>{const e=bC(t.source,r),n=bC(t.target,r),i=bs(tn(e,n),2),a=bs(tn(r.source,r.target),2);return lr(e,n)===0?0:Math.max(0,1-2*lr(a,i)/lr(e,n))},_3=(r,t)=>Math.min(xC(r,t),xC(t,r)),H3=r=>{let t=0;for(let e=1;e<r.length;e++)t+=lr(r[e],r[e-1]);return t},G3={fill:"#fff",fillOpacity:1,lineWidth:1,stroke:"#000",strokeOpacity:.8,zIndex:-1/0},CC=.05;class Xg extends mi{constructor(t,e){super(t,Object.assign({},Xg.defaultOptions,e)),this.shapes=new Map,this.r=this.options.r,this.onEdgeFilter=n=>{if(this.options.trigger==="drag"&&this.isLensOn)return;const i=Si(n.canvas);this.renderLens(i),this.renderFocusElements()},this.renderLens=n=>{const i=Object.assign({},G3,this.options.style);this.isLensOn||(this.lens=new wl({style:i}),this.canvas.appendChild(this.lens)),Object.assign(i,xs(n),{size:this.r*2}),this.lens.update(i)},this.getFilterData=()=>{const{filter:n}=this.options,{model:i}=this.context,a=i.getData();if(!n)return a;const{nodes:s,edges:o,combos:A}=a;return{nodes:s.filter(l=>n(Pt(l),"node")),edges:o.filter(l=>n(Pt(l),"edge")),combos:A.filter(l=>n(Pt(l),"combo"))}},this.getFocusElements=n=>{const{nodes:i,edges:a}=this.getFilterData(),s=i.filter(l=>lr(Ai(l),n)<this.r),o=s.map(l=>Pt(l)),A=a.filter(l=>{const{source:c,target:u}=l,h=o.includes(c),f=o.includes(u);switch(this.options.nodeType){case"both":return h&&f;case"either":return h!==f;case"source":return h&&!f;case"target":return!h&&f;default:return!1}});return{nodes:s,edges:A}},this.renderFocusElements=()=>{const{element:n,graph:i}=this.context;if(!this.isLensOn)return;const a=this.lens.getCenter(),{nodes:s,edges:o}=this.getFocusElements(a),A=new Set,l=c=>{const u=Pt(c);A.add(u);const h=n.getElement(u);if(!h)return;const f=this.shapes.get(u)||h.cloneNode();f.setPosition(h.getPosition()),f.id=h.id,this.shapes.has(u)?Object.entries(h.attributes).forEach(([v,y])=>{f.style[v]!==y&&(f.style[v]=y)}):(this.canvas.appendChild(f),this.shapes.set(u,f));const d=i.getElementType(u),g=this.getElementStyle(d,c);f.update(g)};s.forEach(l),o.forEach(l),this.shapes.forEach((c,u)=>{A.has(u)||(c.destroy(),this.shapes.delete(u))})},this.scaleRByWheel=n=>{var i;this.options.preventDefault&&n.preventDefault();const{clientX:a,clientY:s,deltaX:o,deltaY:A}=n,{graph:l,canvas:c}=this.context,u=l.getCanvasByClient([a,s]),h=(i=this.lens)===null||i===void 0?void 0:i.getCenter();if(!this.isLensOn||lr(u,h)>this.r)return;const{maxR:f,minR:d}=this.options,g=o+A>0?1/(1-CC):1-CC,v=Math.min(...c.getSize())/2;this.r=Math.max(d||0,Math.min(f||v,this.r*g)),this.renderLens(h),this.renderFocusElements()},this.isLensDragging=!1,this.onDragStart=n=>{var i;const a=Si(n.canvas),s=(i=this.lens)===null||i===void 0?void 0:i.getCenter();!this.isLensOn||lr(a,s)>this.r||(this.isLensDragging=!0)},this.onDrag=n=>{if(!this.isLensDragging)return;const i=Si(n.canvas);this.renderLens(i),this.renderFocusElements()},this.onDragEnd=()=>{this.isLensDragging=!1},this.bindEvents()}get canvas(){return this.context.canvas.getLayer("transient")}get isLensOn(){return this.lens&&!this.lens.destroyed}getElementStyle(t,e){const n=t==="node"?this.options.nodeStyle:this.options.edgeStyle;return typeof n=="function"?n(e):n}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var t;const{graph:e}=this.context,{trigger:n,scaleRBy:i}=this.options,a=e.getCanvas().getLayer();["click","drag"].includes(n)&&a.addEventListener(Jt.CLICK,this.onEdgeFilter),n==="pointermove"?a.addEventListener(Jt.POINTER_MOVE,this.onEdgeFilter):n==="drag"&&(a.addEventListener(Jt.DRAG_START,this.onDragStart),a.addEventListener(Jt.DRAG,this.onDrag),a.addEventListener(Jt.DRAG_END,this.onDragEnd)),i==="wheel"&&((t=this.graphDom)===null||t===void 0||t.addEventListener(Jt.WHEEL,this.scaleRByWheel,{passive:!1}))}unbindEvents(){var t;const{graph:e}=this.context,{trigger:n,scaleRBy:i}=this.options,a=e.getCanvas().getLayer();["click","drag"].includes(n)&&a.removeEventListener(Jt.CLICK,this.onEdgeFilter),n==="pointermove"?a.removeEventListener(Jt.POINTER_MOVE,this.onEdgeFilter):n==="drag"&&(a.removeEventListener(Jt.DRAG_START,this.onDragStart),a.removeEventListener(Jt.DRAG,this.onDrag),a.removeEventListener(Jt.DRAG_END,this.onDragEnd)),i==="wheel"&&((t=this.graphDom)===null||t===void 0||t.removeEventListener(Jt.WHEEL,this.scaleRByWheel))}update(t){var e;this.unbindEvents(),super.update(t),this.r=(e=t.r)!==null&&e!==void 0?e:this.r,this.bindEvents()}destroy(){this.unbindEvents(),this.isLensOn&&this.lens.destroy(),this.shapes.forEach((t,e)=>{t.destroy(),this.shapes.delete(e)}),super.destroy()}}Xg.defaultOptions={trigger:"pointermove",r:60,nodeType:"both",filter:()=>!0,style:{lineWidth:2},nodeStyle:{label:!1},edgeStyle:{label:!0},scaleRBy:"wheel",preventDefault:!0};const K3={fill:"#ccc",fillOpacity:.1,lineWidth:2,stroke:"#000",strokeOpacity:.8,labelFontSize:12},SC=.05,MC=.1;class Jg extends mi{constructor(t,e){super(t,Object.assign({},Jg.defaultOptions,e)),this.r=this.options.r,this.d=this.options.d,this.onCreateFisheye=n=>{if(this.options.trigger==="drag"&&this.isLensOn)return;const i=Si(n.canvas);this.onMagnify(i)},this.onMagnify=n=>{n.some(isNaN)||(this.renderLens(n),this.renderFocusElements())},this.renderLens=n=>{const i=Object.assign({},K3,this.options.style);this.isLensOn||(this.lens=new wl({style:i}),this.canvas.appendChild(this.lens)),Object.assign(i,xs(n),{size:this.r*2,label:this.options.showDPercent,labelText:this.getDPercent()}),this.lens.update(i)},this.getDPercent=()=>{const{minD:n,maxD:i}=this.options;return`${Math.round((this.d-n)/(i-n)*100)}%`},this.prevMagnifiedStyleMap=new Map,this.prevOriginStyleMap=new Map,this.renderFocusElements=()=>{if(!this.isLensOn)return;const{graph:n}=this.context,i=this.lens.getCenter(),a=(this.d+1)*this.r,s=new Map,o=new Map;n.getNodeData().forEach(l=>{const c=Ai(l),u=lr(c,i);if(u>this.r)return;const h=a*u/(this.d*u+this.r),[f,d]=c,[g,v]=i,y=(f-g)/u,E=(d-v)/u,C=[g+h*y,v+h*E],I=Pt(l),R=this.getNodeStyle(l),K=Bl(n.getElementRenderStyle(I),Object.keys(R));s.set(I,Object.assign(Object.assign({},xs(C)),R)),o.set(I,Object.assign(Object.assign({},xs(c)),K))}),this.updateStyle(s,o)},this.getNodeStyle=n=>{const{nodeStyle:i}=this.options;return typeof i=="function"?i(n):i},this.updateStyle=(n,i)=>{const{graph:a,element:s}=this.context,{enter:o,exit:A,keep:l}=mA(Array.from(this.prevMagnifiedStyleMap.keys()),Array.from(n.keys()),h=>h),c=new Set,u=(h,f)=>{const d=s.getElement(h);d==null||d.update(f),a.getRelatedEdgesData(h).forEach(g=>{c.add(Pt(g))})};[...o,...l].forEach(h=>{u(h,n.get(h))}),A.forEach(h=>{u(h,this.prevOriginStyleMap.get(h)),this.prevOriginStyleMap.delete(h)}),c.forEach(h=>{const f=s.getElement(h);f==null||f.update({})}),this.prevMagnifiedStyleMap=n,i.forEach((h,f)=>{this.prevOriginStyleMap.has(f)||this.prevOriginStyleMap.set(f,h)})},this.isWheelValid=n=>{if(this.options.preventDefault&&n.preventDefault(),!this.isLensOn)return!1;const{clientX:i,clientY:a}=n,s=this.context.graph.getCanvasByClient([i,a]),o=this.lens.getCenter();return!(lr(s,o)>this.r)},this.scaleR=n=>{const{maxR:i,minR:a}=this.options,s=n?1/(1-SC):1-SC,o=Math.min(...this.context.canvas.getSize())/2;this.r=Math.max(a||0,Math.min(i||o,this.r*s))},this.scaleD=n=>{const{maxD:i,minD:a}=this.options,s=n?this.d+MC:this.d-MC;this.d=Math.max(a,Math.min(i,s))},this.scaleRByWheel=n=>{if(!this.isWheelValid(n))return;const{deltaX:i,deltaY:a}=n;this.scaleR(i+a>0);const s=this.lens.getCenter();this.onMagnify(s)},this.scaleDByWheel=n=>{if(!this.isWheelValid(n))return;const{deltaX:i,deltaY:a}=n;this.scaleD(i+a>0);const s=this.lens.getCenter();this.onMagnify(s)},this.isDragValid=n=>{if(this.options.preventDefault&&n.preventDefault(),!this.isLensOn)return!1;const i=Si(n.canvas),a=this.lens.getCenter();return!(lr(i,a)>this.r)},this.isLensDragging=!1,this.onDragStart=n=>{this.isDragValid(n)&&(this.isLensDragging=!0)},this.onDrag=n=>{if(!this.isLensDragging)return;const i=Si(n.canvas);this.onMagnify(i)},this.onDragEnd=()=>{this.isLensDragging=!1},this.scaleRByDrag=n=>{if(!this.isLensDragging)return;const{dx:i,dy:a}=n;this.scaleR(i-a>0);const s=this.lens.getCenter();this.onMagnify(s)},this.scaleDByDrag=n=>{if(!this.isLensDragging)return;const{dx:i,dy:a}=n;this.scaleD(i-a>0);const s=this.lens.getCenter();this.onMagnify(s)},this.bindEvents()}get canvas(){return this.context.canvas.getLayer("transient")}get isLensOn(){return this.lens&&!this.lens.destroyed}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var t;const{graph:e}=this.context,{trigger:n,scaleRBy:i,scaleDBy:a}=this.options,s=e.getCanvas().getLayer();if(["click","drag"].includes(n)&&s.addEventListener(Jt.CLICK,this.onCreateFisheye),n==="pointermove"&&s.addEventListener(Jt.POINTER_MOVE,this.onCreateFisheye),n==="drag"||i==="drag"||a==="drag"){s.addEventListener(Jt.DRAG_START,this.onDragStart),s.addEventListener(Jt.DRAG_END,this.onDragEnd);const o=n==="drag"?this.onDrag:i==="drag"?this.scaleRByDrag:this.scaleDByDrag;s.addEventListener(Jt.DRAG,o)}if(i==="wheel"||a==="wheel"){const o=i==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(t=this.graphDom)===null||t===void 0||t.addEventListener(Jt.WHEEL,o,{passive:!1})}}unbindEvents(){var t;const{graph:e}=this.context,{trigger:n,scaleRBy:i,scaleDBy:a}=this.options,s=e.getCanvas().getLayer();if(["click","drag"].includes(n)&&s.removeEventListener(Jt.CLICK,this.onCreateFisheye),n==="pointermove"&&s.removeEventListener(Jt.POINTER_MOVE,this.onCreateFisheye),n==="drag"||i==="drag"||a==="drag"){s.removeEventListener(Jt.DRAG_START,this.onDragStart),s.removeEventListener(Jt.DRAG_END,this.onDragEnd);const o=n==="drag"?this.onDrag:i==="drag"?this.scaleRByDrag:this.scaleDByDrag;s.removeEventListener(Jt.DRAG,o)}if(i==="wheel"||a==="wheel"){const o=i==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(t=this.graphDom)===null||t===void 0||t.removeEventListener(Jt.WHEEL,o)}}update(t){var e,n;this.unbindEvents(),super.update(t),this.r=(e=t.r)!==null&&e!==void 0?e:this.r,this.d=(n=t.d)!==null&&n!==void 0?n:this.d,this.bindEvents()}destroy(){var t;this.unbindEvents(),this.isLensOn&&((t=this.lens)===null||t===void 0||t.destroy()),this.prevMagnifiedStyleMap.clear(),this.prevOriginStyleMap.clear(),super.destroy()}}Jg.defaultOptions={trigger:"pointermove",r:120,d:1.5,maxD:5,minD:0,showDPercent:!0,style:{},nodeStyle:{label:!0},preventDefault:!0};class qg extends mi{constructor(t,e){super(t,Object.assign({},qg.defaultOptions,e)),this.$el=this.context.canvas.getContainer(),this.graphSize=[0,0],this.onFullscreenChange=()=>{var n,i,a,s;const o=!!document.fullscreenElement;this.options.autoFit&&this.setGraphSize(o),o?(i=(n=this.options).onEnter)===null||i===void 0||i.call(n):(s=(a=this.options).onExit)===null||s===void 0||s.call(a)},this.shortcut=new Nc(t.graph),this.bindEvents(),this.style=document.createElement("style"),document.head.appendChild(this.style),this.style.innerHTML=`
|
|
|
:not(:root):fullscreen::backdrop {
|
|
|
background: transparent;
|
|
|
}
|
|
|
`}bindEvents(){this.unbindEvents(),this.shortcut.unbindAll();const{request:t=[],exit:e=[]}=this.options.trigger;this.shortcut.bind(t,this.request),this.shortcut.bind(e,this.exit),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(i=>{document.addEventListener(i,this.onFullscreenChange,!1)})}unbindEvents(){this.shortcut.unbindAll(),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(e=>{document.removeEventListener(e,this.onFullscreenChange,!1)})}setGraphSize(t=!0){var e,n;let i,a;t?(i=((e=globalThis.screen)===null||e===void 0?void 0:e.width)||0,a=((n=globalThis.screen)===null||n===void 0?void 0:n.height)||0,this.graphSize=this.context.graph.getSize()):[i,a]=this.graphSize,this.context.graph.setSize(i,a),this.context.graph.render()}request(){document.fullscreenElement||!z3()||this.$el.requestFullscreen().catch(t=>{ha.warn(`Error attempting to enable full-screen: ${t.message} (${t.name})`)})}exit(){document.fullscreenElement&&document.exitFullscreen()}update(t){this.unbindEvents(),super.update(t),this.bindEvents()}destroy(){this.exit(),this.style.remove(),super.destroy()}}qg.defaultOptions={trigger:{},autoFit:!0};function z3(){return document.fullscreenEnabled||Reflect.get(document,"webkitFullscreenEnabled")||Reflect.get(document,"mozFullscreenEnabled")||Reflect.get(document,"msFullscreenEnabled")}class $g extends mi{constructor(t,e){super(t,Object.assign({},$g.defaultOptions,e)),this.$element=Hc("grid-line",!0),this.offset=[0,0],this.currentScale=1,this.followZoom=i=>{const{data:{scale:a,origin:s}}=i;if(!a||s===void 0&&this.context.viewport===void 0)return;const o=this.currentScale;this.currentScale=a;const A=a/o,l=Bs(s||this.context.graph.getCanvasCenter(),1-A),c=this.baseSize*a,u=Bs(this.offset,A),h=Km(u,c),f=tn(h,l);this.$element.style.backgroundSize=`${c}px ${c}px`,this.$element.style.backgroundPosition=`${f[0]}px ${f[1]}px`,this.offset=Km(f,c)},this.followTranslate=i=>{if(!this.options.follow)return;const{data:{translate:a}}=i;a&&this.updateOffset(a)},this.onTransform=i=>{const a=this.parseFollow(this.options.follow);a.zoom&&this.followZoom(i),a.translate&&this.followTranslate(i)},this.context.canvas.getContainer().prepend(this.$element),this.baseSize=this.options.size,this.updateStyle(),this.bindEvents()}update(t){super.update(t),t.size!==void 0&&(this.baseSize=t.size),this.updateStyle()}bindEvents(){const{graph:t}=this.context;t.on(ce.AFTER_TRANSFORM,this.onTransform)}updateStyle(){const{stroke:t,lineWidth:e,border:n,borderLineWidth:i,borderStroke:a,borderStyle:s}=this.options,o=this.baseSize*this.currentScale;Object.assign(this.$element.style,{border:n?`${i}px ${s} ${a}`:"none",backgroundImage:`linear-gradient(${t} ${e}px, transparent ${e}px), linear-gradient(90deg, ${t} ${e}px, transparent ${e}px)`,backgroundSize:`${o}px ${o}px`,backgroundRepeat:"repeat"})}updateOffset(t){const e=this.baseSize*this.currentScale;this.offset=Km(tn(this.offset,t),e),this.$element.style.backgroundPosition=`${this.offset[0]}px ${this.offset[1]}px`}parseFollow(t){var e,n;return Jo(t)?{translate:t,zoom:t}:{translate:(e=t==null?void 0:t.translate)!==null&&e!==void 0?e:!1,zoom:(n=t==null?void 0:t.zoom)!==null&&n!==void 0?n:!1}}destroy(){this.context.graph.off(ce.AFTER_TRANSFORM,this.onTransform),this.$element.remove(),super.destroy()}}$g.defaultOptions={border:!0,borderLineWidth:1,borderStroke:"#eee",borderStyle:"solid",lineWidth:1,size:20,stroke:"#eee"};function Hy(r){const t={Added:new Map,Updated:new Map,Removed:new Map};return r.forEach(e=>{const{type:n,value:i}=e,a=Pt(i);if(n==="NodeAdded"||n==="EdgeAdded"||n==="ComboAdded")t.Added.set(a,e);else if(n==="NodeUpdated"||n==="EdgeUpdated"||n==="ComboUpdated")if(t.Added.has(a))t.Added.set(a,{type:n.replace("Updated","Added"),value:i});else if(t.Updated.has(a)){const{original:s}=t.Updated.get(a);t.Updated.set(a,{type:n,value:i,original:s})}else t.Removed.has(a)||t.Updated.set(a,e);else(n==="NodeRemoved"||n==="EdgeRemoved"||n==="ComboRemoved")&&(t.Added.has(a)?t.Added.delete(a):(t.Updated.has(a)&&t.Updated.delete(a),t.Removed.set(a,e)))}),[...Array.from(t.Added.values()),...Array.from(t.Updated.values()),...Array.from(t.Removed.values())]}function TC(r){const{NodeAdded:t=[],NodeUpdated:e=[],NodeRemoved:n=[],EdgeAdded:i=[],EdgeUpdated:a=[],EdgeRemoved:s=[],ComboAdded:o=[],ComboUpdated:A=[],ComboRemoved:l=[]}=Sd(r,c=>c.type);return{add:{nodes:t,edges:i,combos:o},update:{nodes:e,edges:a,combos:A},remove:{nodes:n,edges:s,combos:l}}}function FC(r,t){for(const e in r)Br(r[e])&&!Array.isArray(r[e])&&r[e]!==null?(t[e]||(t[e]={}),FC(r[e],t[e])):t[e]===void 0&&(t[e]=sh(e))}function V3(r,t=!1,e){const n={animation:t,current:{add:{},update:{},remove:{}},original:{add:{},update:{},remove:{}}},{add:i,update:a,remove:s}=TC(Hy(r));return["nodes","edges","combos"].forEach(o=>{a[o]&&a[o].forEach(A=>{var l,c;const u=Object.assign({},A.value);let h=Object.assign({},A.original);if(e){const f=e.graph.getElementType(Pt(A.original)),d=f==="edge"?"stroke":"fill",g=e.element.getElementComputedStyle(f,A.original);h=Object.assign(Object.assign({},A.original),{style:Object.assign({[d]:g[d]},A.original.style)})}FC(u,h),(l=n.current.update)[o]||(l[o]=[]),n.current.update[o].push(u),(c=n.original.update)[o]||(c[o]=[]),n.original.update[o].push(h)}),i[o]&&i[o].forEach(A=>{var l,c;const u=Object.assign({},A.value);(l=n.current.add)[o]||(l[o]=[]),n.current.add[o].push(u),(c=n.original.remove)[o]||(c[o]=[]),n.original.remove[o].push(u)}),s[o]&&s[o].forEach(A=>{var l,c;const u=Object.assign({},A.value);(l=n.current.remove)[o]||(l[o]=[]),n.current.remove[o].push(u),(c=n.original.add)[o]||(c[o]=[]),n.original.add[o].push(u)})}),n}class tv extends mi{constructor(t,e){super(t,Object.assign({},tv.defaultOptions,e)),this.batchChanges=null,this.batchAnimation=!1,this.undoStack=[],this.redoStack=[],this.freezed=!1,this.executeCommand=(i,a=!0)=>{var s,o,A;this.freezed=!0,(o=(s=this.options).executeCommand)===null||o===void 0||o.call(s,i);const l=a?i.original:i.current;this.context.graph.addData(l.add),this.context.graph.updateData(l.update),this.context.graph.removeData(ZB(l.remove,!1)),(A=this.context.element)===null||A===void 0||A.draw({silence:!0,animation:i.animation}),this.freezed=!1},this.addCommand=i=>{var a;if(!this.freezed){if(i.type===ce.AFTER_DRAW){const{dataChanges:s=[],animation:o=!0}=i.data;if(!((a=this.context.batch)===null||a===void 0)&&a.isBatching){if(!this.batchChanges)return;this.batchChanges.push(s),this.batchAnimation&&(this.batchAnimation=o);return}this.batchChanges=[s],this.batchAnimation=o}this.undoStackPush(V3(this.batchChanges.flat(),this.batchAnimation,this.context)),this.notify(dA.ADD,this.undoStack[this.undoStack.length-1])}},this.initBatchCommand=i=>{const{initiate:a}=i.data;this.batchAnimation=!1,a?this.batchChanges=[]:this.undoStack.pop()||(this.batchChanges=null)},this.emitter=new Bg;const{graph:n}=this.context;n.on(ce.AFTER_DRAW,this.addCommand),n.on(ce.BATCH_START,this.initBatchCommand),n.on(ce.BATCH_END,this.addCommand)}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}undo(){var t,e,n,i;const a=this.undoStack.pop();if(a){if(this.executeCommand(a),((e=(t=this.options).beforeAddCommand)===null||e===void 0?void 0:e.call(t,a,!1))===!1)return;this.redoStack.push(a),(i=(n=this.options).afterAddCommand)===null||i===void 0||i.call(n,a,!1),this.notify(dA.UNDO,a)}return this}redo(){const t=this.redoStack.pop();return t&&(this.executeCommand(t,!1),this.undoStackPush(t),this.notify(dA.REDO,t)),this}undoAndCancel(){const t=this.undoStack.pop();return t&&(this.executeCommand(t,!1),this.redoStack=[],this.notify(dA.CANCEL,t)),this}undoStackPush(t){var e,n,i,a;const{stackSize:s}=this.options;s!==0&&this.undoStack.length>=s&&this.undoStack.shift(),((n=(e=this.options).beforeAddCommand)===null||n===void 0?void 0:n.call(e,t,!0))!==!1&&(this.undoStack.push(t),(a=(i=this.options).afterAddCommand)===null||a===void 0||a.call(i,t,!0))}clear(){this.undoStack=[],this.redoStack=[],this.batchChanges=null,this.batchAnimation=!1,this.notify(dA.CLEAR,null)}notify(t,e){this.emitter.emit(t,{cmd:e}),this.emitter.emit(dA.CHANGE,{cmd:e})}on(t,e){this.emitter.on(t,e)}destroy(){const{graph:t}=this.context;t.off(ce.AFTER_DRAW,this.addCommand),t.off(ce.BATCH_START,this.initBatchCommand),t.off(ce.BATCH_END,this.addCommand),this.emitter.off(),super.destroy(),this.undoStack=[],this.redoStack=[]}}tv.defaultOptions={stackSize:0};const Gy={toXy(r,t){if(!t)return[...r];const e=t[0].slice(1),n=t[1].slice(1);return r.map(i=>[i[e],i[n]])},fromXy(r,t){if(!t)return[...r];const e=t[0].slice(1),n=t[1].slice(1);return r.map(([i,a])=>({[e]:i,[n]:a}))}};class W3{constructor(t,e){this._cells=[],this._cellSize=e,this._reverseCellSize=1/e;for(const n of t){const i=this.coordToCellNum(n[0]),a=this.coordToCellNum(n[1]);this._cells[i]||(this._cells[i]=[]),this._cells[i][a]||(this._cells[i][a]=[]),this._cells[i][a].push(n)}}cellPoints(t,e){var n;return((n=this._cells[t])===null||n===void 0?void 0:n[e])||[]}rangePoints(t){const e=this.coordToCellNum(t[0]),n=this.coordToCellNum(t[1]),i=this.coordToCellNum(t[2]),a=this.coordToCellNum(t[3]),s=[];for(let o=e;o<=i;o++)for(let A=n;A<=a;A++){const l=this.cellPoints(o,A);for(const c of l)s.push(c)}return s}removePoint(t){const e=this.coordToCellNum(t[0]),n=this.coordToCellNum(t[1]),i=this._cells[e][n],a=i.findIndex(([s,o])=>s===t[0]&&o===t[1]);return a>-1&&i.splice(a,1),i}trunc(t){return Math.trunc(t)}coordToCellNum(t){return this.trunc(t*this._reverseCellSize)}extendBbox(t,e){return[t[0]-e*this._cellSize,t[1]-e*this._cellSize,t[2]+e*this._cellSize,t[3]+e*this._cellSize]}}function Z3(r,t){return new W3(r,t)}const OC=+(Math.pow(2,27)+1);function ev(r,t,e){const n=r*t,i=OC*r,a=i-r,s=i-a,o=r-s,A=OC*t,l=A-t,c=A-l,u=t-c,d=n-s*c-o*c-s*u,g=o*u-d;return e?(e[0]=g,e[1]=n,e):[g,n]}function j3(r,t,e){const n=r+t,i=n-r,a=n-i,s=t-i,o=r-a;return e?(e[0]=o+s,e[1]=n,e):[o+s,n]}function Y3(r,t){const e=r.length;if(e===1){const o=ev(r[0],t);return o[0]?o:[o[1]]}const n=new Array(2*e),i=[.1,.1],a=[.1,.1];let s=0;ev(r[0],t,i),i[0]&&(n[s++]=i[0]);for(let o=1;o<e;++o){ev(r[o],t,a);const A=i[1];j3(A,a[0],i),i[0]&&(n[s++]=i[0]);const l=a[1],c=i[1],u=l+c,h=u-l,f=c-h;i[1]=u,f&&(n[s++]=f)}return i[1]&&(n[s++]=i[1]),s===0&&(n[s++]=0),n.length=s,n}function X3(r,t){const e=r+t,n=e-r,i=e-n,a=t-n,o=r-i+a;return o?[o,e]:[e]}function J3(r,t){const e=r.length|0,n=t.length|0;if(e===1&&n===1)return X3(r[0],-t[0]);const i=e+n,a=new Array(i);let s=0,o=0,A=0;const l=Math.abs;let c=r[o],u=l(c),h=-t[A],f=l(h),d,g;u<f?(g=c,o+=1,o<e&&(c=r[o],u=l(c))):(g=h,A+=1,A<n&&(h=-t[A],f=l(h))),o<e&&u<f||A>=n?(d=c,o+=1,o<e&&(c=r[o],u=l(c))):(d=h,A+=1,A<n&&(h=-t[A],f=l(h)));let v=d+g,y=v-d,E=g-y,C=E,I=v,R,K,W,V,J;for(;o<e&&A<n;)u<f?(d=c,o+=1,o<e&&(c=r[o],u=l(c))):(d=h,A+=1,A<n&&(h=-t[A],f=l(h))),g=C,v=d+g,y=v-d,E=g-y,E&&(a[s++]=E),R=I+v,K=R-I,W=R-K,V=v-K,J=I-W,C=J+V,I=R;for(;o<e;)d=c,g=C,v=d+g,y=v-d,E=g-y,E&&(a[s++]=E),R=I+v,K=R-I,W=R-K,V=v-K,J=I-W,C=J+V,I=R,o+=1,o<e&&(c=r[o]);for(;A<n;)d=h,g=C,v=d+g,y=v-d,E=g-y,E&&(a[s++]=E),R=I+v,K=R-I,W=R-K,V=v-K,J=I-W,C=J+V,I=R,A+=1,A<n&&(h=-t[A]);return C&&(a[s++]=C),I&&(a[s++]=I),s||(a[s++]=0),a.length=s,a}function q3(r,t){const e=r+t,n=e-r,i=e-n,a=t-n,o=r-i+a;return o?[o,e]:[e]}function $3(r,t){const e=r.length|0,n=t.length|0;if(e===1&&n===1)return q3(r[0],t[0]);const i=e+n,a=new Array(i);let s=0,o=0,A=0;const l=Math.abs;let c=r[o],u=l(c),h=t[A],f=l(h),d,g;u<f?(g=c,o+=1,o<e&&(c=r[o],u=l(c))):(g=h,A+=1,A<n&&(h=t[A],f=l(h))),o<e&&u<f||A>=n?(d=c,o+=1,o<e&&(c=r[o],u=l(c))):(d=h,A+=1,A<n&&(h=t[A],f=l(h)));let v=d+g,y=v-d,E=g-y,C=E,I=v,R,K,W,V,J;for(;o<e&&A<n;)u<f?(d=c,o+=1,o<e&&(c=r[o],u=l(c))):(d=h,A+=1,A<n&&(h=t[A],f=l(h))),g=C,v=d+g,y=v-d,E=g-y,E&&(a[s++]=E),R=I+v,K=R-I,W=R-K,V=v-K,J=I-W,C=J+V,I=R;for(;o<e;)d=c,g=C,v=d+g,y=v-d,E=g-y,E&&(a[s++]=E),R=I+v,K=R-I,W=R-K,V=v-K,J=I-W,C=J+V,I=R,o+=1,o<e&&(c=r[o]);for(;A<n;)d=h,g=C,v=d+g,y=v-d,E=g-y,E&&(a[s++]=E),R=I+v,K=R-I,W=R-K,V=v-K,J=I-W,C=J+V,I=R,A+=1,A<n&&(h=t[A]);return C&&(a[s++]=C),I&&(a[s++]=I),s||(a[s++]=0),a.length=s,a}const IC=5,nv=11102230246251565e-32,tD=(3+16*nv)*nv,eD=(7+56*nv)*nv;function nD(r,t,e,n){return function(a,s,o){const A=r(r(t(s[1],o[0]),t(-o[1],s[0])),r(t(a[1],s[0]),t(-s[1],a[0]))),l=r(t(a[1],o[0]),t(-o[1],a[0])),c=n(A,l);return c[c.length-1]}}function rD(r,t,e,n){return function(a,s,o,A){const l=r(r(e(r(t(o[1],A[0]),t(-A[1],o[0])),s[2]),r(e(r(t(s[1],A[0]),t(-A[1],s[0])),-o[2]),e(r(t(s[1],o[0]),t(-o[1],s[0])),A[2]))),r(e(r(t(s[1],A[0]),t(-A[1],s[0])),a[2]),r(e(r(t(a[1],A[0]),t(-A[1],a[0])),-s[2]),e(r(t(a[1],s[0]),t(-s[1],a[0])),A[2])))),c=r(r(e(r(t(o[1],A[0]),t(-A[1],o[0])),a[2]),r(e(r(t(a[1],A[0]),t(-A[1],a[0])),-o[2]),e(r(t(a[1],o[0]),t(-o[1],a[0])),A[2]))),r(e(r(t(s[1],o[0]),t(-o[1],s[0])),a[2]),r(e(r(t(a[1],o[0]),t(-o[1],a[0])),-s[2]),e(r(t(a[1],s[0]),t(-s[1],a[0])),o[2])))),u=n(l,c);return u[u.length-1]}}function iD(r,t,e,n){return function(a,s,o,A,l){const c=r(r(r(e(r(e(r(t(A[1],l[0]),t(-l[1],A[0])),o[2]),r(e(r(t(o[1],l[0]),t(-l[1],o[0])),-A[2]),e(r(t(o[1],A[0]),t(-A[1],o[0])),l[2]))),s[3]),r(e(r(e(r(t(A[1],l[0]),t(-l[1],A[0])),s[2]),r(e(r(t(s[1],l[0]),t(-l[1],s[0])),-A[2]),e(r(t(s[1],A[0]),t(-A[1],s[0])),l[2]))),-o[3]),e(r(e(r(t(o[1],l[0]),t(-l[1],o[0])),s[2]),r(e(r(t(s[1],l[0]),t(-l[1],s[0])),-o[2]),e(r(t(s[1],o[0]),t(-o[1],s[0])),l[2]))),A[3]))),r(e(r(e(r(t(o[1],A[0]),t(-A[1],o[0])),s[2]),r(e(r(t(s[1],A[0]),t(-A[1],s[0])),-o[2]),e(r(t(s[1],o[0]),t(-o[1],s[0])),A[2]))),-l[3]),r(e(r(e(r(t(A[1],l[0]),t(-l[1],A[0])),s[2]),r(e(r(t(s[1],l[0]),t(-l[1],s[0])),-A[2]),e(r(t(s[1],A[0]),t(-A[1],s[0])),l[2]))),a[3]),e(r(e(r(t(A[1],l[0]),t(-l[1],A[0])),a[2]),r(e(r(t(a[1],l[0]),t(-l[1],a[0])),-A[2]),e(r(t(a[1],A[0]),t(-A[1],a[0])),l[2]))),-s[3])))),r(r(e(r(e(r(t(s[1],l[0]),t(-l[1],s[0])),a[2]),r(e(r(t(a[1],l[0]),t(-l[1],a[0])),-s[2]),e(r(t(a[1],s[0]),t(-s[1],a[0])),l[2]))),A[3]),r(e(r(e(r(t(s[1],A[0]),t(-A[1],s[0])),a[2]),r(e(r(t(a[1],A[0]),t(-A[1],a[0])),-s[2]),e(r(t(a[1],s[0]),t(-s[1],a[0])),A[2]))),-l[3]),e(r(e(r(t(o[1],A[0]),t(-A[1],o[0])),s[2]),r(e(r(t(s[1],A[0]),t(-A[1],s[0])),-o[2]),e(r(t(s[1],o[0]),t(-o[1],s[0])),A[2]))),a[3]))),r(e(r(e(r(t(o[1],A[0]),t(-A[1],o[0])),a[2]),r(e(r(t(a[1],A[0]),t(-A[1],a[0])),-o[2]),e(r(t(a[1],o[0]),t(-o[1],a[0])),A[2]))),-s[3]),r(e(r(e(r(t(s[1],A[0]),t(-A[1],s[0])),a[2]),r(e(r(t(a[1],A[0]),t(-A[1],a[0])),-s[2]),e(r(t(a[1],s[0]),t(-s[1],a[0])),A[2]))),o[3]),e(r(e(r(t(s[1],o[0]),t(-o[1],s[0])),a[2]),r(e(r(t(a[1],o[0]),t(-o[1],a[0])),-s[2]),e(r(t(a[1],s[0]),t(-s[1],a[0])),o[2]))),-A[3]))))),u=r(r(r(e(r(e(r(t(A[1],l[0]),t(-l[1],A[0])),o[2]),r(e(r(t(o[1],l[0]),t(-l[1],o[0])),-A[2]),e(r(t(o[1],A[0]),t(-A[1],o[0])),l[2]))),a[3]),e(r(e(r(t(A[1],l[0]),t(-l[1],A[0])),a[2]),r(e(r(t(a[1],l[0]),t(-l[1],a[0])),-A[2]),e(r(t(a[1],A[0]),t(-A[1],a[0])),l[2]))),-o[3])),r(e(r(e(r(t(o[1],l[0]),t(-l[1],o[0])),a[2]),r(e(r(t(a[1],l[0]),t(-l[1],a[0])),-o[2]),e(r(t(a[1],o[0]),t(-o[1],a[0])),l[2]))),A[3]),e(r(e(r(t(o[1],A[0]),t(-A[1],o[0])),a[2]),r(e(r(t(a[1],A[0]),t(-A[1],a[0])),-o[2]),e(r(t(a[1],o[0]),t(-o[1],a[0])),A[2]))),-l[3]))),r(r(e(r(e(r(t(o[1],l[0]),t(-l[1],o[0])),s[2]),r(e(r(t(s[1],l[0]),t(-l[1],s[0])),-o[2]),e(r(t(s[1],o[0]),t(-o[1],s[0])),l[2]))),a[3]),e(r(e(r(t(o[1],l[0]),t(-l[1],o[0])),a[2]),r(e(r(t(a[1],l[0]),t(-l[1],a[0])),-o[2]),e(r(t(a[1],o[0]),t(-o[1],a[0])),l[2]))),-s[3])),r(e(r(e(r(t(s[1],l[0]),t(-l[1],s[0])),a[2]),r(e(r(t(a[1],l[0]),t(-l[1],a[0])),-s[2]),e(r(t(a[1],s[0]),t(-s[1],a[0])),l[2]))),o[3]),e(r(e(r(t(s[1],o[0]),t(-o[1],s[0])),a[2]),r(e(r(t(a[1],o[0]),t(-o[1],a[0])),-s[2]),e(r(t(a[1],s[0]),t(-s[1],a[0])),o[2]))),-l[3])))),h=n(c,u);return h[h.length-1]}}function rv(r){return(r===3?nD:r===4?rD:iD)($3,ev,Y3,J3)}const aD=rv(3),sD=rv(4),Fl=[function(){return 0},function(){return 0},function(t,e){return e[0]-t[0]},function(t,e,n){const i=(t[1]-n[1])*(e[0]-n[0]),a=(t[0]-n[0])*(e[1]-n[1]),s=i-a;let o;if(i>0){if(a<=0)return s;o=i+a}else if(i<0){if(a>=0)return s;o=-(i+a)}else return s;const A=tD*o;return s>=A||s<=-A?s:aD(t,e,n)},function(t,e,n,i){const a=t[0]-i[0],s=e[0]-i[0],o=n[0]-i[0],A=t[1]-i[1],l=e[1]-i[1],c=n[1]-i[1],u=t[2]-i[2],h=e[2]-i[2],f=n[2]-i[2],d=s*c,g=o*l,v=o*A,y=a*c,E=a*l,C=s*A,I=u*(d-g)+h*(v-y)+f*(E-C),R=(Math.abs(d)+Math.abs(g))*Math.abs(u)+(Math.abs(v)+Math.abs(y))*Math.abs(h)+(Math.abs(E)+Math.abs(C))*Math.abs(f),K=eD*R;return I>K||-I>K?I:sD(t,e,n,i)}];function oD(r){let t=Fl[r.length];return t||(t=Fl[r.length]=rv(r.length)),t.apply(void 0,...r)}function AD(r,t,e,n,i,a,s){return function(...A){switch(A.length){case 0:case 1:return 0;case 2:return n(A[0],A[1]);case 3:return i(A[0],A[1],A[2]);case 4:return a(A[0],A[1],A[2],A[3]);case 5:return s(A[0],A[1],A[2],A[3],A[4])}return r(A)}}function lD(){for(;Fl.length<=IC;)Fl.push(rv(Fl.length));const r=AD(void 0,oD,...Fl);for(let t=0;t<=IC;++t)r[t]=Fl[t];return r}var Fh=lD();const LC=Fh[3];function cD(r){const t=r.length;if(t<3){const o=new Array(t);for(let A=0;A<t;++A)o[A]=A;return t===2&&r[0][0]===r[1][0]&&r[0][1]===r[1][1]?[0]:o}const e=new Array(t);for(let o=0;o<t;++o)e[o]=o;e.sort((o,A)=>{const l=r[o][0]-r[A][0];return l||r[o][1]-r[A][1]});const n=[e[0],e[1]],i=[e[0],e[1]];for(let o=2;o<t;++o){const A=e[o],l=r[A];let c=n.length;for(;c>1&&LC(r[n[c-2]],r[n[c-1]],l)<=0;)c-=1,n.pop();for(n.push(A),c=i.length;c>1&&LC(r[i[c-2]],r[i[c-1]],l)>=0;)c-=1,i.pop();i.push(A)}const a=new Array(i.length+n.length-2);let s=0;for(let o=0,A=n.length;o<A;++o)a[s++]=n[o];for(let o=i.length-2;o>0;--o)a[s++]=i[o];return a}function uD(r,t,e,n){for(let i=0;i<2;++i){const a=r[i],s=t[i],[o,A]=[Math.min(a,s),Math.max(a,s)],l=e[i],c=n[i],[u,h]=[Math.min(l,c),Math.max(l,c)];if(h<o||A<u)return!1}return!0}function hD(r,t,e,n){const i=Fh(r,e,n),a=Fh(t,e,n);if(i>0&&a>0||i<0&&a<0)return!1;const s=Fh(e,r,t),o=Fh(n,r,t);return s>0&&o>0||s<0&&o<0?!1:i===0&&a===0&&s===0&&o===0?uD(r,t,e,n):!0}function fD(r){const t=[r[0]];let e=r[0];for(let n=1;n<r.length;n++){const i=r[n];(e[0]!==i[0]||e[1]!==i[1])&&t.push(i),e=i}return t}function dD(r){return r.sort(function(t,e){return t[0]-e[0]||t[1]-e[1]})}function Ky(r,t){return Math.pow(t[0]-r[0],2)+Math.pow(t[1]-r[1],2)}function NC(r,t,e){const n=[t[0]-r[0],t[1]-r[1]],i=[e[0]-r[0],e[1]-r[1]],a=Ky(r,t),s=Ky(r,e);return(n[0]*i[0]+n[1]*i[1])/Math.sqrt(a*s)}function kC(r,t){for(let e=0;e<t.length-1;e++){const n=[t[e],t[e+1]];if(!(r[0][0]===n[0][0]&&r[0][1]===n[0][1]||r[0][0]===n[1][0]&&r[0][1]===n[1][1])&&hD(r[0],r[1],n[0],n[1]))return!0}return!1}function gD(r){let t=1/0,e=1/0,n=-1/0,i=-1/0;for(let a=r.length-1;a>=0;a--)r[a][0]<t&&(t=r[a][0]),r[a][1]<e&&(e=r[a][1]),r[a][0]>n&&(n=r[a][0]),r[a][1]>i&&(i=r[a][1]);return[n-t,i-e]}function vD(r){return[Math.min(r[0][0],r[1][0]),Math.min(r[0][1],r[1][1]),Math.max(r[0][0],r[1][0]),Math.max(r[0][1],r[1][1])]}function pD(r,t,e){let n=null,i=UC,a=UC,s,o;for(let A=0;A<t.length;A++)s=NC(r[0],r[1],t[A]),o=NC(r[1],r[0],t[A]),s>i&&o>a&&!kC([r[0],t[A]],e)&&!kC([r[1],t[A]],e)&&(i=s,a=o,n=t[A]);return n}function QC(r,t,e,n,i){let a=!1;for(let s=0;s<r.length-1;s++){const o=[r[s],r[s+1]],A=o[0][0]+","+o[0][1]+","+o[1][0]+","+o[1][1];if(Ky(o[0],o[1])<t||i.has(A))continue;let l=0,c=vD(o),u,h,f;do c=n.extendBbox(c,l),u=c[2]-c[0],h=c[3]-c[1],f=pD(o,n.rangePoints(c),r),l++;while(f===null&&(e[0]>u||e[1]>h));u>=e[0]&&h>=e[1]&&i.add(A),f!==null&&(r.splice(s+1,0,f),n.removePoint(f),a=!0)}return a?QC(r,t,e,n,i):r}function mD(r,t,e){const n=t||20,i=fD(dD(Gy.toXy(r,e)));if(i.length<4){const u=i.concat([i[0]]);return e?Gy.fromXy(u,e):u}const a=gD(i),s=[a[0]*PC,a[1]*PC],o=cD(i).reverse().map(u=>i[u]);o.push(o[0]);const A=i.filter(function(u){return o.indexOf(u)<0}),l=Math.ceil(1/(i.length/(a[0]*a[1]))),c=QC(o,Math.pow(n,2),s,Z3(A,l),new Set);return e?Gy.fromXy(c,e):c}const UC=Math.cos(90/(180/Math.PI)),PC=.6;function yD(r,t,e){if(r.length===1)return wD(r[0],t,e);if(r.length===2)return DC(r,t,e);if(r.length===3){const[n,i,a]=Vm(r);if(ib(n,i,a))return DC([n,a],t,e)}switch(e){case"smooth":return BD(r,t);case"sharp":return bD(r,t);case"rounded":default:return ED(r,t)}}const wD=(r,t,e)=>{if(e==="sharp")return[["M",r[0]-t,r[1]-t],["L",r[0]+t,r[1]-t],["L",r[0]+t,r[1]+t],["L",r[0]-t,r[1]+t],["Z"]];const n=[t,t,0,0,0];return[["M",r[0],r[1]-t],["A",...n,r[0],r[1]+t],["A",...n,r[0],r[1]-t]]},DC=(r,t,e)=>{const n=[t,t,0,0,0],i=e==="sharp"?tn(r[0],yA(Io(tr(r[0],r[1])),t)):r[0],a=e==="sharp"?tn(r[1],yA(Io(tr(r[1],r[0])),t)):r[1],s=yA(Io(Kd(tr(i,a),!1)),t),o=yA(s,-1),A=tn(i,s),l=tn(a,s),c=tn(a,o),u=tn(i,o);return e==="sharp"?[["M",A[0],A[1]],["L",l[0],l[1]],["L",c[0],c[1]],["L",u[0],u[1]],["Z"]]:[["M",A[0],A[1]],["L",l[0],l[1]],["A",...n,c[0],c[1]],["L",u[0],u[1]],["A",...n,A[0],A[1]]]},ED=(r,t)=>{const e=Vm(r).map((o,A)=>{const l=(A-2+r.length)%r.length,c=(A-1+r.length)%r.length,u=(A+1)%r.length,h=r[l],f=r[c],d=r[u],g=tr(h,f),v=tr(f,o),y=tr(o,d),E=(W,V)=>Gm(W,V,!0)<Math.PI,C=E(g,v),I=E(v,y),R=W=>yA(Io(Kd(W,!1)),t),K=R(v);return[{p:pl(C?tn(f,R(g)):tn(f,K)),concave:C&&f},{p:pl(I?tn(o,R(y)):tn(o,K)),concave:I&&o}]}),n=[t,t,0,0,0],i=e.findIndex((o,A)=>!e[(A-1+e.length)%e.length][0].concave&&!e[(A-1+e.length)%e.length][1].concave&&!o[0].concave&&!o[0].concave&&!o[1].concave),a=e.slice(i).concat(e.slice(0,i));let s=[];return a.flatMap((o,A)=>{const l=[],c=a[e.length-1];return A===0&&l.push(["M",...c[1].p]),o[0].concave?s.push(o[0].p,o[1].p):l.push(["A",...n,...o[0].p]),o[1].concave?s.unshift(o[1].p):l.push(["L",...o[1].p]),s.length===3&&(l.pop(),l.push(["C",...s.flat()]),s=[]),l})},BD=(r,t)=>{const e=Vm(r).map((n,i)=>{const a=r[(i+1)%r.length];return{p:n,v:Io(tr(a,n))}});return e.forEach((n,i)=>{const a=i>0?i-1:r.length-1,s=e[a].v,o=Io(tn(s,yA(n.v,Gm(s,n.v,!0)<Math.PI?1:-1)));n.p=tn(n.p,yA(o,t))}),Eb(e.map(n=>n.p))},bD=(r,t)=>{const n=r.map((a,s)=>{const o=r[s===0?r.length-1:s-1],A=uh(yA(Io(Kd(tr(o,a),!1)),t));return[tn(o,A),tn(a,A)]}).flat();return n.map((a,s)=>{if(s%2===0)return null;const o=[n[(s-1)%n.length],n[s%n.length]],A=[n[(s+1)%n.length],n[(s+2)%n.length]];return zm(o,A,!0)}).filter(Boolean).map((a,s)=>[s===0?"M":"L",a[0],a[1]]).concat([["Z"]])};var xD=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class iv extends mi{constructor(t,e){super(t,Object.assign({},iv.defaultOptions,e)),this.hullMemberIds=[],this.drawHull=()=>{if(!this.shape)this.shape=new ph({style:this.getHullStyle()}),this.context.canvas.appendChild(this.shape);else{const n=!Rr(this.optionsCache,this.options);this.shape.update(this.getHullStyle(n))}this.optionsCache=Object.assign({},this.options)},this.updateHullPath=n=>{this.shape&&this.options.members.includes(Pt(n.data))&&this.shape.update({d:this.getHullPath(!0)})},this.getHullPath=(n=!1)=>{const{graph:i}=this.context,a=this.getMember();if(a.length===0)return"";const s=a.map(l=>i.getNodeData(l)),o=mD(s.map(Ai),this.options.concavity).slice(1).reverse(),A=o.flatMap(l=>s.filter(c=>Rr(Ai(c),l)).map(Pt));return Rr(A,this.hullMemberIds)&&!n?this.path:(this.hullMemberIds=A,this.path=yD(o,this.getPadding(),this.options.corner),this.path)},this.bindEvents()}bindEvents(){this.context.graph.on(ce.AFTER_RENDER,this.drawHull),this.context.graph.on(ce.AFTER_ELEMENT_UPDATE,this.updateHullPath)}unbindEvents(){this.context.graph.off(ce.AFTER_RENDER,this.drawHull),this.context.graph.off(ce.AFTER_ELEMENT_UPDATE,this.updateHullPath)}getHullStyle(t){const e=this.options,{members:n,padding:i,corner:a}=e,s=xD(e,["members","padding","corner"]);return Object.assign(Object.assign({},s),{d:this.getHullPath(t)})}getPadding(){const{graph:t}=this.context;return this.hullMemberIds.reduce((n,i)=>{const{halfExtents:a}=t.getElementRenderBounds(i),s=Math.max(a[0],a[1]);return Math.max(n,s)},0)+this.options.padding}addMember(t){const e=Array.isArray(t)?t:[t];this.options.members=[...new Set([...this.options.members,...e])],this.shape.update({d:this.getHullPath()})}removeMember(t){const e=Array.isArray(t)?t:[t];this.options.members=this.options.members.filter(n=>!e.includes(n)),e.some(n=>this.hullMemberIds.includes(n))&&this.shape.update({d:this.getHullPath()})}updateMember(t){this.options.members=jt(t)?t(this.options.members):t,this.shape.update(this.getHullStyle(!0))}getMember(){return this.options.members}destroy(){this.unbindEvents(),this.shape.destroy(),this.hullMemberIds=[],super.destroy()}}iv.defaultOptions={members:[],padding:10,corner:"rounded",concavity:1/0,fill:"lightblue",fillOpacity:.2,labelOpacity:1,stroke:"blue",strokeOpacity:.2};function RC(r,t){t(r),r.children&&r.children.forEach(function(e){e&&RC(e,t)})}function Oh(r){av(r,!0)}function Ts(r){av(r,!1)}function av(r,t){var e=t?"visible":"hidden";RC(r,function(n){n.attr("visibility",e)})}var CD=5,_C=function(r,t,e,n){e===void 0&&(e=0),n===void 0&&(n=CD),Object.entries(t).forEach(function(i){var a=(0,j.CR)(i,2),s=a[0],o=a[1],A=r;Object.prototype.hasOwnProperty.call(t,s)&&(o?Lc(o)?(Lc(r[s])||(A[s]={}),e<n?_C(r[s],o,e+1,n):A[s]=t[s]):Ni(o)?(A[s]=[],A[s]=A[s].concat(o)):A[s]=o:A[s]=o)})},jr=function(r){for(var t=[],e=1;e<arguments.length;e++)t[e-1]=arguments[e];for(var n=0;n<t.length;n+=1)_C(r,t[n]);return r},SD=function(r){(0,j.ZT)(t,r);function t(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];var i=r.apply(this,(0,j.ev)([],(0,j.CR)(e),!1))||this;return i.isMutationObserved=!0,i.addEventListener(yn.INSERTED,function(){Ts(i)}),i}return t}(oi);function HC(r){var t=r.appendChild(new SD({class:"offscreen"}));return Ts(t),t}function MD(r){for(var t=r;t;){if(t.className==="offscreen")return!0;t=t.parent}return!1}function TD(){av(this,this.attributes.visibility!=="hidden")}var Sr=function(r){(0,j.ZT)(t,r);function t(e,n){n===void 0&&(n={});var i=r.call(this,jr({},{style:n},e))||this;return i.initialized=!1,i._defaultOptions=n,i}return Object.defineProperty(t.prototype,"offscreenGroup",{get:function(){return this._offscreen||(this._offscreen=HC(this)),this._offscreen},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"defaultOptions",{get:function(){return this._defaultOptions},enumerable:!1,configurable:!0}),t.prototype.connectedCallback=function(){this.render(this.attributes,this),this.bindEvents(this.attributes,this),this.initialized=!0},t.prototype.disconnectedCallback=function(){var e;(e=this._offscreen)===null||e===void 0||e.destroy()},t.prototype.attributeChangedCallback=function(e){e==="visibility"&&TD.call(this)},t.prototype.update=function(e,n){var i;return this.attr(jr({},this.attributes,e||{})),(i=this.render)===null||i===void 0?void 0:i.call(this,this.attributes,this,n)},t.prototype.clear=function(){this.removeChildren()},t.prototype.bindEvents=function(e,n){},t.prototype.getSubShapeStyle=function(e){var n=e.x,i=e.y,a=e.transform,s=e.transformOrigin,o=e.class,A=e.className,l=e.zIndex,c=(0,j._T)(e,["x","y","transform","transformOrigin","class","className","zIndex"]);return c},t}(Ju);function zy(r){return r.toString().charAt(0).toUpperCase()+r.toString().slice(1)}function FD(r){return r.toString().charAt(0).toLowerCase()+r.toString().slice(1)}function OD(r,t){return"".concat(t).concat(zy(r))}function GC(r,t,e){var n;e===void 0&&(e=!0);var i=t||((n=r.match(/^([a-z][a-z0-9]+)/))===null||n===void 0?void 0:n[0])||"",a=r.replace(new RegExp("^(".concat(i,")")),"");return e?FD(a):a}function ID(r,t){Object.entries(t).forEach(function(e){var n=(0,j.CR)(e,2),i=n[0],a=n[1];(0,j.ev)([r],(0,j.CR)(r.querySelectorAll(i)),!1).filter(function(s){return s.matches(i)}).forEach(function(s){if(s){var o=s;o.style.cssText+=Object.entries(a).reduce(function(A,l){return"".concat(A).concat(l.join(":"),";")},"")}})})}var sv=function(r,t){if(!(r!=null&&r.startsWith(t)))return!1;var e=r[t.length];return e>="A"&&e<="Z"};function en(r,t,e){e===void 0&&(e=!1);var n={};return Object.entries(r).forEach(function(i){var a=(0,j.CR)(i,2),s=a[0],o=a[1];if(!(s==="className"||s==="class")){if(sv(s,"show")&&sv(GC(s,"show"),t)!==e)s===OD(t,"show")?n[s]=o:n[s.replace(new RegExp(zy(t)),"")]=o;else if(!sv(s,"show")&&sv(s,t)!==e){var A=GC(s,t);A==="filter"&&typeof o=="function"||(n[A]=o)}}}),n}function Gc(r,t){return Object.entries(r).reduce(function(e,n){var i=(0,j.CR)(n,2),a=i[0],s=i[1];return a.startsWith("show")?e["show".concat(t).concat(a.slice(4))]=s:e["".concat(t).concat(zy(a))]=s,e},{})}function Uo(r,t){t===void 0&&(t=["x","y","class","className"]);var e=["transform","transformOrigin","anchor","visibility","pointerEvents","zIndex","cursor","clipPath","clipPathTargets","offsetPath","offsetPathTargets","offsetDistance","draggable","droppable"],n={},i={};return Object.entries(r).forEach(function(a){var s=(0,j.CR)(a,2),o=s[0],A=s[1];t.includes(o)||(e.indexOf(o)!==-1?i[o]=A:n[o]=A)}),[n,i]}var LD=function(r){if(!Ni(r))return[];for(var t=[],e=0;e<r.length;e++)t=t.concat(r[e]);return t},ND=LD,Vy=function(r){(0,j.ZT)(t,r);function t(e){e===void 0&&(e={});var n=e.style,i=(0,j._T)(e,["style"]);return r.call(this,(0,j.pi)({style:(0,j.pi)({text:"",fill:"black",fontFamily:"sans-serif",fontSize:16,fontStyle:"normal",fontVariant:"normal",fontWeight:"normal",lineWidth:1,textAlign:"start",textBaseline:"middle"},n)},i))||this}return Object.defineProperty(t.prototype,"offscreenGroup",{get:function(){return this._offscreen||(this._offscreen=HC(this)),this._offscreen},enumerable:!1,configurable:!0}),t.prototype.disconnectedCallback=function(){var e;(e=this._offscreen)===null||e===void 0||e.destroy()},t}(hl);function kD(r,t){var e=new Map;return r.forEach(function(n){var i=t(n);e.has(i)||e.set(i,[]),e.get(i).push(n)}),e}function QD(r){throw new Error(r)}var UD=function(){function r(i,a,s,o,A,l,c){i===void 0&&(i=null),a===void 0&&(a=null),s===void 0&&(s=null),o===void 0&&(o=null),A===void 0&&(A=[null,null,null,null,null]),l===void 0&&(l=[]),c===void 0&&(c=[]),t.add(this),this._elements=Array.from(i),this._data=a,this._parent=s,this._document=o,this._enter=A[0],this._update=A[1],this._exit=A[2],this._merge=A[3],this._split=A[4],this._transitions=l,this._facetElements=c}r.prototype.selectAll=function(i){var a=typeof i=="string"?this._parent.querySelectorAll(i):i;return new e(a,null,this._elements[0],this._document)},r.prototype.selectFacetAll=function(i){var a=typeof i=="string"?this._parent.querySelectorAll(i):i;return new e(this._elements,null,this._parent,this._document,void 0,void 0,a)},r.prototype.select=function(i){var a=typeof i=="string"?this._parent.querySelectorAll(i)[0]||null:i;return new e([a],null,a,this._document)},r.prototype.append=function(i){var a=this,s=typeof i=="function"?i:function(){return a.createElement(i)},o=[];if(this._data!==null){for(var A=0;A<this._data.length;A++){var l=this._data[A],c=(0,j.CR)(Array.isArray(l)?l:[l,null],2),u=c[0],h=c[1],f=s(u,A);f.__data__=u,h!==null&&(f.__fromElements__=h),this._parent.appendChild(f),o.push(f)}return new e(o,null,this._parent,this._document)}for(var A=0;A<this._elements.length;A++){var d=this._elements[A],u=d.__data__,f=s(u,A);d.appendChild(f),o.push(f)}return new e(o,null,o[0],this._document)},r.prototype.maybeAppend=function(i,a){var s=(0,j.Q_)(this,t,"m",n).call(this,i[0]==="#"?i:"#".concat(i),a);return s.attr("id",i),s},r.prototype.maybeAppendByClassName=function(i,a){var s=i.toString(),o=(0,j.Q_)(this,t,"m",n).call(this,s[0]==="."?s:".".concat(s),a);return o.attr("className",s),o},r.prototype.maybeAppendByName=function(i,a){var s=(0,j.Q_)(this,t,"m",n).call(this,'[name="'.concat(i,'"]'),a);return s.attr("name",i),s},r.prototype.data=function(i,a,s){var o,A;a===void 0&&(a=function(et){return et}),s===void 0&&(s=function(){return null});for(var l=[],c=[],u=new Set(this._elements),h=[],f=new Set,d=new Map(this._elements.map(function(et,at){return[a(et.__data__,at),et]})),g=new Map(this._facetElements.map(function(et,at){return[a(et.__data__,at),et]})),v=kD(this._elements,function(et){return s(et.__data__)}),y=0;y<i.length;y++){var E=i[y],C=a(E,y),I=s(E,y);if(d.has(C)){var R=d.get(C);R.__data__=E,R.__facet__=!1,c.push(R),u.delete(R),d.delete(C)}else if(g.has(C)){var R=g.get(C);R.__data__=E,R.__facet__=!0,c.push(R),g.delete(C)}else if(v.has(C)){var K=v.get(C);h.push([E,K]);try{for(var W=(o=void 0,(0,j.XA)(K)),V=W.next();!V.done;V=W.next()){var R=V.value;u.delete(R)}}catch(et){o={error:et}}finally{try{V&&!V.done&&(A=W.return)&&A.call(W)}finally{if(o)throw o.error}}v.delete(C)}else if(d.has(I)){var R=d.get(I);R.__toData__?R.__toData__.push(E):R.__toData__=[E],f.add(R),u.delete(R)}else l.push(E)}var J=[new e([],l,this._parent,this._document),new e(c,null,this._parent,this._document),new e(u,null,this._parent,this._document),new e([],h,this._parent,this._document),new e(f,null,this._parent,this._document)];return new e(this._elements,null,this._parent,this._document,J)},r.prototype.merge=function(i){var a=(0,j.ev)((0,j.ev)([],(0,j.CR)(this._elements),!1),(0,j.CR)(i._elements),!1),s=(0,j.ev)((0,j.ev)([],(0,j.CR)(this._transitions),!1),(0,j.CR)(i._transitions),!1);return new e(a,null,this._parent,this._document,void 0,s)},r.prototype.createElement=function(i){if(this._document)return this._document.createElement(i,{});var a=e.registry[i];return a?new a:QD("Unknown node type: ".concat(i))},r.prototype.join=function(i,a,s,o,A){i===void 0&&(i=function(d){return d}),a===void 0&&(a=function(d){return d}),s===void 0&&(s=function(d){return d.remove()}),o===void 0&&(o=function(d){return d}),A===void 0&&(A=function(d){return d.remove()});var l=i(this._enter),c=a(this._update),u=s(this._exit),h=o(this._merge),f=A(this._split);return c.merge(l).merge(u).merge(h).merge(f)},r.prototype.remove=function(){for(var i=function(o){var A=a._elements[o],l=a._transitions[o];l?l.then(function(){return A.remove()}):A.remove()},a=this,s=0;s<this._elements.length;s++)i(s);return new e([],null,this._parent,this._document,void 0,this._transitions)},r.prototype.each=function(i){for(var a=0;a<this._elements.length;a++){var s=this._elements[a],o=s.__data__;i.call(s,o,a)}return this},r.prototype.attr=function(i,a){var s=typeof a!="function"?function(){return a}:a;return this.each(function(o,A){a!==void 0&&(this[i]=s.call(this,o,A))})},r.prototype.style=function(i,a,s){s===void 0&&(s=!0);var o=typeof a!="function"||!s?function(){return a}:a;return this.each(function(A,l){a!==void 0&&(this.style[i]=o.call(this,A,l))})},r.prototype.styles=function(i,a){return i===void 0&&(i={}),a===void 0&&(a=!0),this.each(function(s,o){var A=this;Object.entries(i).forEach(function(l){var c=(0,j.CR)(l,2),u=c[0],h=c[1],f=typeof h!="function"||!a?function(){return h}:h;h!==void 0&&A.attr(u,f.call(A,s,o))})})},r.prototype.update=function(i,a){a===void 0&&(a=!0);var s=typeof i!="function"||!a?function(){return i}:i;return this.each(function(o,A){i&&this.update&&this.update(s.call(this,o,A))})},r.prototype.maybeUpdate=function(i,a){a===void 0&&(a=!0);var s=typeof i!="function"||!a?function(){return i}:i;return this.each(function(o,A){i&&this.update&&this.update(s.call(this,o,A))})},r.prototype.transition=function(i){var a=this._transitions,s=new Array(this._elements.length);return this.each(function(o,A){s[A]=i.call(this,o,A)}),this._transitions=ND(s),this},r.prototype.on=function(i,a){return this.each(function(){this.addEventListener(i,a)}),this},r.prototype.call=function(i){for(var a=[],s=1;s<arguments.length;s++)a[s-1]=arguments[s];return i.call.apply(i,(0,j.ev)([this._parent,this],(0,j.CR)(a),!1)),this},r.prototype.node=function(){return this._elements[0]},r.prototype.nodes=function(){return this._elements},r.prototype.transitions=function(){return this._transitions.filter(function(i){return!!i})},r.prototype.parent=function(){return this._parent};var t,e,n;return e=r,t=new WeakSet,n=function(a,s){var o=this._elements[0],A=o.querySelector(a);if(A)return new e([A],null,this._parent,this._document);var l=typeof s=="string"?this.createElement(s):s();return o.appendChild(l),new e([l],null,this._parent,this._document)},r.registry={g:oi,rect:xi,circle:Js,path:Pi,text:Vy,ellipse:qu,image:$u,line:cl,polygon:ul,polyline:nd,html:ll},r}();function Le(r){return new UD([r],null,r,r.ownerDocument)}function PD(r,t,e){return r.querySelector(t)?Le(r).select(t):Le(r).append(e)}var _i=function(){function r(t,e,n,i){t===void 0&&(t=0),e===void 0&&(e=0),n===void 0&&(n=0),i===void 0&&(i=0),this.x=0,this.y=0,this.width=0,this.height=0,this.x=t,this.y=e,this.width=n,this.height=i}return Object.defineProperty(r.prototype,"bottom",{get:function(){return this.y+this.height},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"left",{get:function(){return this.x},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"right",{get:function(){return this.x+this.width},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"top",{get:function(){return this.y},enumerable:!1,configurable:!0}),r.fromRect=function(t){return new r(t.x,t.y,t.width,t.height)},r.prototype.toJSON=function(){return{x:this.x,y:this.y,width:this.width,height:this.height,top:this.top,right:this.right,bottom:this.bottom,left:this.left}},r.prototype.isPointIn=function(t,e){return t>=this.left&&t<=this.right&&e>=this.top&&e<=this.bottom},r}();function J9(r){var t=r.getRenderBounds(),e=__read(t.min,2),n=e[0],i=e[1],a=__read(t.max,2),s=a[0],o=a[1],A=s-n,l=o-i;return new _i(n,i,A,l)}var Fs=function(r,t){var e=function(i){return"".concat(t,"-").concat(i)},n=Object.fromEntries(Object.entries(r).map(function(i){var a=(0,j.CR)(i,2),s=a[0],o=a[1],A=e(o);return[s,{name:A,class:".".concat(A),id:"#".concat(A),toString:function(){return A}}]}));return Object.assign(n,{prefix:e}),n};function ov(r){return/\S+-\S+/g.test(r)?r.split("-").map(function(t){return t[0]}):r.length>2?[r[0]]:r.split("")}function Ti(r){if(we(r))return[r,r,r,r];if(Ni(r)){var t=r.length;if(t===1)return[r[0],r[0],r[0],r[0]];if(t===2)return[r[0],r[1],r[0],r[1]];if(t===3)return[r[0],r[1],r[2],r[1]];if(t===4)return r}return[0,0,0,0]}function da(r,t,e,n,i){return n===void 0&&(n=!0),i===void 0&&(i=function(a){a.node().removeChildren()}),r?e(t):(n&&i(t),null)}function Hi(r,t,e){return e?"".concat(r," ").concat(e,"legend-").concat(t):r}function q9(r,t,e){var n=r.classNamePrefix,i=n===void 0?"":n;return Hi(t.name,e,i)}var na={title:"title",item:"item",marker:"marker",label:"label",value:"value",focusIcon:"focus-icon",background:"background",ribbon:"ribbon",track:"track",selection:"selection",handle:"handle",handleMarker:"handle-marker",handleLabel:"handle-label",indicator:"indicator",prevBtn:"prev-btn",nextBtn:"next-btn",pageInfo:"page-info"},Wy=Fs({text:"text"},"title");function DD(r,t){var e=r.attributes,n=e.position,i=e.spacing,a=e.inset,s=e.text,o=r.getBBox(),A=t.getBBox(),l=ov(n),c=(0,j.CR)(Ti(s?i:0),4),u=c[0],h=c[1],f=c[2],d=c[3],g=(0,j.CR)(Ti(a),4),v=g[0],y=g[1],E=g[2],C=g[3],I=(0,j.CR)([d+h,u+f],2),R=I[0],K=I[1],W=(0,j.CR)([C+y,v+E],2),V=W[0],J=W[1];if(l[0]==="l")return new _i(o.x,o.y,A.width+o.width+R+V,Math.max(A.height+J,o.height));if(l[0]==="t")return new _i(o.x,o.y,Math.max(A.width+V,o.width),A.height+o.height+K+J);var et=(0,j.CR)([t.attributes.width||A.width,t.attributes.height||A.height],2),at=et[0],ct=et[1];return new _i(A.x,A.y,at+o.width+R+V,ct+o.height+K+J)}function RD(r,t){var e=Object.entries(t).reduce(function(n,i){var a=(0,j.CR)(i,2),s=a[0],o=a[1],A=r.node().attr(s);return A||(n[s]=o),n},{});r.styles(e)}function _D(r){var t,e,n,i,a=r,s=a.width,o=a.height,A=a.position,l=(0,j.CR)([+s/2,+o/2],2),c=l[0],u=l[1],h=(0,j.CR)([+c,+u,"center","middle"],4),f=h[0],d=h[1],g=h[2],v=h[3],y=ov(A);return y.includes("l")&&(t=(0,j.CR)([0,"start"],2),f=t[0],g=t[1]),y.includes("r")&&(e=(0,j.CR)([+s,"end"],2),f=e[0],g=e[1]),y.includes("t")&&(n=(0,j.CR)([0,"top"],2),d=n[0],v=n[1]),y.includes("b")&&(i=(0,j.CR)([+o,"bottom"],2),d=i[0],v=i[1]),{x:f,y:d,textAlign:g,textBaseline:v}}var HD=function(r){(0,j.ZT)(t,r);function t(e){return r.call(this,e,{text:"",width:0,height:0,fill:"#4a505a",fontWeight:"bold",fontSize:12,fontFamily:"sans-serif",inset:0,spacing:0,position:"top-left"})||this}return t.prototype.getAvailableSpace=function(){var e=this,n=this.attributes,i=n.width,a=n.height,s=n.position,o=n.spacing,A=n.inset,l=e.querySelector(Wy.text.class);if(!l)return new _i(0,0,+i,+a);var c=l.getBBox(),u=c.width,h=c.height,f=(0,j.CR)(Ti(o),4),d=f[0],g=f[1],v=f[2],y=f[3],E=(0,j.CR)([0,0,+i,+a],4),C=E[0],I=E[1],R=E[2],K=E[3],W=ov(s);if(W.includes("i"))return new _i(C,I,R,K);W.forEach(function(Ht,Rt){var St,Ot,Gt,qt;Ht==="t"&&(St=(0,j.CR)(Rt===0?[h+v,+a-h-v]:[0,+a],2),I=St[0],K=St[1]),Ht==="r"&&(Ot=(0,j.CR)([+i-u-y],1),R=Ot[0]),Ht==="b"&&(Gt=(0,j.CR)([+a-h-d],1),K=Gt[0]),Ht==="l"&&(qt=(0,j.CR)(Rt===0?[u+g,+i-u-g]:[0,+i],2),C=qt[0],R=qt[1])});var V=(0,j.CR)(Ti(A),4),J=V[0],et=V[1],at=V[2],ct=V[3],pt=(0,j.CR)([ct+et,J+at],2),wt=pt[0],Ct=pt[1];return new _i(C+ct,I+J,R-wt,K-Ct)},t.prototype.getBBox=function(){return this.title?this.title.getBBox():new _i(0,0,0,0)},t.prototype.render=function(e,n){var i=this,a=e.width,s=e.height,o=e.position,A=e.spacing,l=e.classNamePrefix,c=(0,j._T)(e,["width","height","position","spacing","classNamePrefix"]),u=(0,j.CR)(Uo(c),1),h=u[0],f=_D(e),d=f.x,g=f.y,v=f.textAlign,y=f.textBaseline;da(!!c.text,Le(n),function(E){var C=Hi(Wy.text.name,na.title,l);i.title=E.maybeAppendByClassName(Wy.text,"text").attr("className",C).styles(h).call(RD,{x:d,y:g,textAlign:v,textBaseline:y}).node()})},t}(Sr),Zy=function(){};function ga(r,t){return jt(r)?r.apply(void 0,(0,j.ev)([],(0,j.CR)(t),!1)):r}function GD(r,t){return r.reduce(function(e,n){return(e[n[t]]=e[n[t]]||[]).push(n),e},{})}function KD(r){return typeof r=="boolean"?!1:"enter"in r&&"update"in r&&"exit"in r}function KC(r){if(!r)return{enter:!1,update:!1,exit:!1};var t=["enter","update","exit"],e=Object.fromEntries(Object.entries(r).filter(function(n){var i=(0,j.CR)(n,1),a=i[0];return!t.includes(a)}));return Object.fromEntries(t.map(function(n){return KD(r)?r[n]===!1?[n,!1]:[n,(0,j.pi)((0,j.pi)({},r[n]),e)]:[n,e]}))}function Kc(r,t){r?r.finished.then(t):t()}function zD(r,t){r.length===0?t():Promise.all(r.map(function(e){return e==null?void 0:e.finished})).then(t)}function zC(r,t){"update"in r?r.update(t):r.attr(t)}function VC(r,t,e){if(t.length===0)return null;if(!e){var n=t.slice(-1)[0];return zC(r,{style:n}),null}return r.animate(t,e)}function VD(r,t){return!(r.nodeName!=="text"||t.nodeName!=="text"||r.attributes.text!==t.attributes.text)}function WD(r,t,e,n){if(n===void 0&&(n="destroy"),VD(r,t))return r.remove(),[null];var i=function(){n==="destroy"?r.destroy():n==="hide"&&Ts(r),t.isVisible()&&Oh(t)};if(!e)return i(),[null];var a=e.duration,s=a===void 0?0:a,o=e.delay,A=o===void 0?0:o,l=Math.ceil(+s/2),c=+s/4,u=(0,j.CR)(r.getGeometryBounds().center,2),h=u[0],f=u[1],d=(0,j.CR)(t.getGeometryBounds().center,2),g=d[0],v=d[1],y=(0,j.CR)([(h+g)/2-h,(f+v)/2-f],2),E=y[0],C=y[1],I=r.style.opacity,R=I===void 0?1:I,K=t.style.opacity,W=K===void 0?1:K,V=r.style.transform||"",J=t.style.transform||"",et=r.animate([{opacity:R,transform:"translate(0, 0) ".concat(V)},{opacity:0,transform:"translate(".concat(E,", ").concat(C,") ").concat(V)}],(0,j.pi)((0,j.pi)({fill:"both"},e),{duration:A+l+c})),at=t.animate([{opacity:0,transform:"translate(".concat(-E,", ").concat(-C,") ").concat(J),offset:.01},{opacity:W,transform:"translate(0, 0) ".concat(J)}],(0,j.pi)((0,j.pi)({fill:"both"},e),{duration:l+c,delay:A+l-c}));return Kc(at,i),[et,at]}function Os(r,t,e){var n={},i={};return Object.entries(t).forEach(function(a){var s=(0,j.CR)(a,2),o=s[0],A=s[1];if(!Pe(A)){var l=r.style[o]||r.parsedStyle[o]||0;l!==A&&(n[o]=l,i[o]=A)}}),e?VC(r,[n,i],(0,j.pi)({fill:"both"},e)):(zC(r,i),null)}function ZD(r){var t;return((t=r[0])===null||t===void 0?void 0:t.map(function(e,n){return r.map(function(i){return i[n]})}))||[]}function jy(r,t,e){e===void 0&&(e=!1);var n=r.getBBox(),i=n.width,a=n.height,s=t/Math.max(i,a);return e&&(r.style.transform="scale(".concat(s,")")),s}var WC=function(r,t,e){return[["M",r-e,t],["A",e,e,0,1,0,r+e,t],["A",e,e,0,1,0,r-e,t],["Z"]]},jD=WC,YD=function(r,t,e){return[["M",r-e,t-e],["L",r+e,t-e],["L",r+e,t+e],["L",r-e,t+e],["Z"]]},XD=function(r,t,e){return[["M",r-e,t],["L",r,t-e],["L",r+e,t],["L",r,t+e],["Z"]]},JD=function(r,t,e){var n=e*Math.sin(.3333333333333333*Math.PI);return[["M",r-e,t+n],["L",r,t-n],["L",r+e,t+n],["Z"]]},qD=function(r,t,e){var n=e*Math.sin(.3333333333333333*Math.PI);return[["M",r-e,t-n],["L",r+e,t-n],["L",r,t+n],["Z"]]},$D=function(r,t,e){var n=e/2*Math.sqrt(3);return[["M",r,t-e],["L",r+n,t-e/2],["L",r+n,t+e/2],["L",r,t+e],["L",r-n,t+e/2],["L",r-n,t-e/2],["Z"]]},tR=function(r,t,e){var n=e-1.5;return[["M",r-e,t-n],["L",r+e,t+n],["L",r+e,t-n],["L",r-e,t+n],["Z"]]},ZC=function(r,t,e){return[["M",r,t+e],["L",r,t-e]]},eR=function(r,t,e){return[["M",r-e,t-e],["L",r+e,t+e],["M",r+e,t-e],["L",r-e,t+e]]},nR=function(r,t,e){return[["M",r-e/2,t-e],["L",r+e/2,t-e],["M",r,t-e],["L",r,t+e],["M",r-e/2,t+e],["L",r+e/2,t+e]]},rR=function(r,t,e){return[["M",r-e,t],["L",r+e,t],["M",r,t-e],["L",r,t+e]]},iR=function(r,t,e){return[["M",r-e,t],["L",r+e,t]]},jC=function(r,t,e){return[["M",r-e,t],["L",r+e,t]]},aR=jC,sR=function(r,t,e){return[["M",r-e,t],["A",e/2,e/2,0,1,1,r,t],["A",e/2,e/2,0,1,0,r+e,t]]},oR=function(r,t,e){return[["M",r-e-1,t-2.5],["L",r,t-2.5],["L",r,t+2.5],["L",r+e+1,t+2.5]]},AR=function(r,t,e){return[["M",r-e-1,t+2.5],["L",r,t+2.5],["L",r,t-2.5],["L",r+e+1,t-2.5]]},lR=function(r,t,e){return[["M",r-(e+1),t+2.5],["L",r-e/2,t+2.5],["L",r-e/2,t-2.5],["L",r+e/2,t-2.5],["L",r+e/2,t+2.5],["L",r+e+1,t+2.5]]};function cR(r,t){return[["M",r-5,t+2.5],["L",r-5,t],["L",r,t],["L",r,t-3],["L",r,t+3],["L",r+6.5,t+3]]}var uR=function(r,t,e){return[["M",r-e,t-e],["L",r+e,t],["L",r-e,t+e],["Z"]]},hR=function(r,t,e){var n=e,i=e*.2,a=e*.7;return[["M",r-n,t],["A",n,n,0,1,0,r+n,t],["A",n,n,0,1,0,r-n,t],["Z"],["M",r-a,t],["L",r-i,t],["M",r+i,t],["L",r+a,t],["M",r,t-a],["L",r,t-i],["M",r,t+i],["L",r,t+a]]},ra=Fs({prevBtnGroup:"prev-btn-group",prevBtn:"prev-btn",nextBtnGroup:"next-btn-group",nextBtn:"next-btn",pageInfoGroup:"page-info-group",pageInfo:"page-info",playWindow:"play-window",contentGroup:"content-group",controller:"controller",clipPath:"clip-path"},"navigator"),fR=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,e,{x:0,y:0,animate:{easing:"linear",duration:200,fill:"both"},buttonCursor:"pointer",buttonFill:"black",buttonD:uR(0,0,6),buttonSize:12,controllerPadding:5,controllerSpacing:5,formatter:function(i,a){return"".concat(i,"/").concat(a)},defaultPage:0,loop:!1,orientation:"horizontal",pageNumFill:"black",pageNumFontSize:12,pageNumTextAlign:"start",pageNumTextBaseline:"middle"})||this;return n.playState="idle",n.contentGroup=n.appendChild(new oi({class:ra.contentGroup.name})),n.playWindow=n.contentGroup.appendChild(new oi({class:ra.playWindow.name})),n.innerCurrPage=n.defaultPage,n}return Object.defineProperty(t.prototype,"defaultPage",{get:function(){var e=this.attributes.defaultPage;return hr(e,0,Math.max(this.pageViews.length-1,0))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"pageViews",{get:function(){return this.playWindow.children},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"controllerShape",{get:function(){return this.totalPages>1?{width:55,height:0}:{width:0,height:0}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"pageShape",{get:function(){var e=this.pageViews,n=(0,j.CR)(ZD(e.map(function(u){var h=u.getBBox(),f=h.width,d=h.height;return[f,d]})).map(function(u){return Math.max.apply(Math,(0,j.ev)([],(0,j.CR)(u),!1))}),2),i=n[0],a=n[1],s=this.attributes,o=s.pageWidth,A=o===void 0?i:o,l=s.pageHeight,c=l===void 0?a:l;return{pageWidth:A,pageHeight:c}},enumerable:!1,configurable:!0}),t.prototype.getContainer=function(){return this.playWindow},Object.defineProperty(t.prototype,"totalPages",{get:function(){return this.pageViews.length},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"currPage",{get:function(){return this.innerCurrPage},enumerable:!1,configurable:!0}),t.prototype.getBBox=function(){var e=r.prototype.getBBox.call(this),n=e.x,i=e.y,a=this.controllerShape,s=this.pageShape,o=s.pageWidth,A=s.pageHeight;return new _i(n,i,o+a.width,A)},t.prototype.goTo=function(e){var n=this,i=this.attributes.animate,a=this,s=a.currPage,o=a.playState,A=a.playWindow,l=a.pageViews;if(o!=="idle"||e<0||l.length<=0||e>=l.length)return null;l[s].setLocalPosition(0,0),this.prepareFollowingPage(e);var c=(0,j.CR)(this.getFollowingPageDiff(e),2),u=c[0],h=c[1];this.playState="running";var f=VC(A,[{transform:"translate(0, 0)"},{transform:"translate(".concat(-u,", ").concat(-h,")")}],i);return Kc(f,function(){n.innerCurrPage=e,n.playState="idle",n.setVisiblePages([e]),n.updatePageInfo()}),f},t.prototype.prev=function(){var e=this.attributes.loop,n=this.pageViews.length,i=this.currPage;if(!e&&i<=0)return null;var a=e?(i-1+n)%n:hr(i-1,0,n);return this.goTo(a)},t.prototype.next=function(){var e=this.attributes.loop,n=this.pageViews.length,i=this.currPage;if(!e&&i>=n-1)return null;var a=e?(i+1)%n:hr(i+1,0,n);return this.goTo(a)},t.prototype.renderClipPath=function(e){var n=this.pageShape,i=n.pageWidth,a=n.pageHeight;if(!i||!a){this.contentGroup.style.clipPath=void 0;return}this.clipPath=e.maybeAppendByClassName(ra.clipPath,"rect").styles({width:i,height:a}),this.contentGroup.attr("clipPath",this.clipPath.node())},t.prototype.setVisiblePages=function(e){this.playWindow.children.forEach(function(n,i){e.includes(i)?Oh(n):Ts(n)})},t.prototype.adjustControllerLayout=function(){var e=this,n=e.prevBtnGroup,i=e.nextBtnGroup,a=e.pageInfoGroup,s=this.attributes,o=s.orientation,A=s.controllerPadding,l=a.getBBox(),c=l.width,u=l.height,h=(0,j.CR)(o==="horizontal"?[-180,0]:[-90,90],2),f=h[0],d=h[1];n.setLocalEulerAngles(f),i.setLocalEulerAngles(d);var g=n.getBBox(),v=g.width,y=g.height,E=i.getBBox(),C=E.width,I=E.height,R=Math.max(v,c,C),K=o==="horizontal"?{offset:[[0,0],[v/2+A,0],[v+c+A*2,0]],textAlign:"start"}:{offset:[[R/2,-y-A],[R/2,0],[R/2,I+A]],textAlign:"center"},W=(0,j.CR)(K.offset,3),V=(0,j.CR)(W[0],2),J=V[0],et=V[1],at=(0,j.CR)(W[1],2),ct=at[0],pt=at[1],wt=(0,j.CR)(W[2],2),Ct=wt[0],Ht=wt[1],Rt=K.textAlign,St=a.querySelector("text");St&&(St.style.textAlign=Rt),n.setLocalPosition(J,et),a.setLocalPosition(ct,pt),i.setLocalPosition(Ct,Ht)},t.prototype.updatePageInfo=function(){var e,n=this,i=n.currPage,a=n.pageViews,s=n.attributes.formatter;a.length<2||((e=this.pageInfoGroup.querySelector(ra.pageInfo.class))===null||e===void 0||e.attr("text",s(i+1,a.length)),this.adjustControllerLayout())},t.prototype.getFollowingPageDiff=function(e){var n=this.currPage;if(n===e)return[0,0];var i=this.attributes.orientation,a=this.pageShape,s=a.pageWidth,o=a.pageHeight,A=e<n?-1:1;return i==="horizontal"?[A*s,0]:[0,A*o]},t.prototype.prepareFollowingPage=function(e){var n=this,i=n.currPage,a=n.pageViews;if(this.setVisiblePages([e,i]),e!==i){var s=(0,j.CR)(this.getFollowingPageDiff(e),2),o=s[0],A=s[1];a[e].setLocalPosition(o,A)}},t.prototype.renderController=function(e){var n=this,i=this.attributes,a=i.controllerSpacing,s=i.classNamePrefix,o=s===void 0?"":s,A=this.pageShape,l=A.pageWidth,c=A.pageHeight,u=this.pageViews.length>=2,h=e.maybeAppendByClassName(ra.controller,"g");if(av(h.node(),u),!!u){var f=en(this.attributes,"button"),d=en(this.attributes,"pageNum"),g=(0,j.CR)(Uo(f),2),v=g[0],y=g[1],E=v.size,C=(0,j._T)(v,["size"]),I=!h.select(ra.prevBtnGroup.class).node(),R=h.maybeAppendByClassName(ra.prevBtnGroup,"g").styles(y);this.prevBtnGroup=R.node();var K=R.maybeAppendByClassName(ra.prevBtn,"path");if(o){var W=Hi(ra.prevBtn.name,na.prevBtn,o);K.node().setAttribute("class",W)}var V=h.maybeAppendByClassName(ra.nextBtnGroup,"g").styles(y);this.nextBtnGroup=V.node();var J=V.maybeAppendByClassName(ra.nextBtn,"path");if(o){var et=Hi(ra.nextBtn.name,na.nextBtn,o);J.node().setAttribute("class",et)}[K,J].forEach(function(wt){wt.styles((0,j.pi)((0,j.pi)({},C),{transformOrigin:"center"})),jy(wt.node(),E,!0)});var at=h.maybeAppendByClassName(ra.pageInfoGroup,"g");this.pageInfoGroup=at.node();var ct=at.maybeAppendByClassName(ra.pageInfo,"text");if(ct.styles(d),o){var pt=Hi(ra.pageInfo.name,na.pageInfo,o);ct.node().setAttribute("class",pt)}this.updatePageInfo(),h.node().setLocalPosition(l+a,c/2),I&&(this.prevBtnGroup.addEventListener("click",function(){n.prev()}),this.nextBtnGroup.addEventListener("click",function(){n.next()}))}},t.prototype.render=function(e,n){var i=e.x,a=i===void 0?0:i,s=e.y,o=s===void 0?0:s;this.attr("transform","translate(".concat(a,", ").concat(o,")"));var A=Le(n);this.renderClipPath(A),this.renderController(A),this.setVisiblePages([this.defaultPage]),this.goTo(this.defaultPage)},t.prototype.bindEvents=function(){var e=this,n=bh(function(){return e.render(e.attributes,e)},50);this.playWindow.addEventListener(yn.INSERTED,n),this.playWindow.addEventListener(yn.REMOVED,n)},t}(Sr);function dR(r){var t="default";if(Br(r)&&r instanceof Image)t="image";else if(jt(r))t="symbol";else if(gn(r)){var e=new RegExp("data:(image|text)");r.match(e)?t="base64":/^(https?:\/\/(([a-zA-Z0-9]+-?)+[a-zA-Z0-9]+\.)+[a-zA-Z]+)(:\d+)?(\/.*)?(\?.*)?(#.*)?$/.test(r)?t="url":t="symbol"}return t}function gR(r){var t=dR(r);return["base64","url","image"].includes(t)?"image":r&&t==="symbol"?"path":null}var Vn=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.render=function(e,n){var i=e.x,a=i===void 0?0:i,s=e.y,o=s===void 0?0:s,A=this.getSubShapeStyle(e),l=A.symbol,c=A.size,u=c===void 0?16:c,h=(0,j._T)(A,["symbol","size"]),f=gR(l);da(!!f,Le(n),function(d){d.maybeAppendByClassName("marker",f).attr("className","marker ".concat(f,"-marker")).call(function(g){if(f==="image"){var v=u*2;g.styles({img:l,width:v,height:v,x:a-u,y:o-u})}else{var v=u/2,y=jt(l)?l:t.getSymbol(l);g.styles((0,j.pi)({d:y==null?void 0:y(a,o,v)},h))}})})},t.MARKER_SYMBOL_MAP=new Map,t.registerSymbol=function(e,n){t.MARKER_SYMBOL_MAP.set(e,n)},t.getSymbol=function(e){return t.MARKER_SYMBOL_MAP.get(e)},t.getSymbols=function(){return Array.from(t.MARKER_SYMBOL_MAP.keys())},t}(Sr);Vn.registerSymbol("cross",eR),Vn.registerSymbol("hyphen",iR),Vn.registerSymbol("line",ZC),Vn.registerSymbol("plus",rR),Vn.registerSymbol("tick",nR),Vn.registerSymbol("circle",WC),Vn.registerSymbol("point",jD),Vn.registerSymbol("bowtie",tR),Vn.registerSymbol("hexagon",$D),Vn.registerSymbol("square",YD),Vn.registerSymbol("diamond",XD),Vn.registerSymbol("triangle",JD),Vn.registerSymbol("triangle-down",qD),Vn.registerSymbol("line",ZC),Vn.registerSymbol("dot",jC),Vn.registerSymbol("dash",aR),Vn.registerSymbol("smooth",sR),Vn.registerSymbol("hv",oR),Vn.registerSymbol("vh",AR),Vn.registerSymbol("hvh",lR),Vn.registerSymbol("vhv",cR),Vn.registerSymbol("focus",hR);function $9(r,t,e){var n=Math.round((r-e)/t);return e+n*t}function vR(r,t,e){var n=1.4,i=n*e;return[["M",r-e,t-i],["L",r+e,t-i],["L",r+e,t+i],["L",r-e,t+i],["Z"]]}var YC=1.4,XC=.4;function pR(r,t,e){var n=e,i=n*YC,a=n/2,s=n/6,o=r+i*XC;return[["M",r,t],["L",o,t+a],["L",r+i,t+a],["L",r+i,t-a],["L",o,t-a],["Z"],["M",o,t+s],["L",r+i-2,t+s],["M",o,t-s],["L",r+i-2,t-s]]}function mR(r,t,e){var n=e,i=n*YC,a=n/2,s=n/6,o=t+i*XC;return[["M",r,t],["L",r-a,o],["L",r-a,t+i],["L",r+a,t+i],["L",r+a,o],["Z"],["M",r-s,o],["L",r-s,t+i-2],["M",r+s,o],["L",r+s,t+i-2]]}Vn.registerSymbol("hiddenHandle",vR),Vn.registerSymbol("verticalHandle",pR),Vn.registerSymbol("horizontalHandle",mR);var tG=function(r,t,e){return r===void 0&&(r="horizontal"),r==="horizontal"?t:e};function eG(r,t,e,n){var i;n===void 0&&(n=4);var a=__read(r,2),s=a[0],o=a[1],A=__read(t,2),l=A[0],c=A[1],u=__read(e,2),h=u[0],f=u[1],d=__read([l,c],2),g=d[0],v=d[1],y=v-g;return g>v&&(i=__read([v,g],2),g=i[0],v=i[1]),y>o-s?[s,o]:g<s?h===s&&f===v?[s,v]:[s,y+s]:v>o?f===o&&h===g?[g,o]:[o-y,o]:[g,v]}function Yy(r,t,e){return r===void 0&&(r="horizontal"),r==="horizontal"?t:e}function nG(r){var t=r&&r.getRenderBounds();if(!t)return{width:0,height:0};var e=t.getMax(),n=t.getMin();return{width:e[0]-n[0],height:e[1]-n[1]}}function JC(r){var t=r.getLocalBounds(),e=t.min,n=t.max,i=(0,j.CR)([e,n],2),a=(0,j.CR)(i[0],2),s=a[0],o=a[1],A=(0,j.CR)(i[1],2),l=A[0],c=A[1];return{x:s,y:o,width:l-s,height:c-o,left:s,bottom:c,top:o,right:l}}function rG(r,t){var e=select(r).append("text").node();return e.attr(__assign(__assign({},t),{visibility:"hidden"})),e}function yR(r,t){var e=(0,j.CR)(r,2),n=e[0],i=e[1],a=(0,j.CR)(t,2),s=a[0],o=a[1];return n!==s&&i===o}function iG(r,t){var e=__read(r,2),n=e[0],i=e[1],a=__read(t,2),s=a[0],o=a[1];return n===s&&i!==o}function wR(r,t){var e,n,i=t.attributes;try{for(var a=(0,j.XA)(Object.entries(i)),s=a.next();!s.done;s=a.next()){var o=(0,j.CR)(s.value,2),A=o[0],l=o[1];A!=="id"&&A!=="className"&&r.attr(A,l)}}catch(c){e={error:c}}finally{try{s&&!s.done&&(n=a.return)&&n.call(a)}finally{if(e)throw e.error}}}function Po(r){return typeof r=="function"?r():gn(r)||we(r)?new Vy({style:{text:String(r)}}):r}function ER(r,t){return typeof r=="function"?r():gn(r)||we(r)?new ll({style:(0,j.pi)((0,j.pi)({pointerEvents:"auto"},t),{innerHTML:r})}):r}var Av,Xy;function aG(r){Xy=r}var BR=Ny(function(r,t){var e=t.fontSize,n=t.fontFamily,i=t.fontWeight,a=t.fontStyle,s=t.fontVariant;return Xy?Xy(r,e):(Av||(Av=se.offscreenCanvasCreator.getOrCreateContext(void 0)),Av.font=[a,s,i,"".concat(e,"px"),n].join(" "),Av.measureText(r).width)},function(r,t){return[r,Object.values(t||qC(r)).join()].join("")},4096),qC=function(r){var t=r.style.fontFamily||"sans-serif",e=r.style.fontWeight||"normal",n=r.style.fontStyle||"normal",i=r.style.fontVariant,a=r.style.fontSize;return a=typeof a=="object"?a.value:a,{fontSize:a,fontFamily:t,fontWeight:e,fontStyle:n,fontVariant:i}};function $C(r){return r.nodeName==="text"?r:r.nodeName==="g"&&r.children.length===1&&r.children[0].nodeName==="text"?r.children[0]:null}function t2(r,t){var e=$C(r);e&&e.attr(t)}function Jy(r,t,e){e===void 0&&(e="..."),t2(r,{wordWrap:!0,wordWrapWidth:t,maxLines:1,textOverflow:e})}function qy(r,t){for(var e in t)t.hasOwnProperty(e)&&e!=="constructor"&&t[e]!==void 0&&(r[e]=t[e])}function bR(r,t,e,n){return t&&qy(r,t),e&&qy(r,e),n&&qy(r,n),r}function xR(r){return r instanceof Element||r instanceof Document}var vn,CR="component-poptip",cn={CONTAINER:"component-poptip",ARROW:"component-poptip-arrow",TEXT:"component-poptip-text"},e2=(vn={},vn[".".concat(cn.CONTAINER)]={visibility:"visible",position:"absolute","background-color":"rgba(0, 0, 0)","box-shadow":"0px 0px 10px #aeaeae","border-radius":"3px",color:"#fff",opacity:.8,"font-size":"12px",padding:"4px 6px",display:"flex","justify-content":"center","align-items":"center","z-index":8,transition:"visibility 50ms"},vn[".".concat(cn.TEXT)]={"text-align":"center"},vn[".".concat(cn.CONTAINER,"[data-position='top']")]={transform:"translate(-50%, -100%)"},vn[".".concat(cn.CONTAINER,"[data-position='left']")]={transform:"translate(-100%, -50%)"},vn[".".concat(cn.CONTAINER,"[data-position='right']")]={transform:"translate(0, -50%)"},vn[".".concat(cn.CONTAINER,"[data-position='bottom']")]={transform:"translate(-50%, 0)"},vn[".".concat(cn.CONTAINER,"[data-position='top-left']")]={transform:"translate(0,-100%)"},vn[".".concat(cn.CONTAINER,"[data-position='top-right']")]={transform:"translate(-100%,-100%)"},vn[".".concat(cn.CONTAINER,"[data-position='left-top']")]={transform:"translate(-100%, 0)"},vn[".".concat(cn.CONTAINER,"[data-position='left-bottom']")]={transform:"translate(-100%, -100%)"},vn[".".concat(cn.CONTAINER,"[data-position='right-top']")]={transform:"translate(0, 0)"},vn[".".concat(cn.CONTAINER,"[data-position='right-bottom']")]={transform:"translate(0, -100%)"},vn[".".concat(cn.CONTAINER,"[data-position='bottom-left']")]={transform:"translate(0, 0)"},vn[".".concat(cn.CONTAINER,"[data-position='bottom-right']")]={transform:"translate(-100%, 0)"},vn[".".concat(cn.ARROW)]={width:"4px",height:"4px",transform:"rotate(45deg)","background-color":"rgba(0, 0, 0)",position:"absolute","z-index":-1},vn[".".concat(cn.CONTAINER,"[data-position='top']")]={transform:"translate(-50%, calc(-100% - 5px))"},vn["[data-position='top'] .".concat(cn.ARROW)]={bottom:"-2px"},vn[".".concat(cn.CONTAINER,"[data-position='left']")]={transform:"translate(calc(-100% - 5px), -50%)"},vn["[data-position='left'] .".concat(cn.ARROW)]={right:"-2px"},vn[".".concat(cn.CONTAINER,"[data-position='right']")]={transform:"translate(5px, -50%)"},vn["[data-position='right'] .".concat(cn.ARROW)]={left:"-2px"},vn[".".concat(cn.CONTAINER,"[data-position='bottom']")]={transform:"translate(-50%, 5px)"},vn["[data-position='bottom'] .".concat(cn.ARROW)]={top:"-2px"},vn[".".concat(cn.CONTAINER,"[data-position='top-left']")]={transform:"translate(0, calc(-100% - 5px))"},vn["[data-position='top-left'] .".concat(cn.ARROW)]={left:"10px",bottom:"-2px"},vn[".".concat(cn.CONTAINER,"[data-position='top-right']")]={transform:"translate(-100%, calc(-100% - 5px))"},vn["[data-position='top-right'] .".concat(cn.ARROW)]={right:"10px",bottom:"-2px"},vn[".".concat(cn.CONTAINER,"[data-position='left-top']")]={transform:"translate(calc(-100% - 5px), 0)"},vn["[data-position='left-top'] .".concat(cn.ARROW)]={right:"-2px",top:"8px"},vn[".".concat(cn.CONTAINER,"[data-position='left-bottom']")]={transform:"translate(calc(-100% - 5px), -100%)"},vn["[data-position='left-bottom'] .".concat(cn.ARROW)]={right:"-2px",bottom:"8px"},vn[".".concat(cn.CONTAINER,"[data-position='right-top']")]={transform:"translate(5px, 0)"},vn["[data-position='right-top'] .".concat(cn.ARROW)]={left:"-2px",top:"8px"},vn[".".concat(cn.CONTAINER,"[data-position='right-bottom']")]={transform:"translate(5px, -100%)"},vn["[data-position='right-bottom'] .".concat(cn.ARROW)]={left:"-2px",bottom:"8px"},vn[".".concat(cn.CONTAINER,"[data-position='bottom-left']")]={transform:"translate(0, 5px)"},vn["[data-position='bottom-left'] .".concat(cn.ARROW)]={top:"-2px",left:"8px"},vn[".".concat(cn.CONTAINER,"[data-position='bottom-right']")]={transform:"translate(-100%, 5px)"},vn["[data-position='bottom-right'] .".concat(cn.ARROW)]={top:"-2px",right:"8px"},vn),SR=void 0;function MR(r,t,e,n,i,a){if(i===void 0&&(i=!1),a===void 0&&(a=!1),a)return[r,t];var s=e.getBoundingClientRect(),o=s.x,A=s.y,l=s.width,c=s.height;switch(n){case"top":return i?[o+l/2,A]:[r,A];case"left":return i?[o,A+c/2]:[o,t];case"bottom":return i?[o+l/2,A+c]:[r,A+c];case"right":return i?[o+l,A+c/2]:[o+l,t];case"top-right":case"right-top":return[o+l,A];case"left-bottom":case"bottom-left":return[o,A+c];case"right-bottom":case"bottom-right":return[o+l,A+c];case"top-left":case"left-top":default:return[o,A]}}var TR=function(r){var t;return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return t||(t=r.apply(SR,e)),t}};function FR(r){var t=r&&document.getElementById(r);return t||(t=document.createElement("div"),t.setAttribute("id",r),document.body.appendChild(t)),t}function OR(r){var t=TR(FR)(r);return t}var IR=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,Ci({style:{id:CR}},t.defaultOptions,e))||this;return n.visibility="visible",n.map=new Map,n.domStyles="",n.initShape(),n.render(n.attributes,n),n}return Object.defineProperty(t.prototype,"visible",{get:function(){return this.visibility==="visible"},enumerable:!1,configurable:!0}),t.prototype.render=function(e,n){this.visibility=this.style.visibility,this.updatePoptipElement()},t.prototype.update=function(e){this.attr(Ci({},this.style,e)),this.render(this.attributes,this)},t.prototype.bind=function(e,n){var i=this;if(e){var a=this.style.text,s=function(A){var l=e,c=i.style,u=a;if(n){var h=typeof n=="function"?n.call(null,A):n,f=h.html,d=h.target,g=(0,j._T)(h,["html","target"]);c=bR({},i.style,g),(d||d===!1)&&(l=d),typeof f=="string"&&(u=f)}var v=c.position,y=c.arrowPointAtCenter,E=c.follow,C=c.offset;if(l){var I=A,R=I.clientX,K=I.clientY,W=(0,j.CR)(MR(R,K,l,v,y,E),2),V=W[0],J=W[1];i.showTip(V,J,{text:u,position:v,offset:C})}else i.hideTip()},o=function(){i.hideTip()};e.addEventListener("mousemove",s),e.addEventListener("mouseleave",o),this.map.set(e,[s,o])}},t.prototype.unbind=function(e){if(this.map.has(e)){var n=(0,j.CR)(this.map.get(e)||[],2),i=n[0],a=n[1];i&&e.removeEventListener("mousemove",i),a&&e.removeEventListener("mouseleave",a),this.map.delete(e)}},t.prototype.clear=function(){this.container.innerHTML=""},t.prototype.destroy=function(){var e=this,n;(0,j.ev)([],(0,j.CR)(this.map.keys()),!1).forEach(function(i){return e.unbind(i)}),(n=this.container)===null||n===void 0||n.remove(),r.prototype.destroy.call(this)},t.prototype.showTip=function(e,n,i){var a=Mi(i,"text");if(!(a&&typeof a!="string")&&(this.applyStyles(),e&&n&&i)){var s=i.offset,o=i.position;if(o&&this.container.setAttribute("data-position",o),this.setOffsetPosition(e,n,s),typeof a=="string"){var A=this.container.querySelector(".".concat(cn.TEXT));A&&(A.innerHTML=a)}this.visibility="visible",this.container.style.visibility="visible"}},t.prototype.hideTip=function(){this.visibility="hidden",this.container.style.visibility="hidden"},t.prototype.getContainer=function(){return this.container},t.prototype.getClassName=function(){var e=this.style.containerClassName;return"".concat(cn.CONTAINER).concat(e?" ".concat(e):"")},t.prototype.initShape=function(){var e=this,n=this.style.id;this.container=OR(n),this.container.className=this.getClassName(),this.container.addEventListener("mousemove",function(){return e.showTip()}),this.container.addEventListener("mouseleave",function(){return e.hideTip()})},t.prototype.updatePoptipElement=function(){var e=this.container;this.clear();var n=this.style,i=n.id,a=n.template,s=n.text;this.container.setAttribute("id",i),this.container.className=this.getClassName();var o='<span class="'.concat(cn.ARROW,'"></span>');e.innerHTML=o,gn(a)?e.innerHTML+=a:a&&xR(a)&&e.appendChild(a),s&&(e.getElementsByClassName(cn.TEXT)[0].textContent=s),this.applyStyles(),this.container.style.visibility=this.visibility},t.prototype.applyStyles=function(){var e=jr({},e2,this.style.domStyles),n=Object.entries(e).reduce(function(a,s){var o=(0,j.CR)(s,2),A=o[0],l=o[1],c=Object.entries(l).reduce(function(u,h){var f=(0,j.CR)(h,2),d=f[0],g=f[1];return"".concat(u).concat(d,": ").concat(g,";")},"");return"".concat(a).concat(A,"{").concat(c,"}")},"");if(this.domStyles!==n){this.domStyles=n;var i=this.container.querySelector("style");i&&this.container.removeChild(i),i=document.createElement("style"),i.innerHTML=n,this.container.appendChild(i)}},t.prototype.setOffsetPosition=function(e,n,i){i===void 0&&(i=this.style.offset);var a=(0,j.CR)(i,2),s=a[0],o=s===void 0?0:s,A=a[1],l=A===void 0?0:A;this.container.style.left="".concat(e+o,"px"),this.container.style.top="".concat(n+l,"px")},t.tag="poptip",t.defaultOptions={style:{x:0,y:0,width:0,height:0,target:null,visibility:"hidden",text:"",position:"top",follow:!1,offset:[0,0],domStyles:e2,template:'<div class="'.concat(cn.TEXT,'"></div>')}},t}(Sr),Yr=Fs({layout:"flex",markerGroup:"marker-group",marker:"marker",labelGroup:"label-group",label:"label",valueGroup:"value-group",focusGroup:"focus-group",focus:"focus",value:"value",backgroundGroup:"background-group",background:"background"},"legend-category-item"),LR={offset:[0,20],domStyles:{".component-poptip":{opacity:"1",padding:"8px 12px",background:"#fff",boxShadow:"0 2px 8px rgba(0, 0, 0, 0.15)"},".component-poptip-arrow":{display:"none"},".component-poptip-text":{color:"#000",lineHeight:"20px"}}};function NR(r){var t=r.querySelector(Yr.marker.class);return t?t.style:{}}var kR=function(r){(0,j.ZT)(t,r);function t(e,n){var i=r.call(this,e,{span:[1,1],marker:function(){return new Js({style:{r:6}})},markerSize:10,labelFill:"#646464",valueFill:"#646464",labelFontSize:12,valueFontSize:12,labelTextBaseline:"middle",valueTextBaseline:"middle"})||this;return i.keyFields={},i.keyFields=n||{},i}return Object.defineProperty(t.prototype,"showValue",{get:function(){var e=this.attributes.valueText;return e?typeof e=="string"||typeof e=="number"?e!=="":typeof e=="function"?!0:e.attr("text")!=="":!1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"actualSpace",{get:function(){var e=this.labelGroup,n=this.valueGroup,i=this.attributes,a=i.markerSize,s=i.focus,o=i.focusMarkerSize,A=e.node().getBBox(),l=A.width,c=A.height,u=n.node().getBBox(),h=u.width,f=u.height,d=s?o!=null?o:12:0;return{markerWidth:a,labelWidth:l,valueWidth:h,focusWidth:d,height:Math.max(a,c,f)}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"span",{get:function(){var e=this.attributes.span;if(!e)return[1,1];var n=(0,j.CR)(Ti(e),2),i=n[0],a=n[1],s=this.showValue?a:0,o=i+s;return[i/o,s/o]},enumerable:!1,configurable:!0}),t.prototype.setAttribute=function(e,n){r.prototype.setAttribute.call(this,e,n)},Object.defineProperty(t.prototype,"shape",{get:function(){var e,n=this.attributes,i=n.markerSize,a=n.width,s=this.actualSpace,o=s.markerWidth,A=s.focusWidth,l=s.height,c=this.actualSpace,u=c.labelWidth,h=c.valueWidth,f=(0,j.CR)(this.spacing,3),d=f[0],g=f[1],v=f[2];if(a){var y=a-i-d-g-A-v,E=(0,j.CR)(this.span,2),C=E[0],I=E[1];e=(0,j.CR)([C*y,I*y],2),u=e[0],h=e[1]}var R=o+u+h+d+g+A+v;return{width:R,height:l,markerWidth:o,labelWidth:u,valueWidth:h,focusWidth:A}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"spacing",{get:function(){var e=this.attributes,n=e.spacing,i=e.focus;if(!n)return[0,0,0];var a=(0,j.CR)(Ti(n),3),s=a[0],o=a[1],A=a[2];return[s,this.showValue?o:0,i?A:0]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"layout",{get:function(){var e=this.shape,n=e.markerWidth,i=e.labelWidth,a=e.valueWidth,s=e.focusWidth,o=e.width,A=e.height,l=(0,j.CR)(this.spacing,3),c=l[0],u=l[1],h=l[2];return{height:A,width:o,markerWidth:n,labelWidth:i,valueWidth:a,focusWidth:s,position:[n/2,n+c,n+i+c+u,n+i+a+c+u+h+s/2]}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"scaleSize",{get:function(){var e=NR(this.markerGroup.node()),n=this.attributes,i=n.markerSize,a=n.markerStrokeWidth,s=a===void 0?e.strokeWidth:a,o=n.markerLineWidth,A=o===void 0?e.lineWidth:o,l=n.markerStroke,c=l===void 0?e.stroke:l,u=+(s||A||(c?1:0))*Math.sqrt(2),h=this.markerGroup.node().getBBox(),f=h.width,d=h.height;return(1-u/Math.max(f,d))*i},enumerable:!1,configurable:!0}),t.prototype.renderMarker=function(e){var n=this,i=this.attributes,a=i.marker,s=i.classNamePrefix,o=en(this.attributes,"marker");this.markerGroup=e.maybeAppendByClassName(Yr.markerGroup,"g").style("zIndex",0),da(!!a,this.markerGroup,function(){var A,l=n.markerGroup.node(),c=(A=l.childNodes)===null||A===void 0?void 0:A[0],u=Hi(Yr.marker.name,na.marker,s),h=typeof a=="string"?new Vn({style:{symbol:a},className:u}):a();if(c)if(h.nodeName===c.nodeName)c instanceof Vn?c.update((0,j.pi)((0,j.pi)({},o),{symbol:a})):(wR(c,h),Le(c).styles(o));else{if(c.remove(),!(h instanceof Vn)){var d=Hi(Yr.marker.name,na.marker,s);h.className=d}Le(h).styles(o),l.appendChild(h)}else{if(!(h instanceof Vn)){var f=Hi(Yr.marker.name,na.marker,s);h.className=f,Le(h).styles(o)}l.appendChild(h)}n.markerGroup.node().scale(1/n.markerGroup.node().getScale()[0]);var g=jy(n.markerGroup.node(),n.scaleSize,!0);n.markerGroup.node().style._transform="scale(".concat(g,")")})},t.prototype.renderLabel=function(e){var n=en(this.attributes,"label"),i=n.text,a=(0,j._T)(n,["text"]),s=this.attributes.classNamePrefix;this.labelGroup=e.maybeAppendByClassName(Yr.labelGroup,"g").style("zIndex",0);var o=Hi(Yr.label.name,na.label,s),A=this.labelGroup.maybeAppendByClassName(Yr.label,function(){return Po(i)});A.node().setAttribute("class",o),A.styles(a)},t.prototype.renderValue=function(e){var n=this,i=en(this.attributes,"value"),a=i.text,s=(0,j._T)(i,["text"]),o=this.attributes.classNamePrefix;this.valueGroup=e.maybeAppendByClassName(Yr.valueGroup,"g").style("zIndex",0),da(this.showValue,this.valueGroup,function(){var A=Hi(Yr.value.name,na.value,o),l=n.valueGroup.maybeAppendByClassName(Yr.value,function(){return Po(a)});l.node().setAttribute("class",A),l.styles(s)})},t.prototype.createPoptip=function(){var e=this.attributes.poptip,n=e||{},i=n.render,a=(0,j._T)(n,["render"]),s=new IR({style:jr(LR,a)});return this.poptipGroup=s,s},t.prototype.bindPoptip=function(e){var n=this,i=this.attributes.poptip;if(i){var a=this.poptipGroup||this.createPoptip();a.bind(e,function(){var s=n.attributes,o=s.labelText,A=s.valueText,l=s.markerFill,c=typeof o=="string"?o:o==null?void 0:o.attr("text"),u=typeof A=="string"?A:A==null?void 0:A.attr("text");if(typeof i.render=="function")return{html:i.render((0,j.pi)((0,j.pi)({},n.keyFields),{label:c,value:u,color:l}))};var h="";return(typeof c=="string"||typeof c=="number")&&(h+='<div class="component-poptip-label">'.concat(c,"</div>")),(typeof u=="string"||typeof u=="number")&&(h+='<div class="component-poptip-value">'.concat(u,"</div>")),{html:h}})}},t.prototype.renderFocus=function(e){var n=this,i=this.attributes,a=i.focus,s=i.focusMarkerSize,o=i.classNamePrefix,A={x:0,y:0,size:s,opacity:.6,symbol:"focus",stroke:"#aaaaaa",lineWidth:1};Ye(a)||(this.focusGroup=e.maybeAppendByClassName(Yr.focusGroup,"g").style("zIndex",0),da(a,this.focusGroup,function(){var l=Hi(Yr.focus.name,na.focusIcon,o),c=new Vn({style:(0,j.pi)((0,j.pi)({},A),{symbol:"focus"}),className:l}),u=new Js({style:{r:A.size/2,fill:"transparent"}}),h=n.focusGroup.node();h.appendChild(u),h.appendChild(c),c.update({opacity:0}),e.node().addEventListener("pointerenter",function(){c.update({opacity:1})}),e.node().addEventListener("pointerleave",function(){c.update({opacity:0})})}))},t.prototype.renderPoptip=function(e){var n=this,i=this.attributes.poptip;if(i){var a=e.maybeAppendByClassName(Yr.value,"g").node(),s=e.maybeAppendByClassName(Yr.label,"g").node();[a,s].forEach(function(o){o&&n.bindPoptip(o)})}},t.prototype.renderBackground=function(e){var n=this.shape,i=n.width,a=n.height,s=en(this.attributes,"background");this.background=e.maybeAppendByClassName(Yr.backgroundGroup,"g").style("zIndex",-1);var o=this.background.maybeAppendByClassName(Yr.background,"rect");o.styles((0,j.pi)({width:i,height:a},s));var A=this.attributes.classNamePrefix,l=A===void 0?"":A;if(l){var c=Hi(Yr.background.name,na.background,l);o.node().setAttribute("class",c)}},t.prototype.adjustLayout=function(){var e=this.layout,n=e.labelWidth,i=e.valueWidth,a=e.height,s=(0,j.CR)(e.position,4),o=s[0],A=s[1],l=s[2],c=s[3],u=a/2;this.markerGroup.styles({transform:"translate(".concat(o,", ").concat(u,")").concat(this.markerGroup.node().style._transform)}),this.labelGroup.styles({transform:"translate(".concat(A,", ").concat(u,")")}),this.focusGroup&&this.focusGroup.styles({transform:"translate(".concat(c,", ").concat(u,")")}),Jy(this.labelGroup.select(Yr.label.class).node(),Math.ceil(n)),this.showValue&&(this.valueGroup.styles({transform:"translate(".concat(l,", ").concat(u,")")}),Jy(this.valueGroup.select(Yr.value.class).node(),Math.ceil(i)))},t.prototype.render=function(e,n){var i=Le(n),a=e.x,s=a===void 0?0:a,o=e.y,A=o===void 0?0:o;i.styles({transform:"translate(".concat(s,", ").concat(A,")")}),this.renderMarker(i),this.renderLabel(i),this.renderValue(i),this.renderBackground(i),this.renderPoptip(i),this.renderFocus(i),this.adjustLayout()},t}(Sr),Ol=Fs({page:"item-page",navigator:"navigator",item:"item"},"items"),n2=function(r,t,e){return e===void 0&&(e=!0),r?t(r):e},QR=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,e,{data:[],gridRow:1/0,gridCol:void 0,padding:0,width:1e3,height:100,rowPadding:0,colPadding:0,layout:"flex",orientation:"horizontal",click:Zy,mouseenter:Zy,mouseleave:Zy})||this;return n.navigatorShape=[0,0],n}return Object.defineProperty(t.prototype,"pageViews",{get:function(){return this.navigator.getContainer()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"grid",{get:function(){var e=this.attributes,n=e.gridRow,i=e.gridCol,a=e.data;if(!n&&!i)throw new Error("gridRow and gridCol can not be set null at the same time");return n&&i?[n,i]:n?[n,a.length]:[a.length,i]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"renderData",{get:function(){var e=this.attributes,n=e.data,i=e.layout,a=e.poptip,s=e.focus,o=e.focusMarkerSize,A=e.classNamePrefix,l=en(this.attributes,"item"),c=n.map(function(u,h){var f=u.id,d=f===void 0?h:f,g=u.label,v=u.value;return{id:"".concat(d),index:h,style:(0,j.pi)({layout:i,labelText:g,valueText:v,poptip:a,focus:s,focusMarkerSize:o,classNamePrefix:A},Object.fromEntries(Object.entries(l).map(function(y){var E=(0,j.CR)(y,2),C=E[0],I=E[1];return[C,ga(I,[u,h,n])]})))}});return c},enumerable:!1,configurable:!0}),t.prototype.getGridLayout=function(){var e=this,n=this.attributes,i=n.orientation,a=n.width,s=n.rowPadding,o=n.colPadding,A=(0,j.CR)(this.navigatorShape,1),l=A[0],c=(0,j.CR)(this.grid,2),u=c[0],h=c[1],f=h*u,d=0;return this.pageViews.children.map(function(g,v){var y,E,C=Math.floor(v/f),I=v%f,R=e.ifHorizontal(h,u),K=[Math.floor(I/R),I%R];i==="vertical"&&K.reverse();var W=(0,j.CR)(K,2),V=W[0],J=W[1],et=(a-l-(h-1)*o)/h,at=g.getBBox().height,ct=(0,j.CR)([0,0],2),pt=ct[0],wt=ct[1];return i==="horizontal"?(y=(0,j.CR)([d,V*(at+s)],2),pt=y[0],wt=y[1],d=J===h-1?0:d+et+o):(E=(0,j.CR)([J*(et+o),d],2),pt=E[0],wt=E[1],d=V===u-1?0:d+at+s),{page:C,index:v,row:V,col:J,pageIndex:I,width:et,height:at,x:pt,y:wt}})},t.prototype.getFlexLayout=function(){var e=this.attributes,n=e.width,i=e.height,a=e.rowPadding,s=e.colPadding,o=(0,j.CR)(this.navigatorShape,1),A=o[0],l=(0,j.CR)(this.grid,2),c=l[0],u=l[1],h=(0,j.CR)([n-A,i],2),f=h[0],d=h[1],g=(0,j.CR)([0,0,0,0,0,0,0,0],8),v=g[0],y=g[1],E=g[2],C=g[3],I=g[4],R=g[5],K=g[6],W=g[7];return this.pageViews.children.map(function(V,J){var et,at,ct,pt,wt=V.getBBox(),Ct=wt.width,Ht=wt.height,Rt=K===0?0:s,St=K+Rt+Ct;if(St<=f&&n2(I,function(Gt){return Gt<u}))return et=(0,j.CR)([K+Rt,W,St],3),v=et[0],y=et[1],K=et[2],{width:Ct,height:Ht,x:v,y,page:E,index:J,pageIndex:C++,row:R,col:I++};at=(0,j.CR)([R+1,0,0,W+Ht+a],4),R=at[0],I=at[1],K=at[2],W=at[3];var Ot=W+Ht;return Ot<=d&&n2(R,function(Gt){return Gt<c})?(ct=(0,j.CR)([K,W,Ct],3),v=ct[0],y=ct[1],K=ct[2],{width:Ct,height:Ht,x:v,y,page:E,index:J,pageIndex:C++,row:R,col:I++}):(pt=(0,j.CR)([0,0,Ct,0,E+1,0,0,0],8),v=pt[0],y=pt[1],K=pt[2],W=pt[3],E=pt[4],C=pt[5],R=pt[6],I=pt[7],{width:Ct,height:Ht,x:v,y,page:E,index:J,pageIndex:C++,row:R,col:I++})})},Object.defineProperty(t.prototype,"itemsLayout",{get:function(){this.navigatorShape=[0,0];var e=this.attributes.layout==="grid"?this.getGridLayout:this.getFlexLayout,n=e.call(this);return n.slice(-1)[0].page>0?(this.navigatorShape=[55,0],e.call(this)):n},enumerable:!1,configurable:!0}),t.prototype.ifHorizontal=function(e,n){var i=this.attributes.orientation;return Yy(i,e,n)},t.prototype.flattenPage=function(e){e.querySelectorAll(Ol.item.class).forEach(function(n){e.appendChild(n)}),e.querySelectorAll(Ol.page.class).forEach(function(n){var i=e.removeChild(n);i.destroy()})},t.prototype.renderItems=function(e){var n=this.attributes,i=n.click,a=n.mouseenter,s=n.mouseleave,o=n.classNamePrefix;this.flattenPage(e);var A=this.dispatchCustomEvent.bind(this),l=Hi(Ol.item.name,na.item,o);Le(e).selectAll(Ol.item.class).data(this.renderData,function(c){return c.id}).join(function(c){return c.append(function(u){var h=u.style,f=(0,j._T)(u,["style"]);return new kR({style:h},f)}).attr("className",l).on("click",function(){i==null||i(this),A("itemClick",{item:this})}).on("pointerenter",function(){a==null||a(this),A("itemMouseenter",{item:this})}).on("pointerleave",function(){s==null||s(this),A("itemMouseleave",{item:this})})},function(c){return c.each(function(u){var h=u.style;this.update(h)})},function(c){return c.remove()})},t.prototype.relayoutNavigator=function(){var e,n=this.attributes,i=n.layout,a=n.width,s=((e=this.pageViews.children[0])===null||e===void 0?void 0:e.getBBox().height)||0,o=(0,j.CR)(this.navigatorShape,2),A=o[0],l=o[1];this.navigator.update(i==="grid"?{pageWidth:a-A,pageHeight:s-l}:{})},t.prototype.adjustLayout=function(){var e=this,n=Object.entries(GD(this.itemsLayout,"page")).map(function(a){var s=(0,j.CR)(a,2),o=s[0],A=s[1];return{page:o,layouts:A}}),i=(0,j.ev)([],(0,j.CR)(this.navigator.getContainer().children),!1);n.forEach(function(a){var s=a.layouts,o=e.pageViews.appendChild(new oi({className:Ol.page.name}));s.forEach(function(A){var l=A.x,c=A.y,u=A.index,h=A.width,f=A.height,d=i[u];o.appendChild(d),dh(d,"__layout__",A),d.update({x:l,y:c,width:h,height:f})})}),this.relayoutNavigator()},t.prototype.renderNavigator=function(e){var n=this.attributes,i=n.orientation,a=n.classNamePrefix,s=en(this.attributes,"nav"),o=jr({orientation:i,classNamePrefix:a},s),A=this;return e.selectAll(Ol.navigator.class).data(["nav"]).join(function(l){return l.append(function(){return new fR({style:o})}).attr("className",Ol.navigator.name).each(function(){A.navigator=this})},function(l){return l.each(function(){this.update(o)})},function(l){return l.remove()}),this.navigator},t.prototype.getBBox=function(){return this.navigator.getBBox()},t.prototype.render=function(e,n){var i=this.attributes.data;if(!(!i||i.length===0)){var a=this.renderNavigator(Le(n));this.renderItems(a.getContainer()),this.adjustLayout()}},t.prototype.dispatchCustomEvent=function(e,n){var i=new Wr(e,{detail:n});this.dispatchEvent(i)},t}(Sr),Il=Fs({markerGroup:"marker-group",marker:"marker",labelGroup:"label-group",label:"label"},"handle"),r2={showLabel:!0,formatter:function(r){return r.toString()},markerSize:25,markerStroke:"#c5c5c5",markerFill:"#fff",markerLineWidth:1,labelFontSize:12,labelFill:"#c5c5c5",labelText:"",orientation:"vertical",spacing:0},sG=function(r){(0,j.ZT)(t,r);function t(e){return r.call(this,e,r2)||this}return t.prototype.render=function(e,n){var i=Le(n).maybeAppendByClassName(Il.markerGroup,"g");this.renderMarker(i);var a=Le(n).maybeAppendByClassName(Il.labelGroup,"g");this.renderLabel(a)},t.prototype.renderMarker=function(e){var n=this,i=this.attributes,a=i.orientation,s=i.classNamePrefix,o=i.markerSymbol,A=o===void 0?Yy(a,"horizontalHandle","verticalHandle"):o;da(!!A,e,function(l){var c=en(n.attributes,"marker"),u=(0,j.pi)({symbol:A},c),h=Hi(Il.marker.name,na.handleMarker,s);if(n.marker=l.maybeAppendByClassName(Il.marker,function(){return new Vn({style:u,className:h})}).update(u),s){var f=n.marker.node().querySelector(".marker");if(f){var d=f.getAttribute("class")||"",g=d.split(" ")[0],v=Hi(g,na.handleMarker,s);f.setAttribute("class",v)}}})},t.prototype.renderLabel=function(e){var n=this,i=this.attributes,a=i.showLabel,s=i.orientation,o=i.spacing,A=o===void 0?0:o,l=i.formatter,c=i.classNamePrefix;da(a,e,function(u){var h,f=en(n.attributes,"label"),d=f.text,g=(0,j._T)(f,["text"]),v=((h=u.select(Il.marker.class))===null||h===void 0?void 0:h.node().getBBox())||{},y=v.width,E=y===void 0?0:y,C=v.height,I=C===void 0?0:C,R=(0,j.CR)(Yy(s,[0,I+A,"center","top"],[E+A,0,"start","middle"]),4),K=R[0],W=R[1],V=R[2],J=R[3],et=Hi(Il.label.name,na.handleLabel,c);u.maybeAppendByClassName(Il.label,"text").attr("className",et).styles((0,j.pi)((0,j.pi)({},g),{x:K,y:W,text:l(d).toString(),textAlign:V,textBaseline:J}))})},t}(Sr),i2={showTitle:!0,padding:0,orientation:"horizontal",backgroundFill:"transparent",titleText:"",titleSpacing:4,titlePosition:"top-left",titleFill:"#2C3542",titleFontWeight:"bold",titleFontFamily:"sans-serif",titleFontSize:12},UR=jr({},i2,{}),oG=jr({},i2,Gc(r2,"handle"),{color:["#d0e3fa","#acc7f6","#8daaf2","#6d8eea","#4d73cd","#325bb1","#5a3e75","#8c3c79","#e23455","#e7655b"],indicatorBackgroundFill:"#262626",indicatorLabelFill:"white",indicatorLabelFontSize:12,indicatorVisibility:"hidden",labelAlign:"value",labelDirection:"positive",labelSpacing:5,showHandle:!0,showIndicator:!0,showLabel:!0,slidable:!0,titleText:"",type:"continuous"}),AG=.01,lG=.5,Ll=Fs({title:"title",html:"html",titleGroup:"title-group",items:"items",itemsGroup:"items-group",contentGroup:"content-group",ribbonGroup:"ribbon-group",ribbon:"ribbon",handlesGroup:"handles-group",handle:"handle",startHandle:"start-handle",endHandle:"end-handle",labelGroup:"label-group",label:"label",indicator:"indicator"},"legend"),PR=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.update=function(e){this.attr(e)},t}(ll),DR=function(r){(0,j.ZT)(t,r);function t(e){return r.call(this,e,UR)||this}return t.prototype.renderTitle=function(e,n,i){var a=this.attributes,s=a.showTitle,o=a.titleText,A=a.classNamePrefix,l=en(this.attributes,"title"),c=(0,j.CR)(Uo(l),2),u=c[0],h=c[1];this.titleGroup=e.maybeAppendByClassName(Ll.titleGroup,"g").styles(h);var f=(0,j.pi)((0,j.pi)({width:n,height:i},u),{text:s?o:"",classNamePrefix:A});this.title=this.titleGroup.maybeAppendByClassName(Ll.title,function(){return new HD({style:f})}).update(f)},t.prototype.renderCustom=function(e){var n=this.attributes.data,i={innerHTML:this.attributes.render(n),pointerEvents:"auto"};e.maybeAppendByClassName(Ll.html,function(){return new PR({className:Ll.html.name,style:i})}).update(i)},t.prototype.renderItems=function(e,n){var i=n.x,a=n.y,s=n.width,o=n.height,A=en(this.attributes,"title",!0),l=(0,j.CR)(Uo(A),2),c=l[0],u=l[1],h=(0,j.pi)((0,j.pi)({},c),{width:s,height:o,x:0,y:0});this.itemsGroup=e.maybeAppendByClassName(Ll.itemsGroup,"g").styles((0,j.pi)((0,j.pi)({},u),{transform:"translate(".concat(i,", ").concat(a,")")}));var f=this;this.itemsGroup.selectAll(Ll.items.class).data(["items"]).join(function(d){return d.append(function(){return new QR({style:h})}).attr("className",Ll.items.name).each(function(){f.items=Le(this)})},function(d){return d.update(h)},function(d){return d.remove()})},t.prototype.adjustLayout=function(){var e=this.attributes.showTitle;if(e){var n=this.title.node().getAvailableSpace(),i=n.x,a=n.y;this.itemsGroup.node().style.transform="translate(".concat(i,", ").concat(a,")")}},Object.defineProperty(t.prototype,"availableSpace",{get:function(){var e=this.attributes,n=e.showTitle,i=e.width,a=e.height;return n?this.title.node().getAvailableSpace():new _i(0,0,i,a)},enumerable:!1,configurable:!0}),t.prototype.getBBox=function(){var e,n,i=(e=this.title)===null||e===void 0?void 0:e.node(),a=(n=this.items)===null||n===void 0?void 0:n.node();return!i||!a?r.prototype.getBBox.call(this):DD(i,a)},t.prototype.render=function(e,n){var i=this.attributes,a=i.width,s=i.height,o=i.x,A=o===void 0?0:o,l=i.y,c=l===void 0?0:l,u=i.classNamePrefix,h=i.render,f=Le(n),d=n.className||"legend-category";u?n.attr("className","".concat(d," ").concat(u,"legend")):n.className||n.attr("className","legend-category"),n.style.transform="translate(".concat(A,", ").concat(c,")"),h?this.renderCustom(f):(this.renderTitle(f,a,s),this.renderItems(f,this.availableSpace),this.adjustLayout())},t}(Sr);function lv(r){const{width:t,height:e,renderer:n}=r,i=RR(r),a=new om({width:t,height:e,container:i,renderer:n||new mh});return[i,a]}function RR(r){var t;const{container:e,className:n,graphCanvas:i}=r;if(e)return typeof e=="string"?document.getElementById(e):e;const a=Hc(n,!1),{width:s,height:o,containerStyle:A}=r,[l,c]=_R(r);return Object.assign(a.style,Object.assign({position:"absolute",left:l+"px",top:c+"px",width:s+"px",height:o+"px"},A)),(t=i.getContainer())===null||t===void 0||t.appendChild(a),a}function _R(r){const{width:t,height:e,placement:n,graphCanvas:i}=r,[a,s]=i.getSize(),[o,A]=eb(n);return[o*(a-t),A*(s-e)]}var HR=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class cv extends mi{constructor(t,e){super(t,Object.assign({},cv.defaultOptions,e)),this.typePrefix="__data__",this.draw=!1,this.fieldMap={node:new Map,edge:new Map,combo:new Map},this.selectedItems=[],this.bindEvents=()=>{const{graph:n}=this.context;n.on(ce.AFTER_DRAW,this.createElement)},this.changeState=(n,i)=>{const{graph:a}=this.context,{typePrefix:s}=this,o=Mi(n,[s,"id"]),A=Mi(n,[s,"style","labelText"]),[l]=o.split("__"),c=this.fieldMap[l].get(A)||[];a.setElementState(Object.fromEntries(c==null?void 0:c.map(u=>[u,i])))},this.click=n=>{if(this.options.trigger==="hover")return;const i=Mi(n,[this.typePrefix,"id"]);this.selectedItems.includes(i)?(this.selectedItems=this.selectedItems.filter(a=>a!==i),this.changeState(n,[])):(this.selectedItems.push(i),this.changeState(n,"selected"))},this.mouseleave=n=>{this.options.trigger!=="click"&&(this.selectedItems=[],this.changeState(n,[]))},this.mouseenter=n=>{if(this.options.trigger==="click")return;const i=Mi(n,[this.typePrefix,"id"]);this.selectedItems.includes(i)?this.selectedItems=this.selectedItems.filter(a=>a!==i):(this.selectedItems.push(i),this.changeState(n,"active"))},this.setFieldMap=(n,i,a)=>{if(!n)return;const s=this.fieldMap[a];if(s)if(!s.has(n))s.set(n,[i]);else{const o=s.get(n);o&&(o.push(i),s.set(n,o))}},this.getEvents=()=>({mouseenter:this.mouseenter,mouseleave:this.mouseleave,click:this.click}),this.getMarkerData=(n,i)=>{if(!n)return[];const{model:a,element:s}=this.context,{nodes:o,edges:A,combos:l}=a.getData(),c={},u=v=>jt(n)?n(v):n,h={node:"circle",edge:"line",combo:"rect"},f={circle:"circle",ellipse:"circle",image:"bowtie",rect:"square",star:"cross",triangle:"triangle",diamond:"diamond",cubic:"dot",line:"hyphen",polyline:"hyphen",quadratic:"hv","cubic-horizontal":"hyphen","cubic-vertical":"line"},d=(v,y)=>s==null?void 0:s.getElementComputedStyle(v,y),g=(v,y)=>{v.forEach(E=>{const{id:C}=E,I=Mi(E,["data",u(E)]),R=(s==null?void 0:s.getElementType(y,E))||"circle",K=d(y,E),W=(y==="edge"?K==null?void 0:K.stroke:K==null?void 0:K.fill)||"#1783ff";C&&I&&I.replace(/\s+/g,"")&&(this.setFieldMap(I,C,y),c[I]||(c[I]={id:`${y}__${C}`,label:I,marker:f[R]||h[y],elementType:y,lineWidth:1,stroke:W,fill:W}))})};switch(i){case"node":g(o,"node");break;case"edge":g(A,"edge");break;case"combo":g(l,"combo");break;default:return[]}return Object.values(c)},this.createElement=()=>{if(this.draw){this.updateElement();return}const n=this.options,{width:i,height:a,nodeField:s,edgeField:o,comboField:A,trigger:l,position:c,container:u,containerStyle:h,className:f}=n,d=HR(n,["width","height","nodeField","edgeField","comboField","trigger","position","container","containerStyle","className"]),g=this.getMarkerData(s,"node"),v=this.getMarkerData(o,"edge"),y=this.getMarkerData(A,"combo"),E=[...g,...y,...v],C=Object.assign({width:i,height:a,data:E,itemMarkerLineWidth:({lineWidth:K})=>K,itemMarker:({marker:K})=>K,itemMarkerStroke:({stroke:K})=>K,itemMarkerFill:({fill:K})=>K,gridCol:g.length},d,this.getEvents()),I=new DR({className:"legend",style:C});this.category=I,this.upsertCanvas().appendChild(I),this.draw=!0},this.bindEvents()}update(t){super.update(t),this.clear(),this.createElement()}clear(){var t,e;(t=this.canvas)===null||t===void 0||t.destroy(),(e=this.container)===null||e===void 0||e.remove(),this.canvas=void 0,this.container=void 0,this.draw=!1}updateElement(){this.category&&this.category.update({itemMarkerOpacity:({id:t})=>!this.selectedItems.length||this.selectedItems.includes(t)?1:.5,itemLabelOpacity:({id:t})=>!this.selectedItems.length||this.selectedItems.includes(t)?1:.5})}upsertCanvas(){if(this.canvas)return this.canvas;const t=this.context.canvas,[e,n]=t.getSize(),{width:i=e,height:a=n,position:s,container:o,containerStyle:A,className:l}=this.options,[c,u]=lv({width:i,height:a,graphCanvas:t,container:o,containerStyle:A,placement:s,className:"legend"});return this.container=c,l&&c.classList.add(l),this.canvas=u,this.canvas}destroy(){this.clear(),this.context.graph.off(ce.AFTER_DRAW,this.createElement),super.destroy()}}cv.defaultOptions={position:"bottom",trigger:"hover",orientation:"horizontal",layout:"flex",itemSpacing:4,rowPadding:10,colPadding:10,itemMarkerSize:16,itemLabelFontSize:16,width:240,height:160};class uv extends mi{constructor(t,e){super(t,Object.assign({},uv.defaultOptions,e)),this.onDraw=n=>{var i;!((i=n==null?void 0:n.data)===null||i===void 0)&&i.render||this.onRender()},this.landmarkMap=new Map,this.mask=null,this.isMaskDragging=!1,this.onMaskDragStart=n=>{this.mask&&(this.isMaskDragging=!0,this.mask.setPointerCapture(n.pointerId),this.mask.addEventListener("pointermove",this.onMaskDrag),this.mask.addEventListener("pointerup",this.onMaskDragEnd),this.mask.addEventListener("pointercancel",this.onMaskDragEnd))},this.onMaskDrag=n=>{if(!this.mask||!this.isMaskDragging)return;const{size:[i,a]}=this.options,{movementX:s,movementY:o}=n,{left:A,top:l,width:c,height:u}=this.mask.style,[,,h,f]=this.maskBBox;let d=parseInt(A)+s,g=parseInt(l)+o,v=parseInt(c),y=parseInt(u);d<0&&(d=0),g<0&&(g=0),d+v>i&&(d=OA(i-v,0)),g+y>a&&(g=OA(a-y,0)),v<h&&(s>0?(d=OA(d-s,0),v=FA(v+s,i)):s<0&&(v=FA(v-s,i))),y<f&&(o>0?(g=OA(g-o,0),y=FA(y+o,a)):o<0&&(y=FA(y-o,a))),Object.assign(this.mask.style,{left:d+"px",top:g+"px",width:v+"px",height:y+"px"});const E=parseInt(A)-d,C=parseInt(l)-g;if(E===0&&C===0)return;const I=this.context.canvas.getCamera().getZoom(),R=this.canvas.getCamera().getZoom(),K=I/R;this.context.graph.translateBy([E*K,C*K],!1)},this.onMaskDragEnd=n=>{this.mask&&(this.isMaskDragging=!1,this.mask.releasePointerCapture(n.pointerId),this.mask.removeEventListener("pointermove",this.onMaskDrag),this.mask.removeEventListener("pointerup",this.onMaskDragEnd),this.mask.removeEventListener("pointercancel",this.onMaskDragEnd))},this.onTransform=AB(()=>{this.isMaskDragging||(this.updateMask(),this.setCamera())},32,{leading:!0}),this.setOnRender(),this.bindEvents()}update(t){this.unbindEvents(),super.update(t),"delay"in t&&this.setOnRender(),this.bindEvents()}setOnRender(){this.onRender=bh(()=>{this.renderMinimap(),this.renderMask()},this.options.delay)}bindEvents(){const{graph:t}=this.context;t.on(ce.AFTER_DRAW,this.onDraw),t.on(ce.AFTER_RENDER,this.onRender),t.on(ce.AFTER_ANIMATE,this.onRender),t.on(ce.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:t}=this.context;t.off(ce.AFTER_DRAW,this.onDraw),t.off(ce.AFTER_RENDER,this.onRender),t.off(ce.AFTER_ANIMATE,this.onRender),t.off(ce.AFTER_TRANSFORM,this.onTransform)}renderMinimap(){const t=this.getElements(),e=this.initCanvas();this.setShapes(e,t)}getElements(){const{filter:t}=this.options,{model:e,element:n}=this.context,i=e.getData(),a={nodes:i.nodes.filter(l=>n==null?void 0:n.getElement(Pt(l))),edges:i.edges.filter(l=>{const c=n==null?void 0:n.getElement(Pt(l));return c&&ax(c)}),combos:i.combos.filter(l=>n==null?void 0:n.getElement(Pt(l)))};if(!t)return a;const{nodes:s,edges:o,combos:A}=a;return{nodes:s.filter(l=>t(Pt(l),"node")),edges:o.filter(l=>t(Pt(l),"edge")),combos:A.filter(l=>t(Pt(l),"combo"))}}setShapes(t,e){const{nodes:n,edges:i,combos:a}=e,{shape:s}=this.options,{element:o}=this.context,A=(l,c)=>{const u=Pt(l),h=o==null?void 0:o.getElement(u);if(!h)return;const f=h.getShape("key");let d;if(typeof s=="string"){const g=s;d=h.getShape(g).cloneNode()}else{const g=s(u,c,h);g===h?d=g.cloneNode(!0):d=g}d.setPosition(f.getPosition()),h.style.zIndex&&(d.style.zIndex=h.style.zIndex),d.id=h.id,t.appendChild(d)};t.removeChildren(),i.forEach(l=>A(l,"edge")),a.forEach(l=>A(l,"combo")),n.forEach(l=>A(l,"node"))}initCanvas(){const{renderer:t,size:[e,n]}=this.options;if(this.canvas){const{width:i,height:a}=this.canvas.getConfig();(e!==i||n!==a)&&this.canvas.resize(e,n),t&&this.canvas.setRenderer(t)}else{const{className:i,position:a,container:s,containerStyle:o}=this.options,[A,l]=lv({renderer:t,width:e,height:n,placement:a,className:"minimap",container:s,containerStyle:o,graphCanvas:this.context.canvas});i&&A.classList.add(i),this.container=A,this.canvas=l}return this.setCamera(),this.canvas}createLandmark(t,e,n){const i=`${t.join(",")}-${e.join(",")}-${n}`;if(this.landmarkMap.has(i))return this.landmarkMap.get(i);const s=this.canvas.getCamera().createLandmark(i,{position:t,focalPoint:e,zoom:n});return this.landmarkMap.set(i,s),s}setCamera(){var t;const{canvas:e}=this.context,n=(t=this.canvas)===null||t===void 0?void 0:t.getCamera();if(!n)return;const{size:[i,a],padding:s}=this.options,[o,A,l,c]=La(s),{min:u,max:h,center:f}=e.getBounds("elements"),d=h[0]-u[0],g=h[1]-u[1],v=i-c-A,y=a-o-l,E=v/d,C=y/g,I=Math.min(E,C),R=this.createLandmark(f,f,I);n.gotoLandmark(R,0)}get maskBBox(){const{canvas:t}=this.context,e=t.getSize(),n=t.getCanvasByViewport([0,0]),i=t.getCanvasByViewport(e),a=this.canvas.canvas2Viewport(xs(n)),s=this.canvas.canvas2Viewport(xs(i)),o=s.x-a.x,A=s.y-a.y;return[a.x,a.y,o,A]}calculateMaskBBox(){const{size:[t,e]}=this.options;let[n,i,a,s]=this.maskBBox;return n<0&&(a=FA(a+n,t),n=0),i<0&&(s=FA(s+i,e),i=0),n+a>t&&(a=OA(t-n,0)),i+s>e&&(s=OA(e-i,0)),[FA(n,t),FA(i,e),OA(a,0),OA(s,0)]}renderMask(){const{maskStyle:t}=this.options;this.mask||(this.mask=document.createElement("div"),this.mask.addEventListener("pointerdown",this.onMaskDragStart),this.mask.draggable=!0,this.mask.addEventListener("dragstart",e=>e.preventDefault&&e.preventDefault())),this.container.appendChild(this.mask),Object.assign(this.mask.style,Object.assign(Object.assign({},t),{cursor:"move",position:"absolute",pointerEvents:"auto"})),this.updateMask()}updateMask(){if(!this.mask)return;const[t,e,n,i]=this.calculateMaskBBox();Object.assign(this.mask.style,{top:e+"px",left:t+"px",width:n+"px",height:i+"px"})}destroy(){var t,e,n;this.unbindEvents(),(t=this.canvas)===null||t===void 0||t.destroy(),(e=this.mask)===null||e===void 0||e.remove(),(n=this.container)===null||n===void 0||n.remove(),super.destroy()}}uv.defaultOptions={size:[240,160],shape:"key",padding:10,position:"right-bottom",maskStyle:{border:"1px solid #ddd",background:"rgba(0, 0, 0, 0.1)"},containerStyle:{border:"1px solid #ddd",background:"#fff"},delay:128};const FA=(r,t)=>Math.min(r,t),OA=(r,t)=>Math.max(r,t);var $y=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};const t1={x1:0,y1:0,x2:0,y2:0,visibility:"hidden"};class hv extends mi{constructor(t,e){super(t,Object.assign({},hv.defaultOptions,e)),this.initSnapline=()=>{const n=this.context.canvas.getLayer("transient");this.horizontalLine||(this.horizontalLine=n.appendChild(new cl({style:Object.assign(Object.assign({},t1),this.options.horizontalLineStyle)}))),this.verticalLine||(this.verticalLine=n.appendChild(new cl({style:Object.assign(Object.assign({},t1),this.options.verticalLineStyle)})))},this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!0,this.autoSnapToLine=(n,i,a)=>$y(this,void 0,void 0,function*(){const{verticalX:s,horizontalY:o}=a,{tolerance:A}=this.options,{min:[l,c],max:[u,h],center:[f,d]}=i;let g=0,v=0;s!==null&&(Gi(u,s)<A&&(g=s-u),Gi(l,s)<A&&(g=s-l),Gi(f,s)<A&&(g=s-f),g!==0&&(this.isVerticalSticking=!0)),o!==null&&(Gi(h,o)<A&&(v=o-h),Gi(c,o)<A&&(v=o-c),Gi(d,o)<A&&(v=o-d),v!==0&&(this.isHorizontalSticking=!0)),(g!==0||v!==0)&&(yield this.context.graph.translateElementBy({[n]:[g,v]},!1))}),this.enableSnap=n=>{const{target:i}=n,a=.5;if(this.isHorizontalSticking||this.isVerticalSticking){const[s,o]=this.getDelta(n);if(this.isHorizontalSticking&&this.isVerticalSticking&&Math.abs(s)<=a&&Math.abs(o)<=a)return this.context.graph.translateElementBy({[i.id]:[-s,-o]},!1),!1;if(this.isHorizontalSticking&&Math.abs(o)<=a)return this.context.graph.translateElementBy({[i.id]:[0,-o]},!1),!1;if(this.isVerticalSticking&&Math.abs(s)<=a)return this.context.graph.translateElementBy({[i.id]:[-s,0]},!1),!1;this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!1,setTimeout(()=>{this.enableStick=!0},200)}return this.enableStick},this.calcSnaplineMetadata=(n,i)=>{const{tolerance:a,shape:s}=this.options,{min:[o,A],max:[l,c],center:[u,h]}=i;let f=null,d=null,g=null,v=null,y=null,E=null;return this.getNodes().some(C=>{if(Rr(n.id,C.id))return!1;const I=a2(C,s).getRenderBounds(),{min:[R,K],max:[W,V],center:[J,et]}=I;return f===null&&(Gi(J,u)<a?f=J:Gi(R,o)<a||Gi(R,l)<a?f=R:(Gi(W,l)<a||Gi(W,o)<a)&&(f=W),f!==null&&(d=Math.min(K,A),g=Math.max(V,c))),v===null&&(Gi(et,h)<a?v=et:Gi(K,A)<a||Gi(K,c)<a?v=K:(Gi(V,c)<a||Gi(V,A)<a)&&(v=V),v!==null&&(y=Math.min(R,o),E=Math.max(W,l))),f!==null&&v!==null}),{verticalX:f,verticalMinY:d,verticalMaxY:g,horizontalY:v,horizontalMinX:y,horizontalMaxX:E}},this.onDragStart=()=>{this.initSnapline()},this.onDrag=n=>$y(this,void 0,void 0,function*(){const{target:i}=n;if(this.options.autoSnap&&!this.enableSnap(n))return;const a=a2(i,this.options.shape).getRenderBounds(),s=this.calcSnaplineMetadata(i,a);this.hideSnapline(),(s.verticalX!==null||s.horizontalY!==null)&&this.updateSnapline(s),this.options.autoSnap&&(yield this.autoSnapToLine(i.id,a,s))}),this.onDragEnd=()=>{this.hideSnapline()},this.bindEvents()}getNodes(){var t;const{filter:e}=this.options,i=(((t=this.context.element)===null||t===void 0?void 0:t.getNodes())||[]).filter(a=>{var s;return ax(a)&&((s=this.context.viewport)===null||s===void 0?void 0:s.isInViewport(a.getRenderBounds()))});return e?i.filter(a=>e(a)):i}hideSnapline(){this.horizontalLine.style.visibility="hidden",this.verticalLine.style.visibility="hidden"}getLineWidth(t){const{lineWidth:e}=this.options[`${t}LineStyle`];return+(e||t1.lineWidth||1)/this.context.graph.getZoom()}updateSnapline(t){const{verticalX:e,verticalMinY:n,verticalMaxY:i,horizontalY:a,horizontalMinX:s,horizontalMaxX:o}=t,[A,l]=this.context.canvas.getSize(),{offset:c}=this.options;a!==null?Object.assign(this.horizontalLine.style,{x1:c===1/0?0:s-c,y1:a,x2:c===1/0?A:o+c,y2:a,visibility:"visible",lineWidth:this.getLineWidth("horizontal")}):this.horizontalLine.style.visibility="hidden",e!==null?Object.assign(this.verticalLine.style,{x1:e,y1:c===1/0?0:n-c,x2:e,y2:c===1/0?l:i+c,visibility:"visible",lineWidth:this.getLineWidth("vertical")}):this.verticalLine.style.visibility="hidden"}getDelta(t){const e=this.context.graph.getZoom();return bs([t.dx,t.dy],e)}bindEvents(){return $y(this,void 0,void 0,function*(){const{graph:t}=this.context;t.on($a.DRAG_START,this.onDragStart),t.on($a.DRAG,this.onDrag),t.on($a.DRAG_END,this.onDragEnd)})}unbindEvents(){const{graph:t}=this.context;t.off($a.DRAG_START,this.onDragStart),t.off($a.DRAG,this.onDrag),t.off($a.DRAG_END,this.onDragEnd)}destroyElements(){var t,e;(t=this.horizontalLine)===null||t===void 0||t.destroy(),(e=this.verticalLine)===null||e===void 0||e.destroy()}destroy(){this.destroyElements(),this.unbindEvents(),super.destroy()}}hv.defaultOptions={tolerance:5,offset:20,autoSnap:!0,shape:"key",verticalLineStyle:{stroke:"#1783FF"},horizontalLineStyle:{stroke:"#1783FF"},filter:()=>!0};const Gi=(r,t)=>Math.abs(r-t),a2=(r,t)=>typeof t=="function"?t(r):r.getShape(t);var s2=null,GR=null;function fv(r){return r instanceof Date?r:new Date(r)}function KR(r){for(var t=__read(r,2),e=t[0],n=t[1],i=s2.indexOf(e),a=s2.indexOf(n),s="",o=i;o<=a;o+=1)if(s+=GR[o],o<a){var A="-";o===2?A=" ":o>2&&(A=":"),s+=A}return s}function ia(r,t){var e={YYYY:r.getFullYear(),MM:r.getMonth()+1,DD:r.getDate(),HH:r.getHours(),mm:r.getMinutes(),ss:r.getSeconds()},n=t;return Object.keys(e).forEach(function(i){var a=e[i];n=n.replace(i,i==="YYYY"?"".concat(a):"".concat(a).padStart(2,"0"))}),n}function cG(r,t){return fv(r).getTime()-fv(t).getTime()}function uG(r,t){var e=__read([fv(r),fv(t)],2),n=e[0],i=e[1];return n.getFullYear()!==i.getFullYear()?"year":n.getMonth()!==i.getMonth()?"month":n.getDay()!==i.getDay()?"day":n.getHours()!==i.getHours()?"hour":n.getMinutes()!==i.getMinutes()?"minute":"second"}function hG(r,t){var e=new Date(r),n={year:function(i){i.setMonth(0),i.setHours(0,0,0,0)},month:function(i){i.setDate(1),i.setHours(0,0,0,0)},day:function(i){return i.setHours(0,0,0,0)},hour:function(i){return i.setMinutes(0,0,0)},minute:function(i){return i.setSeconds(0,0)},second:function(i){return i.setMilliseconds(0)}};return n[t](e),ia(e,KR(["year",t]))}function zR(r,t){if(r.length<=t)return r;for(var e=Math.floor(r.length/t),n=[],i=0;i<r.length;i+=e)n.push(r[i]);return n}var Wn={gridGroup:"grid-group",mainGroup:"main-group",lineGroup:"line-group",tickGroup:"tick-group",labelGroup:"label-group",titleGroup:"title-group",grid:"grid",line:"line",lineFirst:"line-first",lineSecond:"line-second",tick:"tick",tickItem:"tick-item",label:"label",labelItem:"label-item",title:"title"},e1={data:[],animate:{enter:!1,update:{duration:100,easing:"ease-in-out-sine",fill:"both"},exit:{duration:100,fill:"both"}},showArrow:!0,showGrid:!0,showLabel:!0,showLine:!0,showTick:!0,showTitle:!0,showTrunc:!1,dataThreshold:100,lineLineWidth:1,lineStroke:"black",crossPadding:10,titleFill:"black",titleFontSize:12,titlePosition:"lb",titleSpacing:0,titleTextAlign:"center",titleTextBaseline:"middle",lineArrow:function(){return new Pi({style:{d:[["M",10,10],["L",-10,0],["L",10,-10],["L",0,0],["L",10,10],["Z"]],fill:"black",transformOrigin:"center"}})},labelAlign:"parallel",labelDirection:"positive",labelFontSize:12,labelSpacing:0,gridConnect:"line",gridControlAngles:[],gridDirection:"positive",gridLength:0,gridType:"segment",lineArrowOffset:15,lineArrowSize:10,tickDirection:"positive",tickLength:5,tickLineWidth:1,tickStroke:"black",labelOverlap:[]},fG=Ci({},e1,{style:{type:"arc"}}),dG=Ci({},e1,{style:{}}),Je=Fs({mainGroup:Wn.mainGroup,gridGroup:Wn.gridGroup,grid:Wn.grid,lineGroup:Wn.lineGroup,line:Wn.line,tickGroup:Wn.tickGroup,tick:Wn.tick,tickItem:Wn.tickItem,labelGroup:Wn.labelGroup,label:Wn.label,labelItem:Wn.labelItem,titleGroup:Wn.titleGroup,title:Wn.title,lineFirst:Wn.lineFirst,lineSecond:Wn.lineSecond},"axis");function Do(r,t){return[r[0]*t,r[1]*t]}function Ih(r,t){return[r[0]+t[0],r[1]+t[1]]}function n1(r,t){return[r[0]-t[0],r[1]-t[1]]}function Nl(r,t){return[Math.min(r[0],t[0]),Math.min(r[1],t[1])]}function kl(r,t){return[Math.max(r[0],t[0]),Math.max(r[1],t[1])]}function Lh(r,t){return Math.sqrt(Math.pow(r[0]-t[0],2)+Math.pow(r[1]-t[1],2))}function o2(r){if(r[0]===0&&r[1]===0)return[0,0];var t=Math.sqrt(Math.pow(r[0],2)+Math.pow(r[1],2));return[r[0]/t,r[1]/t]}function gG(r,t,e){var n=__read(r,2),i=n[0],a=n[1],s=__read(t,2),o=s[0],A=s[1],l=i-o,c=a-A,u=Math.sin(e),h=Math.cos(e);return[l*h-c*u+o,l*u+c*h+A]}function VR(r,t){return t?[r[1],-r[0]]:[-r[1],r[0]]}function zc(r){return r*Math.PI/180}function A2(r){return Number((r*180/Math.PI).toPrecision(5))}function dv(r,t){return r.style.opacity||(r.style.opacity=1),Os(r,{opacity:0},t)}var WR=["$el","cx","cy","d","dx","dy","fill","fillOpacity","filter","fontFamily","fontSize","fontStyle","fontVariant","fontWeight","height","img","increasedLineWidthForHitTesting","innerHTML","isBillboard","billboardRotation","isSizeAttenuation","isClosed","isOverflowing","leading","letterSpacing","lineDash","lineHeight","lineWidth","markerEnd","markerEndOffset","markerMid","markerStart","markerStartOffset","maxLines","metrics","miterLimit","offsetX","offsetY","opacity","path","points","r","radius","rx","ry","shadowColor","src","stroke","strokeOpacity","text","textAlign","textBaseline","textDecorationColor","textDecorationLine","textDecorationStyle","textOverflow","textPath","textPathSide","textPathStartOffset","transform","transformOrigin","visibility","width","wordWrap","wordWrapWidth","x","x1","x2","y","y1","y2","z1","z2","zIndex"];function ZR(r){return WR.includes(r)}function l2(r){var t={};for(var e in r)ZR(e)&&(t[e]=r[e]);return t}var Vc=Fs({lineGroup:"line-group",line:"line",regionGroup:"region-group",region:"region"},"grid");function c2(r){return r.reduce(function(t,e,n){return t.push((0,j.ev)([n===0?"M":"L"],(0,j.CR)(e),!1)),t},[])}function jR(r,t,e){var n=t.connect,i=n===void 0?"line":n,a=t.center;if(i==="line")return c2(r);if(!a)return[];var s=Lh(r[0],a),o=e?0:1;return r.reduce(function(A,l,c){return c===0?A.push((0,j.ev)(["M"],(0,j.CR)(l),!1)):A.push((0,j.ev)(["A",s,s,0,0,o],(0,j.CR)(l),!1)),A},[])}function r1(r,t,e){return t.type==="surround"?jR(r,t,e):c2(r)}function YR(r,t,e){var n=e.type,i=e.connect,a=e.center,s=e.closed,o=s?[["Z"]]:[],A=(0,j.CR)([r1(r,e),r1(t.slice().reverse(),e,!0)],2),l=A[0],c=A[1],u=(0,j.CR)([r[0],t.slice(-1)[0]],2),h=u[0],f=u[1],d=function(E,C){return[l,E,c,C,o].flat()};if(i==="line"||n==="surround")return d([(0,j.ev)(["L"],(0,j.CR)(f),!1)],[(0,j.ev)(["L"],(0,j.CR)(h),!1)]);if(!a)throw new Error("Arc grid need to specified center");var g=(0,j.CR)([Lh(f,a),Lh(h,a)],2),v=g[0],y=g[1];return d([(0,j.ev)(["A",v,v,0,0,1],(0,j.CR)(f),!1),(0,j.ev)(["L"],(0,j.CR)(f),!1)],[(0,j.ev)(["A",y,y,0,0,0],(0,j.CR)(h),!1),(0,j.ev)(["L"],(0,j.CR)(h),!1)])}function XR(r,t,e,n){var i=e.animate,a=e.isBillboard,s=t.map(function(o,A){return{id:o.id||"grid-line-".concat(A),d:r1(o.points,e)}});return r.selectAll(Vc.line.class).data(s,function(o){return o.id}).join(function(o){return o.append("path").each(function(A,l){var c=ga(l2((0,j.pi)({d:A.d},n)),[A,l,s]);this.attr((0,j.pi)({class:Vc.line.name,stroke:"#D9D9D9",lineWidth:1,lineDash:[4,4],isBillboard:a},c))})},function(o){return o.transition(function(A,l){var c=ga(l2((0,j.pi)({d:A.d},n)),[A,l,s]);return Os(this,c,i.update)})},function(o){return o.transition(function(){var A=this,l=dv(this,i.exit);return Kc(l,function(){return A.remove()}),l})}).transitions()}function JR(r,t,e){var n=e.animate,i=e.connect,a=e.areaFill;if(t.length<2||!a||!i)return[];for(var s=Array.isArray(a)?a:[a,"transparent"],o=function(d){return s[d%s.length]},A=[],l=0;l<t.length-1;l++){var c=(0,j.CR)([t[l].points,t[l+1].points],2),u=c[0],h=c[1],f=YR(u,h,e);A.push({d:f,fill:o(l)})}return r.selectAll(Vc.region.class).data(A,function(d,g){return g}).join(function(d){return d.append("path").each(function(g,v){var y=ga(g,[g,v,A]);this.attr(y)}).attr("className",Vc.region.name)},function(d){return d.transition(function(g,v){var y=ga(g,[g,v,A]);return Os(this,y,n.update)})},function(d){return d.transition(function(){var g=this,v=dv(this,n.exit);return Kc(v,function(){return g.remove()}),v})}).transitions()}function qR(r){var t=r.data,e=t===void 0?[]:t,n=r.closed;return n?e.map(function(i){var a=i.points,s=(0,j.CR)(a,1),o=s[0];return(0,j.pi)((0,j.pi)({},i),{points:(0,j.ev)((0,j.ev)([],(0,j.CR)(a),!1),[o],!1)})}):e}var $R=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.render=function(e,n){var i=e.type,a=e.center,s=e.areaFill,o=e.closed,A=(0,j._T)(e,["type","center","areaFill","closed"]),l=qR(e),c=Le(n).maybeAppendByClassName(Vc.lineGroup,"g"),u=Le(n).maybeAppendByClassName(Vc.regionGroup,"g"),h=XR(c,l,e,A),f=JR(u,l,e);return(0,j.ev)((0,j.ev)([],(0,j.CR)(h),!1),(0,j.CR)(f),!1)},t}(Sr),t4=function(r,t){return function(e){return r*(1-e)+t*e}};function e4(r,t){var e=t?t.length:0,n=r?Math.min(e,r.length):0;return function(i){var a=new Array(n),s=new Array(e),o=0;for(o=0;o<n;++o)a[o]=i1(r[o],t[o]);for(;o<e;++o)s[o]=t[o];for(o=0;o<n;++o)s[o]=a[o](i);return s}}function n4(r,t){r===void 0&&(r={}),t===void 0&&(t={});var e={},n={};return Object.entries(t).forEach(function(i){var a=(0,j.CR)(i,2),s=a[0],o=a[1];s in r?e[s]=i1(r[s],o):n[s]=o}),function(i){return Object.entries(e).forEach(function(a){var s=(0,j.CR)(a,2),o=s[0],A=s[1];return n[o]=A(i)}),n}}function i1(r,t){return typeof r=="number"&&typeof t=="number"?t4(r,t):Array.isArray(r)&&Array.isArray(t)?e4(r,t):typeof r=="object"&&typeof t=="object"?n4(r,t):function(e){return r}}function r4(r,t,e,n){if(!n)return r.attr("__keyframe_data__",e),null;var i=n.duration,a=i===void 0?0:i,s=i1(t,e),o=Math.ceil(+a/16),A=new Array(o).fill(0).map(function(l,c,u){return{__keyframe_data__:s(c/(u.length-1))}});return r.animate(A,(0,j.pi)({fill:"both"},n))}function a1(r,t){var e={},n=Array.isArray(t)?t:[t];for(var i in r)n.includes(i)||(e[i]=r[i]);return e}function u2(r,t){return Object.fromEntries(Object.entries(r).map(function(e){var n=(0,j.CR)(e,2),i=n[0],a=n[1];return[i,ga(a,t)]}))}function vG(r){if(r.type==="linear"){var t=r.startPos,e=r.endPos;return __spreadArray(__spreadArray([],__read(t),!1),__read(e),!1)}var n=r.startAngle,i=r.endAngle,a=r.center,s=r.radius;return __spreadArray(__spreadArray([n,i],__read(a),!1),[s],!1)}function s1(r,t){return t&&jt(t)?r.filter(t):r}function h2(r,t){var e=t.startAngle,n=t.endAngle;return(n-e)*r+e}function gv(r,t){if(t.type==="linear"){var e=(0,j.CR)(t.startPos,2),n=e[0],i=e[1],a=(0,j.CR)(t.endPos,2),s=a[0],o=a[1],A=(0,j.CR)([s-n,o-i],2),l=A[0],c=A[1];return o2([l,c])}var u=zc(h2(r,t));return[-Math.sin(u),Math.cos(u)]}function o1(r,t,e){var n=gv(r,e);return VR(n,t!=="positive")}function Wc(r,t){return o1(r,t.labelDirection,t)}function Nh(r,t,e){return e?"".concat(r," ").concat(e,"axis-").concat(t):r}function pG(r,t,e){var n=r.classNamePrefix,i=n===void 0?"":n;return Nh(t.name,e,i)}function Ua(r,t,e,n){return n&&r.attr("className",Nh(t.name,e,n)),r}function i4(r,t){var e=(0,j.CR)(t.startPos,2),n=e[0],i=e[1],a=(0,j.CR)(t.endPos,2),s=a[0],o=a[1],A=(0,j.CR)([s-n,o-i],2),l=A[0],c=A[1];return[n+l*r,i+c*r]}function a4(r,t){var e=t.radius,n=(0,j.CR)(t.center,2),i=n[0],a=n[1],s=zc(h2(r,t));return[i+e*Math.cos(s),a+e*Math.sin(s)]}function vv(r,t){return t.type==="linear"?i4(r,t):a4(r,t)}function A1(r){return gv(0,r)[1]===0}function f2(r){return gv(0,r)[0]===0}function d2(r,t){return t-r===360}function g2(r,t,e,n,i){var a=t-r,s=(0,j.CR)([i,i],2),o=s[0],A=s[1],l=(0,j.CR)([zc(r),zc(t)],2),c=l[0],u=l[1],h=function(et){return[e+i*Math.cos(et),n+i*Math.sin(et)]},f=(0,j.CR)(h(c),2),d=f[0],g=f[1],v=(0,j.CR)(h(u),2),y=v[0],E=v[1];if(d2(r,t)){var C=(u+c)/2,I=(0,j.CR)(h(C),2),R=I[0],K=I[1];return[["M",d,g],["A",o,A,0,1,0,R,K],["A",o,A,0,1,0,y,E]]}var W=a>180?1:0,V=r>t?0:1,J=!1;return J?"M".concat(e,",").concat(n,",L").concat(d,",").concat(g,",A").concat(o,",").concat(A,",0,").concat(W,",").concat(V,",").concat(y,",").concat(E,",L").concat(e,",").concat(n):"M".concat(d,",").concat(g,",A").concat(o,",").concat(A,",0,").concat(W,",").concat(V,",").concat(y,",").concat(E)}function s4(r){var t=r.attributes,e=t.startAngle,n=t.endAngle,i=t.center,a=t.radius;return(0,j.ev)((0,j.ev)([e,n],(0,j.CR)(i),!1),[a],!1)}function o4(r,t,e,n){var i=t.startAngle,a=t.endAngle,s=t.center,o=t.radius,A=t.classNamePrefix;return r.selectAll(Je.line.class).data([{d:g2.apply(void 0,(0,j.ev)((0,j.ev)([i,a],(0,j.CR)(s),!1),[o],!1))}],function(l,c){return c}).join(function(l){var c=l.append("path").attr("className",Je.line.name).styles(t).styles({d:function(u){return u.d}});return Ua(c,Je.line,Wn.line,A),c},function(l){return l.transition(function(){var c=this,u=r4(this,s4(this),(0,j.ev)((0,j.ev)([i,a],(0,j.CR)(s),!1),[o],!1),n.update);if(u){var h=function(){var f=Mi(c.attributes,"__keyframe_data__");c.style.d=g2.apply(void 0,(0,j.ev)([],(0,j.CR)(f),!1))};u.onframe=h,u.onfinish=h}return u}).styles(t)},function(l){return l.remove()}).styles(e).transitions()}function A4(r,t){var e=t.truncRange,n=t.truncShape,i=t.lineExtension}function l4(r,t,e){e===void 0&&(e=[0,0]);var n=(0,j.CR)([r,t,e],3),i=(0,j.CR)(n[0],2),a=i[0],s=i[1],o=(0,j.CR)(n[1],2),A=o[0],l=o[1],c=(0,j.CR)(n[2],2),u=c[0],h=c[1],f=(0,j.CR)([A-a,l-s],2),d=f[0],g=f[1],v=Math.sqrt(Math.pow(d,2)+Math.pow(g,2)),y=(0,j.CR)([-u/v,h/v],2),E=y[0],C=y[1];return[E*d,E*g,C*d,C*g]}function v2(r){var t=(0,j.CR)(r,2),e=(0,j.CR)(t[0],2),n=e[0],i=e[1],a=(0,j.CR)(t[1],2),s=a[0],o=a[1];return{x1:n,y1:i,x2:s,y2:o}}function c4(r,t,e,n){var i=t.showTrunc,a=t.startPos,s=t.endPos,o=t.truncRange,A=t.lineExtension,l=t.classNamePrefix,c=(0,j.CR)([a,s],2),u=(0,j.CR)(c[0],2),h=u[0],f=u[1],d=(0,j.CR)(c[1],2),g=d[0],v=d[1],y=(0,j.CR)(A?l4(a,s,A):new Array(4).fill(0),4),E=y[0],C=y[1],I=y[2],R=y[3],K=function(Ot){return r.selectAll(Je.line.class).data(Ot,function(Gt,qt){return qt}).join(function(Gt){var qt=Gt.append("line").styles(e).transition(function(ae){return Os(this,v2(ae.line),!1)});return qt.attr("className",function(ae){if(!l)return"".concat(Je.line.name," ").concat(ae.className);var ue=Nh(Je.line.name,Wn.line,l);if(ae.className===Je.lineFirst.name){var pe=Nh(Je.lineFirst.name,Wn.lineFirst,l);return"".concat(ue," ").concat(pe)}if(ae.className===Je.lineSecond.name){var pe=Nh(Je.lineSecond.name,Wn.lineSecond,l);return"".concat(ue," ").concat(pe)}return ue}),qt},function(Gt){return Gt.styles(e).transition(function(qt){var ae=qt.line;return Os(this,v2(ae),n.update)})},function(Gt){return Gt.remove()}).transitions()};if(!i||!o)return K([{line:[[h+E,f+C],[g+I,v+R]],className:Je.line.name}]);var W=(0,j.CR)(o,2),V=W[0],J=W[1],et=g-h,at=v-f,ct=(0,j.CR)([h+et*V,f+at*V],2),pt=ct[0],wt=ct[1],Ct=(0,j.CR)([h+et*J,f+at*J],2),Ht=Ct[0],Rt=Ct[1],St=K([{line:[[h+E,f+C],[pt,wt]],className:Je.lineFirst.name},{line:[[Ht,Rt],[g+I,v+R]],className:Je.lineSecond.name}]);return A4(r,t),St}function u4(r,t,e,n){var i=e.showArrow,a=e.showTrunc,s=e.lineArrow,o=e.lineArrowOffset,A=e.lineArrowSize,l;if(t==="arc"?l=r.select(Je.line.class):a?l=r.select(Je.lineSecond.class):l=r.select(Je.line.class),!i||!s||e.type==="arc"&&d2(e.startAngle,e.endAngle)){var c=l.node();c&&(c.style.markerEnd=void 0);return}var u=Po(s);u.attr(n),jy(u,A,!0),l.style("markerEnd",u).style("markerEndOffset",-o)}function h4(r,t,e){var n=t.type,i,a=en(t,"line");return n==="linear"?i=c4(r,t,a1(a,"arrow"),e):i=o4(r,t,a1(a,"arrow"),e),u4(r,n,t,a),i}function f4(r,t){return o1(r,t.gridDirection,t)}function p2(r){var t=r.type,e=r.gridCenter;return t==="linear"?e:e||r.center}function d4(r,t){var e=t.gridLength;return r.map(function(n,i){var a=n.value,s=(0,j.CR)(vv(a,t),2),o=s[0],A=s[1],l=(0,j.CR)(Do(f4(a,t),e),2),c=l[0],u=l[1];return{id:i,points:[[o,A],[o+c,A+u]]}})}function g4(r,t){var e=t.gridControlAngles,n=p2(t);if(!n)throw new Error("grid center is not provide");if(r.length<2)throw new Error("Invalid grid data");if(!e||e.length===0)throw new Error("Invalid gridControlAngles");var i=(0,j.CR)(n,2),a=i[0],s=i[1];return r.map(function(o,A){var l=o.value,c=(0,j.CR)(vv(l,t),2),u=c[0],h=c[1],f=(0,j.CR)([u-a,h-s],2),d=f[0],g=f[1],v=[];return e.forEach(function(y){var E=zc(y),C=(0,j.CR)([Math.cos(E),Math.sin(E)],2),I=C[0],R=C[1],K=d*I-g*R+a,W=d*R+g*I+s;v.push([K,W])}),{points:v,id:A}})}function v4(r,t,e,n){var i=e.classNamePrefix,a=en(e,"grid"),s=a.type,o=a.areaFill,A=p2(e),l=s1(t,e.gridFilter),c=s==="segment"?d4(l,e):g4(l,e),u=(0,j.pi)((0,j.pi)({},a),{center:A,areaFill:jt(o)?l.map(function(h,f){return ga(o,[h,f,l])}):o,animate:n,data:c});return r.selectAll(Je.grid.class).data([1]).join(function(h){var f=h.append(function(){return new $R({style:u})}).attr("className",Je.grid.name);return Ua(f,Je.grid,Wn.grid,i),f},function(h){return h.transition(function(){return this.update(u)})},function(h){return h.remove()}).transitions()}function Fi(r,t,e,n,i){return n===void 0&&(n=!0),i===void 0&&(i=!1),n&&r===t||i&&r===e?!0:r>t&&r<e}var p4=function(r){var t=new DOMParser,e=t.parseFromString(r,"text/html"),n=e.body.firstElementChild;if(console.log(n==null?void 0:n.getClientRects(),11),!n)return 0;var i=n.getAttribute("style")||"",a=Object.fromEntries(i.split(";").map(function(v){return v.trim()}).filter(function(v){return v.includes(":")}).map(function(v){var y=(0,j.CR)(v.split(":").map(function(I){return I.trim()}),2),E=y[0],C=y[1];return[E.toLowerCase(),C]})),s=function(v){if(!v)return 0;var y=v.match(/([\d.]+)px/);return y?parseFloat(y[1]):0};if(a.height)return s(a.height);var o=s(a["font-size"])||16,A=a["line-height"],l;!A||A==="normal"?l=1.2*o:A.endsWith("px")?l=s(A):/^[\d.]+$/.test(A)?l=parseFloat(A)*o:l=o;var c=s(a["padding-top"]),u=s(a["padding-bottom"]);if(a.padding){var h=a.padding.split(/\s+/).map(s);h.length===1||h.length===2?(c=h[0],u=h[0]):(h.length===3||h.length===4)&&(c=h[0],u=h[2])}var f=s(a["border-top-width"]),d=s(a["border-bottom-width"]);if(a.border){var g=a.border.match(/([\d.]+)px/);g&&(f=parseFloat(g[1]),d=parseFloat(g[1]))}if(a["border-width"]){var h=a["border-width"].split(/\s+/).map(s);h.length===1||h.length===2?(f=h[0],d=h[0]):(h.length===3||h.length===4)&&(f=h[0],d=h[2])}return l+c+u+f+d};function m4(r,t,e,n){e===void 0&&(e=2),n===void 0&&(n="top"),t2(r,{wordWrap:!0,wordWrapWidth:t,maxLines:e,textBaseline:n})}function y4(r,t,e){var n=r.getBBox(),i=n.width,a=n.height,s=(0,j.CR)([t,e].map(function(l,c){var u;return l.includes("%")?parseFloat(((u=l.match(/[+-]?([0-9]*[.])?[0-9]+/))===null||u===void 0?void 0:u[0])||"0")/100*(c===0?i:a):l}),2),o=s[0],A=s[1];return[o,A]}function m2(r,t){if(t)try{var e=/translate\(([+-]*[\d]+[%]*),[ ]*([+-]*[\d]+[%]*)\)/g,n=t.replace(e,function(i,a,s){return"translate(".concat(y4(r,a,s),")")});r.attr("transform",n)}catch(i){}}var l1=function(){function r(t,e,n,i){this.set(t,e,n,i)}return Object.defineProperty(r.prototype,"left",{get:function(){return this.x1},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"top",{get:function(){return this.y1},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"right",{get:function(){return this.x2},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"bottom",{get:function(){return this.y2},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"width",{get:function(){return this.defined("x2")&&this.defined("x1")?this.x2-this.x1:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"height",{get:function(){return this.defined("y2")&&this.defined("y1")?this.y2-this.y1:void 0},enumerable:!1,configurable:!0}),r.prototype.rotatedPoints=function(t,e,n){var i=this,a=i.x1,s=i.y1,o=i.x2,A=i.y2,l=Math.cos(t),c=Math.sin(t),u=e-e*l+n*c,h=n-e*c-n*l,f=[[l*a-c*A+u,c*a+l*A+h],[l*o-c*A+u,c*o+l*A+h],[l*a-c*s+u,c*a+l*s+h],[l*o-c*s+u,c*o+l*s+h]];return f},r.prototype.set=function(t,e,n,i){return n<t?(this.x2=t,this.x1=n):(this.x1=t,this.x2=n),i<e?(this.y2=e,this.y1=i):(this.y1=e,this.y2=i),this},r.prototype.defined=function(t){return this[t]!==Number.MAX_VALUE&&this[t]!==-Number.MAX_VALUE},r}();function pv(r,t){var e=r.getEulerAngles()||0;r.setEulerAngles(0);var n=r.getBounds(),i=(0,j.CR)(n.min,2),a=i[0],s=i[1],o=(0,j.CR)(n.max,2),A=o[0],l=o[1],c=r.getBBox(),u=c.width,h=c.height,f=h,d=0,g=0,v=a,y=s,E=$C(r);if(E){f-=1.5;var C=E.style.textAlign,I=E.style.textBaseline;C==="center"?v=(a+A)/2:(C==="right"||C==="end")&&(v=A),I==="middle"?y=(s+l)/2:I==="bottom"&&(y=l)}var R=(0,j.CR)(Ti(t),4),K=R[0],W=K===void 0?0:K,V=R[1],J=V===void 0?0:V,et=R[2],at=et===void 0?W:et,ct=R[3],pt=ct===void 0?J:ct,wt=new l1((d+=a)-pt,(g+=s)-W,d+u+J,g+f+at);return r.setEulerAngles(e),wt.rotatedPoints(zc(e),v,y)}function kh(r,t){return t[0]<=Math.max(r[0][0],r[1][0])&&t[0]<=Math.min(r[0][0],r[1][0])&&t[1]<=Math.max(r[0][1],r[1][1])&&t[1]<=Math.min(r[0][1],r[1][1])}function Qh(r,t,e){var n=(t[1]-r[1])*(e[0]-t[0])-(t[0]-r[0])*(e[1]-t[1]);return n===0?0:n<0?2:1}function w4(r,t){var e=Qh(r[0],r[1],t[0]),n=Qh(r[0],r[1],t[1]),i=Qh(t[0],t[1],r[0]),a=Qh(t[0],t[1],r[1]);return!!(e!==n&&i!==a||e===0&&kh(r,t[0])||n===0&&kh(r,t[1])||i===0&&kh(t,r[0])||a===0&&kh(t,r[1]))}function E4(r,t){var e=r.length;if(e<3)return!1;var n=[t,[9999,t[1]]],i=0,a=0;do{var s=[r[a],r[(a+1)%e]];if(w4(s,n)){if(Qh(s[0],t,s[1])===0)return kh(s,t);i++}a=(a+1)%e}while(a!==0);return!!(i&1)}function B4(r,t){return t.every(function(e){return E4(r,e)})}function b4(r,t,e){var n=r.x1,i=r.x2,a=r.y1,s=r.y2,o=[[n,a],[i,a],[i,s],[n,s]],A=pv(t,e);return B4(o,A)}function y2(r,t){var e=(0,j.CR)(r,4),n=e[0],i=e[1],a=e[2],s=e[3],o=(0,j.CR)(t,4),A=o[0],l=o[1],c=o[2],u=o[3],h=a-n,f=s-i,d=c-A,g=u-l,v=h*g-d*f;if(v===0)return!1;var y=v>0,E=n-A,C=i-l,I=h*C-f*E;if(I<0===y)return!1;var R=d*C-g*E;return!(R<0===y||I>v===y||R>v===y)}function w2(r,t){var e=[[r[0],r[1],r[2],r[3]],[r[2],r[3],r[4],r[5]],[r[4],r[5],r[6],r[7]],[r[6],r[7],r[0],r[1]]];return e.some(function(n){return y2(t,n)})}var mG={lineToLine:y2,intersectBoxLine:w2,getBounds:pv};function x4(r,t,e){var n,i,a=pv(r,e).flat(1),s=pv(t,e).flat(1),o=[[a[0],a[1],a[2],a[3]],[a[0],a[1],a[4],a[5]],[a[4],a[5],a[6],a[7]],[a[2],a[3],a[6],a[7]]];try{for(var A=(0,j.XA)(o),l=A.next();!l.done;l=A.next()){var c=l.value;if(w2(s,c))return!0}}catch(u){n={error:u}}finally{try{l&&!l.done&&(i=A.return)&&i.call(A)}finally{if(n)throw n.error}}return!1}function C4(r,t){var e=r.type,n=r.labelDirection,i=r.crossSize;if(!i)return!1;if(e==="arc"){var a=r.center,s=r.radius,o=(0,j.CR)(a,2),A=o[0],l=o[1],c=n==="negative"?0:i,u=-s-c,h=s+c,f=(0,j.CR)(Ti(t),4),d=f[0],g=f[1],v=f[2],y=f[3];return new l1(A+u-y,l+u-d,A+h+g,l+h+v)}var E=(0,j.CR)(r.startPos,2),C=E[0],I=E[1],R=(0,j.CR)(r.endPos,2),K=R[0],W=R[1],V=(0,j.CR)(f2(r)?[-t,0,t,0]:[0,t,0,-t],4),J=V[0],et=V[1],at=V[2],ct=V[3],pt=Wc(0,r),wt=Do(pt,i),Ct=new l1(C,I,K,W);return Ct.x1+=ct,Ct.y1+=J,Ct.x2+=et+wt[0],Ct.y2+=at+wt[1],Ct}function mv(r,t,e){var n,i,a=t.crossPadding,s=new Set,o=null,A=C4(t,a),l=function(d){return A?b4(A,d):!0},c=function(d,g){return!d||!d.firstChild?!0:!x4(d.firstChild,g.firstChild,Ti(e))};try{for(var u=(0,j.XA)(r),h=u.next();!h.done;h=u.next()){var f=h.value;l(f)?!o||c(o,f)?o=f:(s.add(o),s.add(f)):s.add(f)}}catch(d){n={error:d}}finally{try{h&&!h.done&&(i=u.return)&&i.call(u)}finally{if(n)throw n.error}}return Array.from(s)}function c1(r,t){return t===void 0&&(t={}),Pe(r)?0:typeof r=="number"?r:Math.floor(BR(r,t))}function S4(r,t,e,n){if(!(r.length<=0)){var i=t.suffix,a=i===void 0?"...":i,s=t.minLength,o=t.maxLength,A=o===void 0?1/0:o,l=t.step,c=l===void 0?" ":l,u=t.margin,h=u===void 0?[0,0,0,0]:u,f=qC(n.getTextShape(r[0])),d=c1(c,f),g=s?c1(s,f):d,v=c1(A,f);(Pe(v)||v===1/0)&&(v=Math.max.apply(null,r.map(function(wt){return wt.getBBox().width})));for(var y=r.slice(),E=(0,j.CR)(h,4),C=E[0],I=C===void 0?0:C,R=E[1],K=R===void 0?0:R,W=E[2],V=W===void 0?I:W,J=E[3],et=J===void 0?K:J,at=function(wt){if(y.forEach(function(Ct){n.ellipsis(n.getTextShape(Ct),wt,a)}),y=mv(r,e,h),y.length<1)return{value:void 0}},ct=v;ct>g+d;ct-=d){var pt=at(ct);if(typeof pt=="object")return pt.value}}}var M4=function(r){return r!==void 0&&r!=null&&!Number.isNaN(r)},T4={parity:function(r,t){var e=t.seq,n=e===void 0?2:e;return r.filter(function(i,a){return a%n?(Ts(i),!1):!0})}},F4=function(r){return r.filter(M4)};function O4(r,t,e,n){var i=r.length,a=t.keepHeader,s=t.keepTail;if(!(i<=1||i===2&&a&&s)){var o=T4.parity,A=function(C){return C.forEach(n.show),C},l=2,c=r.slice(),u=r.slice(),h=Math.min.apply(Math,(0,j.ev)([1],(0,j.CR)(r.map(function(C){return C.getBBox().width})),!1));if(e.type==="linear"&&(A1(e)||f2(e))){var f=JC(r[0]).left,d=JC(r[i-1]).right,g=Math.abs(d-f)||1;l=Math.max(Math.floor(i*h/g),l)}var v,y;for(a&&(v=c.splice(0,1)[0]),s&&(y=c.splice(-1,1)[0],c.reverse()),A(c);l<r.length&&mv(F4(y?(0,j.ev)((0,j.ev)([y],(0,j.CR)(u),!1),[v],!1):(0,j.ev)([v],(0,j.CR)(u),!1)),e,t==null?void 0:t.margin).length;){if(y&&!v&&l%2===0){var E=c.splice(0,1);E.forEach(n.hide)}else if(y&&v){var E=c.splice(0,1);E.forEach(n.hide)}u=o(A(c),{seq:l}),l++}}}function I4(r,t,e,n){var i,a,s=t.optionalAngles,o=s===void 0?[0,45,90]:s,A=t.margin,l=t.recoverWhenFailed,c=l===void 0?!0:l,u=r.map(function(y){return y.getLocalEulerAngles()}),h=function(){return mv(r,e,A).length<1},f=function(y){return r.forEach(function(E,C){var I=Array.isArray(y)?y[C]:y;n.rotate(E,+I)})};try{for(var d=(0,j.XA)(o),g=d.next();!g.done;g=d.next()){var v=g.value;if(f(v),h())return}}catch(y){i={error:y}}finally{try{g&&!g.done&&(a=d.return)&&a.call(d)}finally{if(i)throw i.error}}c&&f(u)}function L4(r){var t=r.type,e=r.labelDirection;return t==="linear"&&A1(r)?e==="negative"?"bottom":"top":"middle"}function N4(r,t,e,n,i){var a,s=t.maxLines,o=s===void 0?3:s,A=t.recoverWhenFailed,l=A===void 0?!0:A,c=t.margin,u=c===void 0?[0,0,0,0]:c,h=ga((a=t.wordWrapWidth)!==null&&a!==void 0?a:50,[i]),f=r.map(function(C){return C.attr("maxLines")||1}),d=Math.min.apply(Math,(0,j.ev)([],(0,j.CR)(f),!1)),g=function(){return mv(r,e,u).length<1},v=L4(e),y=function(C){return r.forEach(function(I,R){var K=Array.isArray(C)?C[R]:C;n.wrap(I,h,K,v)})};if(!(d>o)){if(e.type==="linear"&&A1(e)){if(y(o),g())return}else for(var E=d;E<=o;E++)if(y(E),g())return;l&&y(f)}}var k4=new Map([["hide",O4],["rotate",I4],["ellipsis",S4],["wrap",N4]]);function Q4(r,t,e){return t.labelOverlap.length<1?!1:e==="hide"?!MD(r[0]):e==="rotate"?!r.some(function(n){var i;return!!(!((i=n.attr("transform"))===null||i===void 0)&&i.includes("rotate"))}):e==="ellipsis"||e==="wrap"?r.filter(function(n){return n.querySelector("text")}).length>=1:!0}function U4(r,t,e,n){var i=t.labelOverlap,a=i===void 0?[]:i;a.length&&a.forEach(function(s){var o=s.type,A=k4.get(o);Q4(r,t,o)&&(A==null||A(r,s,t,n,e))})}function P4(){for(var r=[],t=0;t<arguments.length;t++)r[t]=arguments[t];var e=function(n){return n==="positive"?-1:1};return r.reduce(function(n,i){return n*e(i)},1)}function E2(r){for(var t=r;t<0;)t+=360;return Math.round(t%360)}function u1(r,t){var e=(0,j.CR)(r,2),n=e[0],i=e[1],a=(0,j.CR)(t,2),s=a[0],o=a[1],A=(0,j.CR)([n*s+i*o,n*o-i*s],2),l=A[0],c=A[1];return Math.atan2(c,l)}function D4(r){var t=(r+360)%180;return Fi(t,-90,90)||(t+=180),t}function R4(r,t,e){var n,i=e.labelAlign,a=(n=t.style.transform)===null||n===void 0?void 0:n.includes("rotate");if(a)return t.getLocalEulerAngles();var s=0,o=Wc(r.value,e),A=gv(r.value,e);return i==="horizontal"?0:(i==="perpendicular"?s=u1([1,0],o):s=u1([A[0]<0?-1:1,0],A),D4(A2(s)))}function B2(r,t,e){var n=e.type,i=e.labelAlign,a=Wc(r,e),s=E2(t),o=E2(A2(u1([1,0],a))),A="center",l="middle";return n==="linear"?[90,270].includes(o)&&s===0?(A="center",l=a[1]===1?"top":"bottom"):!(o%180)&&[90,270].includes(s)?A="center":o===0?(Fi(s,0,90,!1,!0)||Fi(s,0,90)||Fi(s,270,360))&&(A="start"):o===90?Fi(s,0,90,!1,!0)?A="start":(Fi(s,90,180)||Fi(s,270,360))&&(A="end"):o===270?Fi(s,0,90,!1,!0)?A="end":(Fi(s,90,180)||Fi(s,270,360))&&(A="start"):o===180&&(s===90?A="start":(Fi(s,0,90)||Fi(s,270,360))&&(A="end")):i==="parallel"?Fi(o,0,180,!0)?l="top":l="bottom":i==="horizontal"?Fi(o,90,270,!1)?A="end":(Fi(o,270,360,!1)||Fi(o,0,90))&&(A="start"):i==="perpendicular"&&(Fi(o,90,270)?A="end":A="start"),{textAlign:A,textBaseline:l}}function _4(r,t,e){t.setLocalEulerAngles(r);var n=t.__data__.value,i=B2(n,r,e),a=t.querySelector(Je.labelItem.class);a&&x2(a,i)}function b2(r,t,e){var n=e.showTick,i=e.tickLength,a=e.tickDirection,s=e.labelDirection,o=e.labelSpacing,A=t.indexOf(r),l=ga(o,[r,A,t]),c=(0,j.CR)([Wc(r.value,e),P4(s,a)],2),u=c[0],h=c[1],f=h===1?ga(n?i:0,[r,A,t]):0,d=(0,j.CR)(Ih(Do(u,l+f),vv(r.value,e)),2),g=d[0],v=d[1];return{x:g,y:v}}function H4(r,t,e,n){var i=n.labelFormatter,a=jt(i)?function(){return Po(ga(i,[r,t,e,Wc(r.value,n)]))}:function(){return Po(r.label||"")};return a}function G4(r,t,e,n){var i=n.labelRender,a=(Mi(n,"endPos.0",400)-Mi(n,"startPos.0",0))/e.length,s=jt(i)?ga(i,[r,t,e,Wc(r.value,n)]):r.label||"",o=p4(s)||30;return function(){return ER(s,{width:a,height:o})}}var K4={html:["fill"],text:[]};function x2(r,t){["text","html"].includes(r.nodeName)&&r.attr(a1(t,K4[r.nodeName]))}function z4(r,t){U4(this.node().childNodes,r,t,{hide:Ts,show:Oh,rotate:function(e,n){_4(+n,e,r)},ellipsis:function(e,n,i){e&&Jy(e,n||1/0,i)},wrap:function(e,n,i){e&&m4(e,n,i)},getTextShape:function(e){return e.querySelector(Je.labelItem.class)}})}function C2(r,t,e,n,i){var a=e.indexOf(t),s=i.labelRender,o=i.classNamePrefix,A=Le(r).append(s?G4(t,a,e,i):H4(t,a,e,i)).attr("className",Je.labelItem.name).node();Ua(Le(A),Je.labelItem,Wn.labelItem,o);var l=(0,j.CR)(Uo(u2(n,[t,a,e])),2),c=l[0],u=l[1],h=u.transform,f=(0,j._T)(u,["transform"]);m2(A,h);var d=R4(t,A,i);if(A.getLocalEulerAngles()||A.setLocalEulerAngles(d),x2(A,(0,j.pi)((0,j.pi)({},B2(t.value,d,i)),c)),A.nodeName==="html"){var g=A.getBBox(),v=A.style.x||0;A.attr("x",v-g.width/2)}return r.attr(f),A}function V4(r,t,e,n,i){var a=e.classNamePrefix,s=s1(t,e.labelFilter),o=en(e,"label"),A,l=r.selectAll(Je.label.class).data(s,function(c,u){return u}).join(function(c){var u=c.append("g").attr("className",Je.label.name).transition(function(h){C2(this,h,t,o,e);var f=b2(h,t,e),d=f.x,g=f.y;return this.style.transform="translate(".concat(d,", ").concat(g,")"),null});return Ua(u,Je.label,Wn.label,a),u},function(c){return c.transition(function(u){var h=this.querySelector(Je.labelItem.class),f=C2(this,u,t,o,e),d=WD(h,f,n.update),g=b2(u,t,e),v=g.x,y=g.y,E=Os(this,{transform:"translate(".concat(v,", ").concat(y,")")},n.update);return(0,j.ev)((0,j.ev)([],(0,j.CR)(d),!1),[E],!1)})},function(c){return A=c,c.transition(function(){var u=this,h=dv(this.childNodes[0],n.exit);return Kc(h,function(){return Le(u).remove()}),h}),A}).transitions();return zD(l,function(){z4.call(r,e,i)}),l}function S2(r,t){return o1(r,t.tickDirection,t)}function W4(r,t){var e=(0,j.CR)(r,2),n=e[0],i=e[1];return[[0,0],[n*t,i*t]]}function Z4(r,t,e,n,i){var a=i.tickLength,s=(0,j.CR)(W4(n,ga(a,[r,t,e])),2),o=(0,j.CR)(s[0],2),A=o[0],l=o[1],c=(0,j.CR)(s[1],2),u=c[0],h=c[1];return{x1:A,x2:u,y1:l,y2:h}}function j4(r,t,e,n,i){var a=i.tickFormatter,s=i.classNamePrefix,o=S2(t.value,i),A="line";jt(a)&&(A=function(){return ga(a,[t,e,n,o])});var l=r.append(A).attr("className",Je.tickItem.name);return Ua(l,Je.tickItem,Wn.tickItem,s),l}function Y4(r,t,e,n,i,a,s){var o=S2(r.value,a),A=Z4(r,t,e,o,a),l=A.x1,c=A.x2,u=A.y1,h=A.y2,f=(0,j.CR)(Uo(u2(s,[r,t,e,o])),2),d=f[0],g=f[1];n.node().nodeName==="line"&&n.styles((0,j.pi)({x1:l,x2:c,y1:u,y2:h},d)),i.attr(g),n.styles(d)}function M2(r,t,e,n,i,a){var s=j4(Le(this),r,t,e,n);Y4(r,t,e,s,this,n,i);var o=(0,j.CR)(vv(r.value,n),2),A=o[0],l=o[1];return Os(this,{transform:"translate(".concat(A,", ").concat(l,")")},a)}function X4(r,t,e,n){var i=e.classNamePrefix,a=s1(t,e.tickFilter),s=en(e,"tick");return r.selectAll(Je.tick.class).data(a,function(o){return o.id||o.label}).join(function(o){var A=o.append("g").attr("className",Je.tick.name).transition(function(l,c){return M2.call(this,l,c,a,e,s,!1)});return Ua(A,Je.tick,Wn.tick,i),A},function(o){return o.transition(function(A,l){return this.removeChildren(),M2.call(this,A,l,a,e,s,n.update)})},function(o){return o.transition(function(){var A=this,l=dv(this.childNodes[0],n.exit);return Kc(l,function(){return A.remove()}),l})}).transitions()}function J4(r,t,e){var n=e.titlePosition,i=n===void 0?"lb":n,a=e.titleSpacing,s=ov(i),o=r.node().getLocalBounds(),A=(0,j.CR)(o.min,2),l=A[0],c=A[1],u=(0,j.CR)(o.halfExtents,2),h=u[0],f=u[1],d=(0,j.CR)(t.node().getLocalBounds().halfExtents,2),g=d[0],v=d[1],y=(0,j.CR)([l+h,c+f],2),E=y[0],C=y[1],I=(0,j.CR)(Ti(a),4),R=I[0],K=I[1],W=I[2],V=I[3];if(["start","end"].includes(i)&&e.type==="linear"){var J=e.startPos,et=e.endPos,at=(0,j.CR)(i==="start"?[J,et]:[et,J],2),ct=at[0],pt=at[1],wt=o2([-pt[0]+ct[0],-pt[1]+ct[1]]),Ct=(0,j.CR)(Do(wt,R),2),Ht=Ct[0],Rt=Ct[1];return{x:ct[0]+Ht,y:ct[1]+Rt}}return s.includes("t")&&(C-=f+v+R),s.includes("r")&&(E+=h+g+K),s.includes("l")&&(E-=h+g+V),s.includes("b")&&(C+=f+v+W),{x:E,y:C}}function q4(r,t,e){var n=r.getGeometryBounds().halfExtents,i=n[1]*2;if(t==="vertical"){if(e==="left")return"rotate(-90) translate(0, ".concat(i/2,")");if(e==="right")return"rotate(-90) translate(0, -".concat(i/2,")")}return""}function T2(r,t,e,n,i){var a=en(n,"title"),s=(0,j.CR)(Uo(a),2),o=s[0],A=s[1],l=A.transform,c=A.transformOrigin,u=(0,j._T)(A,["transform","transformOrigin"]);t.styles(u);var h=l||q4(r.node(),o.direction,o.position);r.styles((0,j.pi)((0,j.pi)({},o),{transformOrigin:c})),m2(r.node(),h);var f=J4(Le(e._offscreen||e.querySelector(Je.mainGroup.class)),t,n),d=f.x,g=f.y,v=Os(t.node(),{transform:"translate(".concat(d,", ").concat(g,")")},i);return v}function $4(r,t,e,n){var i=e.titleText,a=e.classNamePrefix;return r.selectAll(Je.title.class).data([{title:i}].filter(function(s){return!!s.title}),function(s,o){return s.title}).join(function(s){var o=s.append(function(){return Po(i)}).attr("className",Je.title.name).transition(function(){return T2(Le(this),r,t,e,n.enter)});return Ua(o,Je.title,Wn.title,a),o},function(s){return s.transition(function(){return T2(Le(this),r,t,e,n.update)})},function(s){return s.remove()}).transitions()}function F2(r,t,e,n){var i=r.showLine,a=r.showTick,s=r.showLabel,o=r.classNamePrefix,A=t.maybeAppendByClassName(Je.lineGroup,"g");Ua(A,Je.lineGroup,Wn.lineGroup,o);var l=da(i,A,function(d){return h4(d,r,n)})||[],c=t.maybeAppendByClassName(Je.tickGroup,"g");Ua(c,Je.tickGroup,Wn.tickGroup,o);var u=da(a,c,function(d){return X4(d,e,r,n)})||[],h=t.maybeAppendByClassName(Je.labelGroup,"g");Ua(h,Je.labelGroup,Wn.labelGroup,o);var f=da(s,h,function(d){return V4(d,e,r,n,t.node())})||[];return(0,j.ev)((0,j.ev)((0,j.ev)([],(0,j.CR)(l),!1),(0,j.CR)(u),!1),(0,j.CR)(f),!1).filter(function(d){return!!d})}var t_=function(r){(0,j.ZT)(t,r);function t(e){return r.call(this,e,e1)||this}return t.prototype.render=function(e,n,i){var a=this,s=e.titleText,o=e.data,A=e.animate,l=e.showTitle,c=e.showGrid,u=e.dataThreshold,h=e.truncRange,f=e.classNamePrefix,d=n.className||"axis";f?n.attr("className","".concat(d," ").concat(f,"axis")):n.className||n.attr("className","axis");var g=zR(o,u).filter(function(W){var V=W.value;return!(h&&V>h[0]&&V<h[1])}),v=KC(i===void 0?A:i),y=Le(n).maybeAppendByClassName(Je.gridGroup,"g");Ua(y,Je.gridGroup,Wn.gridGroup,f);var E=da(c,y,function(W){return v4(W,g,e,v)})||[],C=Le(n).maybeAppendByClassName(Je.mainGroup,"g");Ua(C,Je.mainGroup,Wn.mainGroup,f),s&&(!this.initialized&&v.enter||this.initialized&&v.update)&&F2(e,Le(this.offscreenGroup),g,KC(!1));var I=F2(e,Le(C.node()),g,v),R=Le(n).maybeAppendByClassName(Je.titleGroup,"g");Ua(R,Je.titleGroup,Wn.titleGroup,f);var K=da(l,R,function(W){return $4(W,a,e,v)})||[];return(0,j.ev)((0,j.ev)((0,j.ev)([],(0,j.CR)(E),!1),(0,j.CR)(I),!1),(0,j.CR)(K),!1).flat().filter(function(W){return!!W})},t}(Sr);function yG(r){var t=r.canvas,e=r.touches,n=r.offsetX,i=r.offsetY;if(t){var a=t.x,s=t.y;return[a,s]}if(e){var o=e[0],A=o.clientX,l=o.clientY;return[A,l]}return n&&i?[n,i]:[0,0]}function O2(r){var t=r.nativeEvent,e=r.touches,n=r.clientX,i=r.clientY;if(t)return[t.clientX,t.clientY];if(e){var a=e[0],s=a.clientX,o=a.clientY;return[s,o]}return typeof n=="number"&&typeof i=="number"?[n,i]:[0,0]}function h1(r,t){return+r.toPrecision(t)}function wG(r){return r.toLocaleString()}function EG(r){return r.toExponential()}function BG(r,t){return t===void 0&&(t=0),Math.abs(r)<1e3?String(r):"".concat(h1(r/1e3,t).toLocaleString(),"K")}var bG=function(r,t,e){return r<0&&Number.isFinite(r)?t:e},xG=function(r,t,e){return r>0&&Number.isFinite(r)?t:e},CG=function(r,t){return r*t},SG=function(r,t){return r/2+(t||0)/2},f1=function(r){return r};class I2{constructor(t){this.options=Ci({},this.getDefaultOptions()),this.update(t)}getOptions(){return this.options}update(t={}){this.options=Ci({},this.options,t),this.rescale(t)}rescale(t){}}function d1(r,t){return t-r?e=>(e-r)/(t-r):e=>.5}function yv(r,...t){return t.reduce((e,n)=>i=>e(n(i)),r)}function e_(r,t,e,n,i){let a=e||0,s=n||r.length;const o=i||(A=>A);for(;a<s;){const A=Math.floor((a+s)/2);o(r[A])>t?s=A:a=A+1}return a}var n_=M(75196),r_=M.n(n_);function g1(r,t,e){let n=e;return n<0&&(n+=1),n>1&&(n-=1),n<1/6?r+(t-r)*6*n:n<1/2?t:n<2/3?r+(t-r)*(2/3-n)*6:r}function i_(r){const t=r[0]/360,e=r[1]/100,n=r[2]/100,i=r[3];if(e===0)return[n*255,n*255,n*255,i];const a=n<.5?n*(1+e):n+e-n*e,s=2*n-a,o=g1(s,a,t+1/3),A=g1(s,a,t),l=g1(s,a,t-1/3);return[o*255,A*255,l*255,i]}function L2(r){const t=r_().get(r);if(!t)return null;const{model:e,value:n}=t;return e==="rgb"?n:e==="hsl"?i_(n):null}const wv=(r,t)=>e=>r*(1-e)+t*e,a_=(r,t)=>{const e=L2(r),n=L2(t);return e===null||n===null?e?()=>r:()=>t:i=>{const a=new Array(4);for(let c=0;c<4;c+=1){const u=e[c],h=n[c];a[c]=u*(1-i)+h*i}const[s,o,A,l]=a;return`rgba(${Math.round(s)}, ${Math.round(o)}, ${Math.round(A)}, ${l})`}},s_=(r,t)=>typeof r=="number"&&typeof t=="number"?wv(r,t):typeof r=="string"&&typeof t=="string"?a_(r,t):()=>r,o_=(r,t)=>{const e=wv(r,t);return n=>Math.round(e(n))};function A_(r){return r===null}function N2(r){return!Ye(r)&&!A_(r)&&!Number.isNaN(r)}const v1=Math.sqrt(50),p1=Math.sqrt(10),m1=Math.sqrt(2);function Ev(r,t,e){const n=(t-r)/Math.max(0,e),i=Math.floor(Math.log(n)/Math.LN10),a=n/NA(10,i);return i>=0?(a>=v1?10:a>=p1?5:a>=m1?2:1)*NA(10,i):-NA(10,-i)/(a>=v1?10:a>=p1?5:a>=m1?2:1)}function MG(r,t,e){const n=Math.abs(t-r)/Math.max(0,e);let i=NA(10,Math.floor(Math.log(n)/Math.LN10));const a=n/i;return a>=v1?i*=10:a>=p1?i*=5:a>=m1&&(i*=2),t<r?-i:i}const l_=(r,t,e=5)=>{const n=[r,t];let i=0,a=n.length-1,s=n[i],o=n[a],A;return o<s&&([s,o]=[o,s],[i,a]=[a,i]),A=Ev(s,o,e),A>0?(s=Math.floor(s/A)*A,o=Math.ceil(o/A)*A,A=Ev(s,o,e)):A<0&&(s=Math.ceil(s*A)/A,o=Math.floor(o*A)/A,A=Ev(s,o,e)),A>0?(n[i]=Math.floor(s/A)*A,n[a]=Math.ceil(o/A)*A):A<0&&(n[i]=Math.ceil(s*A)/A,n[a]=Math.floor(o*A)/A),n};function c_(r,t){const e=t<r?t:r,n=r>t?r:t;return i=>Math.min(Math.max(e,i),n)}const u_=(r,t,e)=>{const[n,i]=r,[a,s]=t;let o,A;return n<i?(o=d1(n,i),A=e(a,s)):(o=d1(i,n),A=e(s,a)),yv(A,o)},h_=(r,t,e)=>{const n=Math.min(r.length,t.length)-1,i=new Array(n),a=new Array(n),s=r[0]>r[n],o=s?[...r].reverse():r,A=s?[...t].reverse():t;for(let l=0;l<n;l+=1)i[l]=d1(o[l],o[l+1]),a[l]=e(A[l],A[l+1]);return l=>{const c=e_(r,l,1,n)-1,u=i[c],h=a[c];return yv(h,u)(l)}},k2=(r,t,e,n)=>(Math.min(r.length,t.length)>2?h_:u_)(r,t,n?o_:e);class f_ extends I2{getDefaultOptions(){return{domain:[0,1],range:[0,1],nice:!1,clamp:!1,round:!1,interpolate:wv,tickCount:5}}map(t){return N2(t)?this.output(t):this.options.unknown}invert(t){return N2(t)?this.input(t):this.options.unknown}nice(){if(!this.options.nice)return;const[t,e,n,...i]=this.getTickMethodOptions();this.options.domain=this.chooseNice()(t,e,n,...i)}getTicks(){const{tickMethod:t}=this.options,[e,n,i,...a]=this.getTickMethodOptions();return t(e,n,i,...a)}getTickMethodOptions(){const{domain:t,tickCount:e}=this.options,n=t[0],i=t[t.length-1];return[n,i,e]}chooseNice(){return l_}rescale(){this.nice();const[t,e]=this.chooseTransforms();this.composeOutput(t,this.chooseClamp(t)),this.composeInput(t,e,this.chooseClamp(e))}chooseClamp(t){const{clamp:e,range:n}=this.options,i=this.options.domain.map(t),a=Math.min(i.length,n.length);return e?c_(i[0],i[a-1]):f1}composeOutput(t,e){const{domain:n,range:i,round:a,interpolate:s}=this.options,o=k2(n.map(t),i,s,a);this.output=yv(o,e,t)}composeInput(t,e,n){const{domain:i,range:a}=this.options,s=k2(a,i.map(t),wv);this.input=yv(e,n,s)}}const d_=(r,t,e)=>{let n,i,a=r,s=t;if(a===s&&e>0)return[a];let o=Ev(a,s,e);if(o===0||!Number.isFinite(o))return[];if(o>0){a=Math.ceil(a/o),s=Math.floor(s/o),i=new Array(n=Math.ceil(s-a+1));for(let A=0;A<n;A+=1)i[A]=(a+A)*o}else{o=-o,a=Math.ceil(a*o),s=Math.floor(s*o),i=new Array(n=Math.ceil(s-a+1));for(let A=0;A<n;A+=1)i[A]=(a+A)/o}return i};class Uh extends f_{getDefaultOptions(){return{domain:[0,1],range:[0,1],unknown:void 0,nice:!1,clamp:!1,round:!1,interpolate:s_,tickMethod:d_,tickCount:5}}chooseTransforms(){return[f1,f1]}clone(){return new Uh(this.options)}}function Q2({map:r,initKey:t},e){const n=t(e);return r.has(n)?r.get(n):e}function g_({map:r,initKey:t},e){const n=t(e);return r.has(n)?r.get(n):(r.set(n,e),e)}function v_({map:r,initKey:t},e){const n=t(e);return r.has(n)&&(e=r.get(n),r.delete(n)),e}function p_(r){return typeof r=="object"?r.valueOf():r}class U2 extends Map{constructor(t){if(super(),this.map=new Map,this.initKey=p_,t!==null)for(const[e,n]of t)this.set(e,n)}get(t){return super.get(Q2({map:this.map,initKey:this.initKey},t))}has(t){return super.has(Q2({map:this.map,initKey:this.initKey},t))}set(t,e){return super.set(g_({map:this.map,initKey:this.initKey},t),e)}delete(t){return super.delete(v_({map:this.map,initKey:this.initKey},t))}}const y1=Symbol("defaultUnknown");function P2(r,t,e){for(let n=0;n<t.length;n+=1)r.has(t[n])||r.set(e(t[n]),n)}function D2(r){const{value:t,from:e,to:n,mapper:i,notFoundReturn:a}=r;let s=i.get(t);if(s===void 0){if(a!==y1)return a;s=e.push(t)-1,i.set(t,s)}return n[s%n.length]}function R2(r){return r instanceof Date?t=>`${t}`:typeof r=="object"?t=>JSON.stringify(t):t=>t}class w1 extends I2{getDefaultOptions(){return{domain:[],range:[],unknown:y1}}constructor(t){super(t)}map(t){return this.domainIndexMap.size===0&&P2(this.domainIndexMap,this.getDomain(),this.domainKey),D2({value:this.domainKey(t),mapper:this.domainIndexMap,from:this.getDomain(),to:this.getRange(),notFoundReturn:this.options.unknown})}invert(t){return this.rangeIndexMap.size===0&&P2(this.rangeIndexMap,this.getRange(),this.rangeKey),D2({value:this.rangeKey(t),mapper:this.rangeIndexMap,from:this.getRange(),to:this.getDomain(),notFoundReturn:this.options.unknown})}rescale(t){const[e]=this.options.domain,[n]=this.options.range;if(this.domainKey=R2(e),this.rangeKey=R2(n),!this.rangeIndexMap){this.rangeIndexMap=new Map,this.domainIndexMap=new Map;return}(!t||t.range)&&this.rangeIndexMap.clear(),(!t||t.domain||t.compare)&&(this.domainIndexMap.clear(),this.sortedDomain=void 0)}clone(){return new w1(this.options)}getRange(){return this.options.range}getDomain(){if(this.sortedDomain)return this.sortedDomain;const{domain:t,compare:e}=this.options;return this.sortedDomain=e?[...t].sort(e):t,this.sortedDomain}}function m_(r){const t=Math.min(...r);return r.map(e=>e/t)}function y_(r,t){const e=r.length,n=t-e;return n>0?[...r,...new Array(n).fill(1)]:n<0?r.slice(0,t):r}function w_(r){return Math.round(r*1e12)/1e12}function E_(r){const{domain:t,range:e,paddingOuter:n,paddingInner:i,flex:a,round:s,align:o}=r,A=t.length,l=y_(a,A),[c,u]=e,h=u-c,f=2/A*n+1-1/A*i,d=h/f,g=d*i/A,v=d-A*g,y=m_(l),E=y.reduce((ct,pt)=>ct+pt),C=v/E,I=new U2(t.map((ct,pt)=>{const wt=y[pt]*C;return[ct,s?Math.floor(wt):wt]})),R=new U2(t.map((ct,pt)=>{const Ct=y[pt]*C+g;return[ct,s?Math.floor(Ct):Ct]})),K=Array.from(R.values()).reduce((ct,pt)=>ct+pt),V=(h-(K-K/A*i))*o,J=c+V;let et=s?Math.round(J):J;const at=new Array(A);for(let ct=0;ct<A;ct+=1){at[ct]=w_(et);const pt=t[ct];et+=R.get(pt)}return{valueBandWidth:I,valueStep:R,adjustedRange:at}}function B_(r){var t;const{domain:e}=r,n=e.length;if(n===0)return{valueBandWidth:void 0,valueStep:void 0,adjustedRange:[]};if(!!(!((t=r.flex)===null||t===void 0)&&t.length))return E_(r);const{range:a,paddingOuter:s,paddingInner:o,round:A,align:l}=r;let c,u,h=a[0];const d=a[1]-h,g=s*2,v=n-o;c=d/Math.max(1,g+v),A&&(c=Math.floor(c)),h+=(d-c*(n-o))*l,u=c*(1-o),A&&(h=Math.round(h),u=Math.round(u));const y=new Array(n).fill(0).map((E,C)=>h+C*c);return{valueStep:c,valueBandWidth:u,adjustedRange:y}}class E1 extends w1{getDefaultOptions(){return{domain:[],range:[0,1],align:.5,round:!1,paddingInner:0,paddingOuter:0,padding:0,unknown:y1,flex:[]}}constructor(t){super(t)}clone(){return new E1(this.options)}getStep(t){return this.valueStep===void 0?1:typeof this.valueStep=="number"?this.valueStep:t===void 0?Array.from(this.valueStep.values())[0]:this.valueStep.get(t)}getBandWidth(t){return this.valueBandWidth===void 0?1:typeof this.valueBandWidth=="number"?this.valueBandWidth:t===void 0?Array.from(this.valueBandWidth.values())[0]:this.valueBandWidth.get(t)}getRange(){return this.adjustedRange}getPaddingInner(){const{padding:t,paddingInner:e}=this.options;return t>0?t:e}getPaddingOuter(){const{padding:t,paddingOuter:e}=this.options;return t>0?t:e}rescale(){super.rescale();const{align:t,domain:e,range:n,round:i,flex:a}=this.options,{adjustedRange:s,valueBandWidth:o,valueStep:A}=B_({align:t,range:n,round:i,flex:a,paddingInner:this.getPaddingInner(),paddingOuter:this.getPaddingOuter(),domain:e});this.valueStep=A,this.valueBandWidth=o,this.adjustedRange=s}}var b_=function(r){(0,j.ZT)(t,r);function t(e){var n=this,i=e.style,a=(0,j._T)(e,["style"]);return n=r.call(this,Ci({},{type:"column"},(0,j.pi)({style:i},a)))||this,n.columnsGroup=new oi({name:"columns"}),n.appendChild(n.columnsGroup),n.render(),n}return t.prototype.render=function(){var e=this.attributes,n=e.columns,i=e.x,a=e.y;this.columnsGroup.style.transform="translate(".concat(i,", ").concat(a,")"),Le(this.columnsGroup).selectAll(".column").data(n.flat()).join(function(s){return s.append("rect").attr("className","column").each(function(o){this.attr(o)})},function(s){return s.each(function(o){this.attr(o)})},function(s){return s.remove()})},t.prototype.update=function(e){this.attr(jr({},this.attributes,e)),this.render()},t.prototype.clear=function(){this.removeChildren()},t}(ir),x_=function(r){(0,j.ZT)(t,r);function t(e){var n=this,i=e.style,a=(0,j._T)(e,["style"]);return n=r.call(this,Ci({},{type:"lines"},(0,j.pi)({style:i},a)))||this,n.linesGroup=n.appendChild(new oi),n.areasGroup=n.appendChild(new oi),n.render(),n}return t.prototype.render=function(){var e=this.attributes,n=e.lines,i=e.areas,a=e.x,s=e.y;this.style.transform="translate(".concat(a,", ").concat(s,")"),n&&this.renderLines(n),i&&this.renderAreas(i)},t.prototype.clear=function(){this.linesGroup.removeChildren(),this.areasGroup.removeChildren()},t.prototype.update=function(e){this.attr(jr({},this.attributes,e)),this.render()},t.prototype.renderLines=function(e){Le(this.linesGroup).selectAll(".line").data(e).join(function(n){return n.append("path").attr("className","line").each(function(i){this.attr(i)})},function(n){return n.each(function(i){this.attr(i)})},function(n){return n.remove()})},t.prototype.renderAreas=function(e){Le(this.linesGroup).selectAll(".area").data(e).join(function(n){return n.append("path").attr("className","area").each(function(i){this.attr(i)})},function(n){return n.each(function(i){this.style(i)})},function(n){return n.remove()})},t}(ir);function C_(r,t,e,n){var i,a=[],s=!!n,o,A,l=[1/0,1/0],c=[-1/0,-1/0],u,h,f;if(s){i=(0,j.CR)(n,2),l=i[0],c=i[1];for(var d=0,g=r.length;d<g;d+=1){var v=r[d];l=Nl(l,v),c=kl(c,v)}}for(var d=0,y=r.length;d<y;d+=1){var v=r[d];if(d===0&&!e)f=v;else if(d===y-1&&!e)h=v,a.push(f),a.push(h);else{var E=[d?d-1:y-1,d-1][e?0:1];o=r[E],A=r[e?(d+1)%y:d+1];var C=[0,0];C=n1(A,o),C=Do(C,t);var I=Lh(v,o),R=Lh(v,A),K=I+R;K!==0&&(I/=K,R/=K);var W=Do(C,-I),V=Do(C,R);h=Ih(v,W),u=Ih(v,V),u=Nl(u,kl(A,v)),u=kl(u,Nl(A,v)),W=n1(u,v),W=Do(W,-I/R),h=Ih(v,W),h=Nl(h,kl(o,v)),h=kl(h,Nl(o,v)),V=n1(v,h),V=Do(V,R/I),u=Ih(v,V),s&&(h=kl(h,l),h=Nl(h,c),u=kl(u,l),u=Nl(u,c)),a.push(f),a.push(h),f=u}}return e&&a.push(a.shift()),a}function S_(r,t,e){var n;t===void 0&&(t=!1),e===void 0&&(e=[[0,0],[1,1]]);for(var i=!!t,a=[],s=0,o=r.length;s<o;s+=2)a.push([r[s],r[s+1]]);for(var A=C_(a,.4,i,e),l=a.length,c=[],u,h,f,s=0;s<l-1;s+=1)u=A[s*2],h=A[s*2+1],f=a[s+1],c.push(["C",u[0],u[1],h[0],h[1],f[0],f[1]]);return i&&(u=A[l],h=A[l+1],n=(0,j.CR)(a,1),f=n[0],c.push(["C",u[0],u[1],h[0],h[1],f[0],f[1]])),c}function M_(r,t){var e,n=t.x,i=t.y,a=(0,j.CR)(i.getOptions().range||[0,0],2),s=a[0],o=a[1];return o>s&&(e=(0,j.CR)([s,o],2),o=e[0],s=e[1]),r.map(function(A){var l=A.map(function(c,u){return[n.map(u),hr(i.map(c),o,s)]});return l})}function Ph(r,t){t===void 0&&(t=!1);var e=t?r.length-1:0,n=r.map(function(i,a){return(0,j.ev)([a===e?"M":"L"],(0,j.CR)(i),!1)});return t?n.reverse():n}function Bv(r,t){if(t===void 0&&(t=!1),r.length<=2)return Ph(r);for(var e=[],n=r.length,i=0;i<n;i+=1){var a=t?r[n-i-1]:r[i];Rr(a,e.slice(-2))||e.push.apply(e,(0,j.ev)([],(0,j.CR)(a),!1))}var s=S_(e,!1);return t?s.unshift((0,j.ev)(["M"],(0,j.CR)(r[n-1]),!1)):s.unshift((0,j.ev)(["M"],(0,j.CR)(r[0]),!1)),s}function B1(r,t,e){var n=Oc(r);return n.push(["L",t,e],["L",0,e],["Z"]),n}function T_(r,t,e,n){return r.map(function(i){return B1(t?Bv(i):Ph(i),e,n)})}function F_(r,t,e){for(var n=[],i=r.length-1;i>=0;i-=1){var a=r[i],s=Ph(a),o=void 0;if(i===0)o=B1(s,t,e);else{var A=r[i-1],l=Ph(A,!0);l[0][0]="L",o=(0,j.ev)((0,j.ev)((0,j.ev)([],(0,j.CR)(s),!1),(0,j.CR)(l),!1),[["Z"]],!1)}n.push(o)}return n}function O_(r,t,e){for(var n=[],i=r.length-1;i>=0;i-=1){var a=r[i],s=Bv(a),o=void 0;if(i===0)o=B1(s,t,e);else{var A=r[i-1],l=Bv(A,!0),c=a[0];l[0][0]="L",o=(0,j.ev)((0,j.ev)((0,j.ev)([],(0,j.CR)(s),!1),(0,j.CR)(l),!1),[(0,j.ev)(["M"],(0,j.CR)(c),!1),["Z"]],!1)}n.push(o)}return n}var I_=function(r,t){if(Ni(r)){for(var e,n=1/0,i=0;i<r.length;i++){var a=r[i],s=jt(t)?t(a):a[t];s<n&&(e=a,n=s)}return e}},L_=function(r,t){if(Ni(r)){for(var e,n=-1/0,i=0;i<r.length;i++){var a=r[i],s=jt(t)?t(a):a[t];s>n&&(e=a,n=s)}return e}};function _2(r){return r.length===0?[0,0]:[Xl(I_(r,function(t){return Xl(t)||0})),Jl(L_(r,function(t){return Jl(t)||0}))]}function H2(r){for(var t=Oc(r),e=t[0].length,n=(0,j.CR)([Array(e).fill(0),Array(e).fill(0)],2),i=n[0],a=n[1],s=0;s<t.length;s+=1)for(var o=t[s],A=0;A<e;A+=1)o[A]>=0?(o[A]+=i[A],i[A]=o[A]):(o[A]+=a[A],a[A]=o[A]);return t}var N_=function(r){(0,j.ZT)(t,r);function t(e){return r.call(this,e,{type:"line",x:0,y:0,width:200,height:20,isStack:!1,color:["#83daad","#edbf45","#d2cef9","#e290b3","#6f63f4"],smooth:!0,lineLineWidth:1,areaOpacity:0,isGroup:!1,columnLineWidth:1,columnStroke:"#fff",scale:1,spacing:0})||this}return Object.defineProperty(t.prototype,"rawData",{get:function(){var e=this.attributes.data;if(!e||(e==null?void 0:e.length)===0)return[[]];var n=Oc(e);return we(n[0])?[n]:n},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"data",{get:function(){return this.attributes.isStack?H2(this.rawData):this.rawData},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"scales",{get:function(){return this.createScales(this.data)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"baseline",{get:function(){var e=this.scales.y,n=(0,j.CR)(e.getOptions().domain||[0,0],2),i=n[0],a=n[1];return a<0?e.map(a):e.map(i<0?0:i)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"containerShape",{get:function(){var e=this.attributes,n=e.width,i=e.height;return{width:n,height:i}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"linesStyle",{get:function(){var e=this,n=this.attributes,i=n.type,a=n.isStack,s=n.smooth;if(i!=="line")throw new Error("linesStyle can only be used in line type");var o=en(this.attributes,"area"),A=en(this.attributes,"line"),l=this.containerShape.width,c=this.data;if(c[0].length===0)return{lines:[],areas:[]};var u=this.scales,h=u.x,f=u.y,d=M_(c,{type:"line",x:h,y:f}),g=[];if(o){var v=this.baseline;a?g=s?O_(d,l,v):F_(d,l,v):g=T_(d,s,l,v)}return{lines:d.map(function(y,E){return(0,j.pi)({stroke:e.getColor(E),d:s?Bv(y):Ph(y)},A)}),areas:g.map(function(y,E){return(0,j.pi)({d:y,fill:e.getColor(E)},o)})}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"columnsStyle",{get:function(){var e=this,n=en(this.attributes,"column"),i=this.attributes,a=i.isStack,s=i.type,o=i.scale;if(s!=="column")throw new Error("columnsStyle can only be used in column type");var A=this.containerShape.height,l=this.rawData;if(!l)return{columns:[]};a&&(l=H2(l));var c=this.createScales(l),u=c.x,h=c.y,f=(0,j.CR)(_2(l),2),d=f[0],g=f[1],v=new Uh({domain:[0,g-(d>0?0:d)],range:[0,A*o]}),y=u.getBandWidth(),E=this.rawData;return{columns:l.map(function(C,I){return C.map(function(R,K){var W=y/l.length,V=function(){return{x:u.map(K)+W*I,y:R>=0?h.map(R):h.map(0),width:W,height:v.map(Math.abs(R))}},J=function(){return{x:u.map(K),y:h.map(R),width:y,height:v.map(E[I][K])}};return(0,j.pi)((0,j.pi)({fill:e.getColor(I)},n),a?J():V())})})}},enumerable:!1,configurable:!0}),t.prototype.render=function(e,n){PD(n,".container","rect").attr("className","container").node();var i=e.type,a=e.x,s=e.y,o="spark".concat(i),A=(0,j.pi)({x:a,y:s},i==="line"?this.linesStyle:this.columnsStyle);Le(n).selectAll(".spark").data([i]).join(function(l){return l.append(function(c){return c==="line"?new x_({className:o,style:A}):new b_({className:o,style:A})}).attr("className","spark ".concat(o))},function(l){return l.update(A)},function(l){return l.remove()})},t.prototype.getColor=function(e){var n=this.attributes.color;return Ni(n)?n[e%n.length]:jt(n)?n.call(null,e):n},t.prototype.createScales=function(e){var n,i,a=this.attributes,s=a.type,o=a.scale,A=a.range,l=A===void 0?[]:A,c=a.spacing,u=this.containerShape,h=u.width,f=u.height,d=(0,j.CR)(_2(e),2),g=d[0],v=d[1],y=new Uh({domain:[(n=l[0])!==null&&n!==void 0?n:g,(i=l[1])!==null&&i!==void 0?i:v],range:[f,f*(1-o)]});return s==="line"?{type:s,x:new Uh({domain:[0,e[0].length-1],range:[0,h]}),y}:{type:s,x:new E1({domain:e[0].map(function(E,C){return C}),range:[0,h],paddingInner:c,paddingOuter:c/2,align:.5}),y}},t.tag="sparkline",t}(Sr),G2={fill:"#fff",lineWidth:1,radius:2,size:10,stroke:"#bfbfbf",strokeOpacity:1,zIndex:0},K2={fill:"#000",fillOpacity:.45,fontSize:12,textAlign:"center",textBaseline:"middle",zIndex:1},z2={x:0,y:0,orientation:"horizontal",showLabel:!0,type:"start"},so=Fs({foreground:"foreground",handle:"handle",selection:"selection",sparkline:"sparkline",sparklineGroup:"sparkline-group",track:"track",brushArea:"brush-area"},"slider"),ns=Fs({labelGroup:"label-group",label:"label",iconGroup:"icon-group",icon:"icon",iconRect:"icon-rect",iconLine:"icon-line"},"handle"),k_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.render=function(e,n){var i=e.x,a=e.y,s=e.size,o=s===void 0?10:s,A=e.radius,l=A===void 0?o/4:A,c=e.orientation,u=e.classNamePrefix,h=(0,j._T)(e,["x","y","size","radius","orientation","classNamePrefix"]),f=o,d=f*2.4,g=u?"".concat(ns.iconRect.name," ").concat(u,"handle-icon-rect"):ns.iconRect.name,v=function(K){return u?"".concat(ns.iconLine,"-").concat(K," ").concat(u,"handle-icon-line"):"".concat(ns.iconLine,"-").concat(K)},y=Le(n).maybeAppendByClassName(ns.iconRect,"rect").attr("className",g).styles((0,j.pi)((0,j.pi)({},h),{width:f,height:d,radius:l,x:i-f/2,y:a-d/2,transformOrigin:"center"})),E=i+1/3*f-f/2,C=i+2/3*f-f/2,I=a+1/4*d-d/2,R=a+3/4*d-d/2;y.maybeAppendByClassName("".concat(ns.iconLine,"-1"),"line").attr("className",v(1)).styles((0,j.pi)({x1:E,x2:E,y1:I,y2:R},h)),y.maybeAppendByClassName("".concat(ns.iconLine,"-2"),"line").attr("className",v(2)).styles((0,j.pi)({x1:C,x2:C,y1:I,y2:R},h)),c==="vertical"&&(y.node().style.transform="rotate(90)")},t}(Sr),Q_=function(r){(0,j.ZT)(t,r);function t(e){return r.call(this,e,z2)||this}return t.prototype.renderLabel=function(e){var n=this,i=this.attributes,a=i.x,s=i.y,o=i.showLabel,A=en(this.attributes,"label"),l=A.x,c=l===void 0?0:l,u=A.y,h=u===void 0?0:u,f=A.transform,d=A.transformOrigin,g=(0,j._T)(A,["x","y","transform","transformOrigin"]),v=(0,j.CR)(Uo(g,[]),2),y=v[0],E=v[1],C=Le(e).maybeAppendByClassName(ns.labelGroup,"g").styles(E),I=(0,j.pi)((0,j.pi)({},K2),y),R=I.text,K=(0,j._T)(I,["text"]);da(!!o,C,function(W){n.label=W.maybeAppendByClassName(ns.label,"text").styles((0,j.pi)((0,j.pi)({},K),{x:a+c,y:s+h,transform:f,transformOrigin:d,text:"".concat(R)})),n.label.on("mousedown",function(V){V.stopPropagation()}),n.label.on("touchstart",function(V){V.stopPropagation()})})},t.prototype.renderIcon=function(e){var n=this.attributes,i=n.x,a=n.y,s=n.orientation,o=n.type,A=n.classNamePrefix,l=(0,j.pi)((0,j.pi)({x:i,y:a,orientation:s,classNamePrefix:A},G2),en(this.attributes,"icon")),c=this.attributes.iconShape,u=c===void 0?function(){return new k_({style:l})}:c,h=Le(e).maybeAppendByClassName(ns.iconGroup,"g");h.selectAll(ns.icon.class).data([u]).join(function(f){return f.append(typeof u=="string"?u:function(){return u(o)}).attr("className",ns.icon.name)},function(f){return f.update(l)},function(f){return f.remove()})},t.prototype.render=function(e,n){this.renderIcon(n),this.renderLabel(n)},t}(Sr),U_=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,e,(0,j.pi)((0,j.pi)((0,j.pi)({x:0,y:0,animate:{duration:100,fill:"both"},brushable:!0,formatter:function(i){return i.toString()},handleSpacing:2,orientation:"horizontal",padding:0,autoFitLabel:!0,scrollable:!0,selectionFill:"#5B8FF9",selectionFillOpacity:.45,selectionZIndex:2,showHandle:!0,showLabel:!0,slidable:!0,trackFill:"#416180",trackLength:200,trackOpacity:.05,trackSize:20,trackZIndex:-1,values:[0,1],type:"range",selectionType:"select",handleIconOffset:0},Gc(z2,"handle")),Gc(G2,"handleIcon")),Gc(K2,"handleLabel")))||this;return n.range=[0,1],n.onDragStart=function(i){return function(a){a.stopPropagation(),n.target=i,n.prevPos=n.getOrientVal(O2(a));var s=n.availableSpace,o=s.x,A=s.y,l=n.getBBox(),c=l.x,u=l.y;n.selectionStartPos=n.getRatio(n.prevPos-n.getOrientVal([o,A])-n.getOrientVal([+c,+u])),n.selectionWidth=0,document.addEventListener("pointermove",n.onDragging),document.addEventListener("pointerup",n.onDragEnd)}},n.onDragging=function(i){var a=n.attributes,s=a.slidable,o=a.brushable,A=a.type;i.stopPropagation();var l=n.getOrientVal(O2(i)),c=l-n.prevPos;if(c){var u=n.getRatio(c);switch(n.target){case"start":s&&n.setValuesOffset(u);break;case"end":s&&n.setValuesOffset(0,u);break;case"selection":s&&n.setValuesOffset(u,u);break;case"track":if(!o)return;n.selectionWidth+=u,A==="range"?n.innerSetValues([n.selectionStartPos,n.selectionStartPos+n.selectionWidth].sort(),!0):n.innerSetValues([0,n.selectionStartPos+n.selectionWidth],!0);break;default:break}n.prevPos=l}},n.onDragEnd=function(){document.removeEventListener("pointermove",n.onDragging),document.removeEventListener("pointermove",n.onDragging),document.removeEventListener("pointerup",n.onDragEnd),n.target="",n.updateHandlesPosition(!1)},n.onValueChange=function(i){var a=n.attributes,s=a.onChange,o=a.type,A=o==="range"?i:i[1],l=o==="range"?n.getValues():n.getValues()[1],c=new Wr("valuechange",{detail:{oldValue:A,value:l}});n.dispatchEvent(c),s==null||s(l)},n.selectionStartPos=0,n.selectionWidth=0,n.prevPos=0,n.target="",n}return Object.defineProperty(t.prototype,"values",{get:function(){return this.attributes.values},set:function(e){this.attributes.values=this.clampValues(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"sparklineStyle",{get:function(){var e=this.attributes.orientation;if(e!=="horizontal")return null;var n=en(this.attributes,"sparkline");return(0,j.pi)((0,j.pi)({zIndex:0},this.availableSpace),n)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"shape",{get:function(){var e=this.attributes,n=e.trackLength,i=e.trackSize,a=(0,j.CR)(this.getOrientVal([[n,i],[i,n]]),2),s=a[0],o=a[1];return{width:s,height:o}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"availableSpace",{get:function(){var e=this.attributes,n=e.x,i=e.y,a=e.padding,s=(0,j.CR)(Ti(a),4),o=s[0],A=s[1],l=s[2],c=s[3],u=this.shape,h=u.width,f=u.height;return{x:c,y:o,width:h-(c+A),height:f-(o+l)}},enumerable:!1,configurable:!0}),t.prototype.getValues=function(){return this.values},t.prototype.setValues=function(e,n){e===void 0&&(e=[0,0]),n===void 0&&(n=!1),this.attributes.values=e;var i=n===!1?!1:this.attributes.animate;this.updateSelectionArea(i),this.updateHandlesPosition(i)},t.prototype.updateSelectionArea=function(e){var n=this.calcSelectionArea();this.foregroundGroup.selectAll(so.selection.class).each(function(i,a){Os(this,n[a],e)})},t.prototype.updateHandlesPosition=function(e){this.attributes.showHandle&&(this.startHandle&&Os(this.startHandle,this.getHandleStyle("start"),e),this.endHandle&&Os(this.endHandle,this.getHandleStyle("end"),e))},t.prototype.innerSetValues=function(e,n){e===void 0&&(e=[0,0]),n===void 0&&(n=!1);var i=this.values,a=this.clampValues(e);this.attributes.values=a,this.setValues(a),n&&this.onValueChange(i)},t.prototype.renderTrack=function(e){var n=this.attributes,i=n.x,a=n.y,s=en(this.attributes,"track");this.trackShape=Le(e).maybeAppendByClassName(so.track,"rect").styles((0,j.pi)((0,j.pi)({x:i,y:a},this.shape),s))},t.prototype.renderBrushArea=function(e){var n=this.attributes,i=n.x,a=n.y,s=n.brushable;this.brushArea=Le(e).maybeAppendByClassName(so.brushArea,"rect").styles((0,j.pi)({x:i,y:a,fill:"transparent",cursor:s?"crosshair":"default"},this.shape))},t.prototype.renderSparkline=function(e){var n=this,i=this.attributes,a=i.x,s=i.y,o=i.orientation,A=Le(e).maybeAppendByClassName(so.sparklineGroup,"g");da(o==="horizontal",A,function(l){var c=(0,j.pi)((0,j.pi)({},n.sparklineStyle),{x:a,y:s});l.maybeAppendByClassName(so.sparkline,function(){return new N_({style:c})}).update(c)})},t.prototype.renderHandles=function(){var e=this,n,i=this.attributes,a=i.showHandle,s=i.type,o=s==="range"?["start","end"]:["end"],A=a?o:[],l=this;(n=this.foregroundGroup)===null||n===void 0||n.selectAll(so.handle.class).data(A.map(function(c){return{type:c}}),function(c){return c.type}).join(function(c){return c.append(function(u){var h=u.type;return new Q_({style:e.getHandleStyle(h)})}).each(function(u){var h=u.type;this.attr("class","".concat(so.handle.name," ").concat(h,"-handle"));var f="".concat(h,"Handle");l[f]=this,this.addEventListener("pointerdown",l.onDragStart(h))})},function(c){return c.each(function(u){var h=u.type;this.update(l.getHandleStyle(h))})},function(c){return c.each(function(u){var h=u.type,f="".concat(h,"Handle");l[f]=void 0}).remove()})},t.prototype.renderSelection=function(e){var n=this.attributes,i=n.x,a=n.y,s=n.type,o=n.selectionType;this.foregroundGroup=Le(e).maybeAppendByClassName(so.foreground,"g");var A=en(this.attributes,"selection"),l=function(u){return u.style("visibility",function(h){return h.show?"visible":"hidden"}).style("cursor",function(h){return o==="select"?"grab":o==="invert"?"crosshair":"default"}).styles((0,j.pi)((0,j.pi)({},A),{transform:"translate(".concat(i,", ").concat(a,")")}))},c=this;this.foregroundGroup.selectAll(so.selection.class).data(s==="value"?[]:this.calcSelectionArea().map(function(u,h){return{style:(0,j.pi)({},u),index:h,show:o==="select"?h===1:h!==1}}),function(u){return u.index}).join(function(u){return u.append("rect").attr("className",so.selection.name).call(l).each(function(h,f){var d=this;f===1?(c.selectionShape=Le(this),this.on("pointerdown",function(g){d.attr("cursor","grabbing"),c.onDragStart("selection")(g)}),c.dispatchCustomEvent(this,"pointerenter","selectionMouseenter"),c.dispatchCustomEvent(this,"pointerleave","selectionMouseleave"),c.dispatchCustomEvent(this,"click","selectionClick"),this.addEventListener("pointerdown",function(){d.attr("cursor","grabbing")}),this.addEventListener("pointerup",function(){d.attr("cursor","pointer")}),this.addEventListener("pointerover",function(){d.attr("cursor","pointer")})):this.on("pointerdown",c.onDragStart("track"))})},function(u){return u.call(l)},function(u){return u.remove()}),this.updateSelectionArea(!1),this.renderHandles()},t.prototype.render=function(e,n){this.renderTrack(n),this.renderSparkline(n),this.renderBrushArea(n),this.renderSelection(n)},t.prototype.clampValues=function(e,n){var i;n===void 0&&(n=4);var a=(0,j.CR)(this.range,2),s=a[0],o=a[1],A=(0,j.CR)(this.getValues().map(function(v){return h1(v,n)}),2),l=A[0],c=A[1],u=Array.isArray(e)?e:[l,e!=null?e:c],h=(0,j.CR)((u||[l,c]).map(function(v){return h1(v,n)}),2),f=h[0],d=h[1];if(this.attributes.type==="value")return[0,hr(d,s,o)];f>d&&(i=(0,j.CR)([d,f],2),f=i[0],d=i[1]);var g=d-f;return g>o-s?[s,o]:f<s?l===s&&c===d?[s,d]:[s,g+s]:d>o?c===o&&l===f?[f,o]:[o-g,o]:[f,d]},t.prototype.calcSelectionArea=function(e){var n=(0,j.CR)(this.clampValues(e),2),i=n[0],a=n[1],s=this.availableSpace,o=s.x,A=s.y,l=s.width,c=s.height;return this.getOrientVal([[{y:A,height:c,x:o,width:i*l},{y:A,height:c,x:i*l+o,width:(a-i)*l},{y:A,height:c,x:a*l,width:(1-a)*l}],[{x:o,width:l,y:A,height:i*c},{x:o,width:l,y:i*c+A,height:(a-i)*c},{x:o,width:l,y:a*c,height:(1-a)*c}]])},t.prototype.calcHandlePosition=function(e){var n=this.attributes.handleIconOffset,i=this.availableSpace,a=i.x,s=i.y,o=i.width,A=i.height,l=(0,j.CR)(this.clampValues(),2),c=l[0],u=l[1],h=e==="start"?-n:n,f=(e==="start"?c:u)*this.getOrientVal([o,A])+h;return{x:a+this.getOrientVal([f,o/2]),y:s+this.getOrientVal([A/2,f])}},t.prototype.inferTextStyle=function(e){var n=this.attributes.orientation;return n==="horizontal"?{}:e==="start"?{transformOrigin:"left center",transform:"rotate(90)",textAlign:"start"}:e==="end"?{transformOrigin:"right center",transform:"rotate(90)",textAlign:"end"}:{}},t.prototype.calcHandleText=function(e){var n,i=this.attributes,a=i.type,s=i.orientation,o=i.formatter,A=i.autoFitLabel,l=en(this.attributes,"handle"),c=en(l,"label"),u=l.spacing,h=this.getHandleSize(),f=this.clampValues(),d=e==="start"?f[0]:f[1],g=o(d),v=new Vy({style:(0,j.pi)((0,j.pi)((0,j.pi)({},c),this.inferTextStyle(e)),{text:g})}),y=v.getBBox(),E=y.width,C=y.height;if(v.destroy(),!A){if(a==="value")return{text:g,x:0,y:-C-u};var I=u+h+(s==="horizontal"?E/2:0);return n={text:g},n[s==="horizontal"?"x":"y"]=e==="start"?-I:I,n}var R=0,K=0,W=this.availableSpace,V=W.width,J=W.height,et=this.calcSelectionArea()[1],at=et.x,ct=et.y,pt=et.width,wt=et.height,Ct=u+h;if(s==="horizontal"){var Ht=Ct+E/2;if(e==="start"){var Rt=at-Ct-E;R=Rt>0?-Ht:Ht}else{var St=V-at-pt-Ct>E;R=St?Ht:-Ht}}else{var Ot=Ct,Gt=C+Ct;e==="start"?K=ct-h>C?-Gt:Ot:K=J-(ct+wt)-h>C?Gt:-Ot}return{x:R,y:K,text:g}},t.prototype.getHandleLabelStyle=function(e){var n=en(this.attributes,"handleLabel");return(0,j.pi)((0,j.pi)((0,j.pi)({},n),this.calcHandleText(e)),this.inferTextStyle(e))},t.prototype.getHandleIconStyle=function(){var e=this.attributes.handleIconShape,n=en(this.attributes,"handleIcon"),i=this.getOrientVal(["ew-resize","ns-resize"]),a=this.getHandleSize();return(0,j.pi)({cursor:i,shape:e,size:a},n)},t.prototype.getHandleStyle=function(e){var n=this.attributes,i=n.x,a=n.y,s=n.showLabel,o=n.showLabelOnInteraction,A=n.orientation,l=this.calcHandlePosition(e),c=l.x,u=l.y,h=this.calcHandleText(e),f=s;return!s&&o&&(this.target?f=!0:f=!1),(0,j.pi)((0,j.pi)((0,j.pi)({},Gc(this.getHandleIconStyle(),"icon")),Gc((0,j.pi)((0,j.pi)({},this.getHandleLabelStyle(e)),h),"label")),{transform:"translate(".concat(c+i,", ").concat(u+a,")"),orientation:A,showLabel:f,type:e,zIndex:3})},t.prototype.getHandleSize=function(){var e=this.attributes,n=e.handleIconSize,i=e.width,a=e.height;return n||Math.floor((this.getOrientVal([+a,+i])+4)/2.4)},t.prototype.getOrientVal=function(e){var n=(0,j.CR)(e,2),i=n[0],a=n[1],s=this.attributes.orientation;return s==="horizontal"?i:a},t.prototype.setValuesOffset=function(e,n){n===void 0&&(n=0);var i=this.attributes.type,a=(0,j.CR)(this.getValues(),2),s=a[0],o=a[1],A=i==="range"?e:0,l=[s+A,o+n].sort();this.innerSetValues(l,!0)},t.prototype.getRatio=function(e){var n=this.availableSpace,i=n.width,a=n.height;return e/this.getOrientVal([i,a])},t.prototype.dispatchCustomEvent=function(e,n,i){var a=this;e.on(n,function(s){s.stopPropagation(),a.dispatchEvent(new Wr(i,{detail:s}))})},t.prototype.bindEvents=function(){this.addEventListener("wheel",this.onScroll);var e=this.brushArea;this.dispatchCustomEvent(e,"click","trackClick"),this.dispatchCustomEvent(e,"pointerenter","trackMouseenter"),this.dispatchCustomEvent(e,"pointerleave","trackMouseleave"),e.on("pointerdown",this.onDragStart("track"))},t.prototype.onScroll=function(e){var n=this.attributes.scrollable;if(n){var i=e.deltaX,a=e.deltaY,s=a||i,o=this.getRatio(s);this.setValuesOffset(o,o)}},t.tag="slider",t}(Sr),P_={backgroundFill:"#262626",backgroundLineCap:"round",backgroundLineWidth:1,backgroundStroke:"#333",backgroundZIndex:-1,formatter:function(r){return r.toString()},labelFill:"#fff",labelFontSize:12,labelTextBaseline:"middle",padding:[2,4],position:"right",radius:0,zIndex:999},b1=Fs({background:"background",labelGroup:"label-group",label:"label"},"indicator"),D_=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,e,P_)||this;return n.point=[0,0],n.group=n.appendChild(new oi({})),n.isMutationObserved=!0,n}return t.prototype.renderBackground=function(){if(this.label){var e=this.attributes,n=e.position,i=e.padding,a=(0,j.CR)(Ti(i),4),s=a[0],o=a[1],A=a[2],l=a[3],c=this.label.node().getLocalBounds(),u=c.min,h=c.max,f=new _i(u[0]-l,u[1]-s,h[0]+o-u[0]+l,h[1]+A-u[1]+s),d=this.getPath(n,f),g=en(this.attributes,"background");this.background=Le(this.group).maybeAppendByClassName(b1.background,"path").styles((0,j.pi)((0,j.pi)({},g),{d})),this.group.appendChild(this.label.node())}},t.prototype.renderLabel=function(){var e=this.attributes,n=e.formatter,i=e.labelText,a=en(this.attributes,"label"),s=(0,j.CR)(Uo(a),2),o=s[0],A=s[1],l=o.text,c=(0,j._T)(o,["text"]);if(this.label=Le(this.group).maybeAppendByClassName(b1.labelGroup,"g").styles(A),!!i){var u=this.label.maybeAppendByClassName(b1.label,function(){return Po(n(i))}).style("text",n(i).toString());u.selectAll("text").styles(c)}},t.prototype.adjustLayout=function(){var e=(0,j.CR)(this.point,2),n=e[0],i=e[1],a=this.attributes,s=a.x,o=a.y;this.group.attr("transform","translate(".concat(s-n,", ").concat(o-i,")"))},t.prototype.getPath=function(e,n){var i=this.attributes.radius,a=n.x,s=n.y,o=n.width,A=n.height,l=[["M",a+i,s],["L",a+o-i,s],["A",i,i,0,0,1,a+o,s+i],["L",a+o,s+A-i],["A",i,i,0,0,1,a+o-i,s+A],["L",a+i,s+A],["A",i,i,0,0,1,a,s+A-i],["L",a,s+i],["A",i,i,0,0,1,a+i,s],["Z"]],c={top:4,right:6,bottom:0,left:2},u=c[e],h=this.createCorner([l[u].slice(-2),l[u+1].slice(-2)]);return l.splice.apply(l,(0,j.ev)([u+1,1],(0,j.CR)(h),!1)),l[0][0]="M",l},t.prototype.createCorner=function(e,n){n===void 0&&(n=10);var i=.8,a=yR.apply(void 0,(0,j.ev)([],(0,j.CR)(e),!1)),s=(0,j.CR)(e,2),o=(0,j.CR)(s[0],2),A=o[0],l=o[1],c=(0,j.CR)(s[1],2),u=c[0],h=c[1],f=(0,j.CR)(a?[u-A,[A,u]]:[h-l,[l,h]],2),d=f[0],g=(0,j.CR)(f[1],2),v=g[0],y=g[1],E=d/2,C=d/Math.abs(d),I=n*C,R=I/2,K=I*Math.sqrt(3)/2*i,W=(0,j.CR)([v,v+E-R,v+E,v+E+R,y],5),V=W[0],J=W[1],et=W[2],at=W[3],ct=W[4];return a?(this.point=[et,l-K],[["L",V,l],["L",J,l],["L",et,l-K],["L",at,l],["L",ct,l]]):(this.point=[A+K,et],[["L",A,V],["L",A,J],["L",A+K,et],["L",A,at],["L",A,ct]])},t.prototype.applyVisibility=function(){var e=this.attributes.visibility;e==="hidden"?Ts(this):Oh(this)},t.prototype.bindEvents=function(){this.label.on(yn.BOUNDS_CHANGED,this.renderBackground)},t.prototype.render=function(){this.renderLabel(),this.renderBackground(),this.adjustLayout(),this.applyVisibility()},t}(Sr),R_=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,jr({},t.defaultOptions,e))||this;return n.hoverColor="#f5f5f5",n.selectedColor="#e6f7ff",n.background=n.appendChild(new xi({})),n.label=n.background.appendChild(new oi({})),n}return Object.defineProperty(t.prototype,"padding",{get:function(){return Ti(this.style.padding)},enumerable:!1,configurable:!0}),t.prototype.renderLabel=function(){var e=this.style,n=e.label,i=e.value,a=en(this.attributes,"label");Le(this.label).maybeAppend(".label",function(){return Po(n)}).attr("className","label").styles(a),this.label.attr("__data__",i)},t.prototype.renderBackground=function(){var e=this.label.getBBox(),n=(0,j.CR)(this.padding,4),i=n[0],a=n[1],s=n[2],o=n[3],A=e.width,l=e.height,c=A+o+a,u=l+i+s,h=en(this.attributes,"background"),f=this.style,d=f.width,g=d===void 0?0:d,v=f.height,y=v===void 0?0:v,E=f.selected;this.background.attr((0,j.pi)((0,j.pi)({},h),{width:Math.max(c,g),height:Math.max(u,y),fill:E?this.selectedColor:"#fff"})),this.label.attr({transform:"translate(".concat(o,", ").concat((u-l)/2,")")})},t.prototype.render=function(){this.renderLabel(),this.renderBackground()},t.prototype.bindEvents=function(){var e=this;this.addEventListener("pointerenter",function(){e.style.selected||e.background.attr("fill",e.hoverColor)}),this.addEventListener("pointerleave",function(){e.style.selected||e.background.attr("fill",e.style.backgroundFill)});var n=this;this.addEventListener("click",function(){var i=e.style,a=i.label,s=i.value,o=i.onClick;o==null||o(s,{label:a,value:s},n)})},t.defaultOptions={style:{value:"",label:"",cursor:"pointer"}},t}(Sr),__=function(r){(0,j.ZT)(t,r);function t(e){var n,i,a=r.call(this,jr({},t.defaultOptions,e))||this;a.currentValue=(n=t.defaultOptions.style)===null||n===void 0?void 0:n.defaultValue,a.isPointerInSelect=!1,a.select=a.appendChild(new xi({className:"select",style:{cursor:"pointer",width:0,height:0}})),a.dropdown=a.appendChild(new xi({className:"dropdown"}));var s=a.style.defaultValue;return s&&(!((i=a.style.options)===null||i===void 0)&&i.some(function(o){return o.value===s}))&&(a.currentValue=s),a}return t.prototype.setValue=function(e){this.currentValue=e,this.render()},t.prototype.getValue=function(){return this.currentValue},Object.defineProperty(t.prototype,"dropdownPadding",{get:function(){return Ti(this.style.dropdownPadding)},enumerable:!1,configurable:!0}),t.prototype.renderSelect=function(){var e=this,n,i=this.style,a=i.x,s=i.y,o=i.width,A=i.height,l=i.bordered,c=i.showDropdownIcon,u=en(this.attributes,"select"),h=en(this.attributes,"placeholder");this.select.attr((0,j.pi)((0,j.pi)({x:a,y:s,width:o,height:A},u),{fill:"#fff",strokeWidth:l?1:0}));var f=this.dropdownPadding,d=10;c&&Le(this.select).maybeAppend(".dropdown-icon","path").style("d","M-5,-3.5 L0,3.5 L5,-3.5").style("transform","translate(".concat(a+o-d-f[1]-f[3],", ").concat(s+A/2,")")).style("lineWidth",1).style("stroke",this.select.style.stroke);var g=(n=this.style.options)===null||n===void 0?void 0:n.find(function(C){return C.value===e.currentValue}),v=(0,j.pi)({x:a+f[3]},h);Le(this.select).selectAll(".placeholder").data(g?[]:[1]).join(function(C){return C.append("text").attr("className","placeholder").styles(v).style("y",function(){var I=this.getBBox();return s+(A-I.height)/2})},function(C){return C.styles(v)},function(C){return C.remove()});var y=en(this.attributes,"optionLabel"),E=(0,j.pi)({x:a+f[3]},y);Le(this.select).selectAll(".value").data(g?[g]:[]).join(function(C){return C.append(function(I){return Po(I.label)}).attr("className","value").styles(E).style("y",function(){var I=this.getBBox();return s+(A-I.height)/2})},function(C){return C.styles(E)},function(C){return C.remove()})},t.prototype.renderDropdown=function(){var e=this,n,i,a=this.style,s=a.x,o=a.y,A=a.width,l=a.height,c=a.options,u=a.onSelect,h=a.open,f=en(this.attributes,"dropdown"),d=en(this.attributes,"option"),g=this.dropdownPadding;Le(this.dropdown).maybeAppend(".dropdown-container","g").attr("className","dropdown-container").selectAll(".dropdown-item").data(c,function(E){return E.value}).join(function(E){return E.append(function(C){return new R_({className:"dropdown-item",style:(0,j.pi)((0,j.pi)((0,j.pi)({},C),d),{width:A-g[1]-g[3],selected:C.value===e.currentValue,onClick:function(I,R,K){e.setValue(I),u==null||u(I,R,K),e.dispatchEvent(new Wr("change",{detail:{value:I,option:R,item:K}})),Ts(e.dropdown)}})})}).each(function(C,I){var R,K=(R=this.parentNode)===null||R===void 0?void 0:R.children,W=K.reduce(function(V,J,et){return et<I&&(V+=J.getBBox().height),V},0);this.attr("transform","translate(".concat(g[3],", ").concat(g[0]+W,")"))})},function(E){return E.update(function(C){return{selected:C.value===e.currentValue}})},function(E){return E.remove()});var v=(i=(n=this.dropdown.getElementsByClassName("dropdown-container"))===null||n===void 0?void 0:n[0])===null||i===void 0?void 0:i.getBBox(),y=f.spacing;this.dropdown.attr((0,j.pi)({transform:"translate(".concat(s,", ").concat(o+l+y,")"),width:v.width+g[1]+g[3],height:v.height+g[0]+g[2]},f)),!h&&Ts(this.dropdown)},t.prototype.render=function(){this.renderSelect(),this.renderDropdown()},t.prototype.bindEvents=function(){var e=this;this.addEventListener("click",function(n){n.stopPropagation()}),this.select.addEventListener("click",function(){e.dropdown.style.visibility==="visible"?Ts(e.dropdown):Oh(e.dropdown)}),this.addEventListener("pointerenter",function(){e.isPointerInSelect=!0}),this.addEventListener("pointerleave",function(){e.isPointerInSelect=!1}),document==null||document.addEventListener("click",function(){e.isPointerInSelect||Ts(e.dropdown)})},t.defaultOptions={style:{x:0,y:0,width:140,height:32,options:[],bordered:!0,defaultValue:"",selectRadius:8,selectStroke:"#d9d9d9",showDropdownIcon:!0,placeholderText:"\u8BF7\u9009\u62E9",placeholderFontSize:12,placeholderTextBaseline:"top",placeholderFill:"#c2c2c2",dropdownFill:"#fff",dropdownStroke:"#d9d9d9",dropdownRadius:8,dropdownShadowBlur:4,dropdownShadowColor:"rgba(0, 0, 0, 0.08)",dropdownPadding:8,dropdownSpacing:10,optionPadding:[8,12],optionFontSize:12,optionTextBaseline:"top",optionBackgroundFill:"#fff",optionBackgroundRadius:4,optionLabelFontSize:12,optionLabelTextBaseline:"top"}},t}(Sr),Is=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,jr({},{style:{backgroundOpacity:t.backgroundOpacities.default}},t.defaultOptions,e))||this;return n.showBackground=!0,n.background=n.appendChild(new xi({})),n.icon=n.appendChild(new oi({})),n}return Object.defineProperty(t.prototype,"label",{get:function(){return"BaseIcon"},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"lineWidth",{get:function(){return Math.log10(this.attributes.size)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"padding",{get:function(){return Ti(this.attributes.size/5)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"iconSize",{get:function(){var e=this.attributes.size,n=(0,j.CR)(this.padding,4),i=n[0],a=n[1],s=n[2],o=n[3];return Math.max(e-Math.max(o+a,i+s),this.lineWidth*2+1)},enumerable:!1,configurable:!0}),t.prototype.renderBackground=function(){var e=this.attributes,n=e.x,i=e.y,a=e.size,s=a/2,o=en(this.attributes,"background");this.background.attr((0,j.pi)({x:n-s,y:i-s,width:a,height:a},o))},t.prototype.showIndicator=function(){if(this.label){var e=this.attributes.size,n=this.background.getBBox(),i=n.x,a=n.y;this.indicator.update({x:i+e/2,y:a-5,labelText:this.label,visibility:"visible"})}},t.prototype.hideIndicator=function(){this.indicator.update({visibility:"hidden"})},t.prototype.connectedCallback=function(){var e;r.prototype.connectedCallback.call(this);var n=this.attributes.size,i=this.background.getBBox(),a=i.x,s=i.y,o=(e=this.ownerDocument)===null||e===void 0?void 0:e.defaultView;o&&(this.indicator=o.appendChild(new D_({style:{x:a+n/2,y:s-n/2,visibility:"hidden",position:"top",radius:3,zIndex:100}})))},t.prototype.disconnectedCallback=function(){this.indicator.destroy()},t.prototype.render=function(){this.renderIcon(),this.showBackground&&this.renderBackground()},t.prototype.bindEvents=function(){var e=this,n=this.attributes.onClick;if(this.addEventListener("click",function(){n==null||n(e)}),this.showBackground){var i=function(){return e.background.attr({opacity:t.backgroundOpacities.default})},a=function(){return e.background.attr({opacity:t.backgroundOpacities.hover})},s=function(){return e.background.attr({opacity:t.backgroundOpacities.active})};this.addEventListener("pointerenter",function(){a(),e.showIndicator()}),this.addEventListener("pointerleave",function(){i(),e.hideIndicator()}),this.addEventListener("pointerdown",function(){s()}),this.addEventListener("pointerup",function(){i()})}},t.tag="IconBase",t.defaultOptions={style:{x:0,y:0,size:10,color:"#565758",backgroundRadius:4,backgroundFill:"#e2e2e2"}},t.backgroundOpacities={default:0,hover:.8,active:1},t}(Sr),Dh=function(r,t){return t===void 0&&(t="#565758"),new Pi({style:{fill:t,d:"M ".concat(r,",").concat(r," L -").concat(r,",0 L ").concat(r,",-").concat(r," Z"),transformOrigin:"center"}})},H_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return t.prototype.arcPath=function(e,n,i){var a=(0,j.CR)([i,i],2),s=a[0],o=a[1],A=function(g){return[e+i*Math.cos(g),n+i*Math.sin(g)]},l=(0,j.CR)(A(-5/4*Math.PI),2),c=l[0],u=l[1],h=(0,j.CR)(A(1/4*Math.PI),2),f=h[0],d=h[1];return"M".concat(c,",").concat(u,",A").concat(s,",").concat(o,",0,1,1,").concat(f,",").concat(d)},Object.defineProperty(t.prototype,"label",{get:function(){return"\u91CD\u7F6E"},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.color,s=this.iconSize,o=this.lineWidth,A=o+.5;Le(this.icon).maybeAppend(".reset","path").styles({stroke:a,lineWidth:o,d:this.arcPath(n,i,s/2-o),markerStart:Dh(A,a)})},t}(Is),G_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(t.prototype,"label",{get:function(){return"\u5FEB\u9000"},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.color,s=this.iconSize,o=s/2,A=s/2/Math.pow(3,.5),l=[[n,i],[n,i-A],[n-o,i],[n,i+A],[n,i],[n+o,i-A],[n+o,i+A],[n,i]];Le(this.icon).maybeAppend(".backward","polygon").styles({points:l,fill:a})},t}(Is),K_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(t.prototype,"label",{get:function(){return"\u5FEB\u8FDB"},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.color,s=this.iconSize,o=s/2,A=s/2/Math.pow(3,.5),l=[[n,i],[n,i-A],[n+o,i],[n,i+A],[n,i],[n-o,i-A],[n-o,i+A],[n,i]];Le(this.icon).maybeAppend(".forward","polygon").styles({points:l,fill:a})},t}(Is),z_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(t.prototype,"label",{get:function(){return"\u64AD\u653E"},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.color,s=this.iconSize,o=s/3*Math.pow(3,.5)*.8,A=[[n+o,i],[n-o/2,i-s/2*.8],[n-o/2,i+s/2*.8],[n+o,i]];Le(this.icon).maybeAppend(".play","polygon").styles({points:A,fill:a})},t}(Is),V_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(t.prototype,"label",{get:function(){return"\u6682\u505C"},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.color,s=this.iconSize,o=s/3,A=[[n-o,i-s/2],[n-o,i+s/2],[n-o/2,i+s/2],[n-o/2,i-s/2],[n-o,i-s/2],[n+o/2,i-s/2],[n+o/2,i+s/2],[n+o,i+s/2],[n+o,i-s/2]];Le(this.icon).maybeAppend(".pause","polygon").styles({points:A,fill:a})},t}(Is),W_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(t.prototype,"label",{get:function(){return"\u8303\u56F4\u65F6\u95F4"},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.color,s=this,o=s.iconSize,A=s.lineWidth,l=A;Le(this.icon).maybeAppend(".left-line","line").styles({x1:n-o/2,y1:i-o/2,x2:n-o/2,y2:i+o/2,stroke:a,lineWidth:A}),Le(this.icon).maybeAppend(".right-line","line").styles({x1:n+o/2,y1:i-o/2,x2:n+o/2,y2:i+o/2,stroke:a,lineWidth:A}),Le(this.icon).maybeAppend(".left-arrow","line").styles({x1:n,y1:i,x2:n-o/2+l*2,y2:i,stroke:a,lineWidth:A,markerEnd:Dh(A*2,a)}),Le(this.icon).maybeAppend(".right-arrow","line").styles({x1:n,y1:i,x2:n+o/2-l*2,y2:i,stroke:a,lineWidth:A,markerEnd:Dh(A*2,a)})},t}(Is),Z_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(t.prototype,"label",{get:function(){return"\u5355\u4E00\u65F6\u95F4"},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.color,s=this,o=s.iconSize,A=s.lineWidth;Le(this.icon).maybeAppend(".line","line").styles({x1:n,y1:i-o/2,x2:n,y2:i+o/2,stroke:a,lineWidth:A});var l=A;Le(this.icon).maybeAppend(".left-arrow","line").styles({x1:n-o/2-l*2,y1:i,x2:n-l*2,y2:i,stroke:a,lineWidth:A,markerEnd:Dh(A*2,a)}),Le(this.icon).maybeAppend(".right-arrow","line").styles({x1:n+o/2+l*2,y1:i,x2:n+l*2,y2:i,stroke:a,lineWidth:A,markerEnd:Dh(A*2,a)})},t}(Is),V2=function(r){return[[-r/2,-r/2],[-r/2,r/2],[r/2,r/2]]},j_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(t.prototype,"label",{get:function(){return"\u6298\u7EBF\u56FE"},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.color,s=this,o=s.iconSize,A=s.lineWidth,l=A,c=(o-l*2-A)/4,u=(o-l*2-A)/2,h=(0,j.CR)([n-o/2+l,i+o/2-l*2],2),f=h[0],d=h[1];Le(this.icon).maybeAppend(".coordinate","polyline").styles({points:V2(o).map(function(g){var v=(0,j.CR)(g,2),y=v[0],E=v[1];return[y+n,E+i]}),stroke:a,lineWidth:A}),Le(this.icon).maybeAppend(".line","polyline").styles({points:[[f,d],[f+c,d-u],[f+c*2,d],[f+c*4,d-u*2]],stroke:a,lineWidth:A})},t}(Is),Y_=function(r){(0,j.ZT)(t,r);function t(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(t.prototype,"label",{get:function(){return"\u6761\u5F62\u56FE"},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"data",{get:function(){return[1,4,2,4,3]},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.data,n=this.attributes,i=n.x,a=n.y,s=n.color,o=this,A=o.iconSize,l=o.lineWidth,c=l,u=(A-c)/e.length,h=(A-c*2)/4,f=(0,j.CR)([i-A/2+c*2,a+A/2-c],2),d=f[0],g=f[1];Le(this.icon).maybeAppend(".coordinate","polyline").styles({points:V2(A).map(function(v){var y=(0,j.CR)(v,2),E=y[0],C=y[1];return[E+i,C+a]}),stroke:s,lineWidth:l}),Le(this.icon).maybeAppend(".bars","g").selectAll(".column").data(this.data.map(function(v,y){return{value:v,index:y}})).join(function(v){return v.append("line").attr("className","column").style("x1",function(y){var E=y.index;return d+u*E}).style("y1",g).style("x2",function(y){var E=y.index;return d+u*E}).style("y2",function(y){var E=y.value;return g-h*E}).styles({y1:g,stroke:s,lineWidth:l})})},t}(Is),X_=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,jr({},{style:{color:"#d8d9d9"}},e))||this;return n.showBackground=!1,n}return t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.color,s=this,o=s.iconSize,A=s.lineWidth;Le(this.icon).maybeAppend(".split","line").styles({x1:n,y1:i-o/2,x2:n,y2:i+o/2,stroke:a,lineWidth:A})},t}(Is),x1=function(r){(0,j.ZT)(t,r);function t(){var e=r.apply(this,(0,j.ev)([],(0,j.CR)(arguments),!1))||this;return e.showBackground=!1,e}return Object.defineProperty(t.prototype,"padding",{get:function(){return Ti(0)},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.iconSize,n=this.attributes,i=n.x,a=n.y,s=n.speed,o=s===void 0?1:s,A=Qy(this.attributes,["x","y","transform","transformOrigin","width","height","size","color","speed"]),l=hr(e,20,1/0),c=20,u=(0,j.pi)((0,j.pi)({},A),{x:i-l/2,y:a-c/2,width:l,height:c,defaultValue:o,bordered:!1,showDropdownIcon:!1,selectRadius:2,dropdownPadding:this.padding,dropdownRadius:2,dropdownSpacing:e/5,placeholderFontSize:e/2,optionPadding:0,optionLabelFontSize:e/2,optionBackgroundRadius:1,options:[{label:"1x",value:1},{label:"1.5x",value:1.5},{label:"2x",value:2}]});Le(this.icon).maybeAppend(".speed",function(){return new __({style:u})}).attr("className","speed").each(function(){this.update(u)})},t.tag="SpeedSelect",t}(Is),C1=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,e)||this;return n.icon=n.appendChild(new oi({})),n.currentType=n.attributes.type,n}return t.prototype.getType=function(){return this.currentType},t.prototype.render=function(){var e=this,n=this.attributes,i=n.onChange,a=(0,j._T)(n,["onChange"]);Le(this.icon).selectAll(".icon").data([this.currentType]).join(function(s){return s.append(function(o){var A,l=(A=e.toggles.find(function(c){var u=(0,j.CR)(c,1),h=u[0];return h===o}))===null||A===void 0?void 0:A[1];if(!l)throw new Error("Invalid type: ".concat(o));return new l({})}).attr("className","icon").styles(a,!1).update({})},function(s){return s.styles({restStyles:a}).update({})},function(s){return s.remove()})},t.prototype.bindEvents=function(){var e=this,n=this.attributes.onChange;this.addEventListener("click",function(i){i.preventDefault(),i.stopPropagation();var a=(e.toggles.findIndex(function(o){var A=(0,j.CR)(o,1),l=A[0];return l===e.currentType})+1)%e.toggles.length,s=e.toggles[a][0];n==null||n(e.currentType),e.currentType=s,e.render()})},t.tag="ToggleIcon",t}(Sr),S1=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,jr({},{style:{type:"play"}},e))||this;return n.toggles=[["play",z_],["pause",V_]],n}return t}(C1),M1=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,jr({},{style:{type:"range"}},e))||this;return n.toggles=[["range",W_],["value",Z_]],n}return t}(C1),T1=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,jr({},{style:{type:"column"}},e))||this;return n.toggles=[["line",j_],["column",Y_]],n}return t}(C1),J_={reset:H_,speed:x1,backward:G_,playPause:S1,forward:K_,selectionType:M1,chartType:T1,split:X_},q_=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,jr({},t.defaultOptions,e))||this;return n.background=n.appendChild(new xi({})),n.functions=n.appendChild(new oi({})),n}return Object.defineProperty(t.prototype,"padding",{get:function(){return Ti(this.attributes.padding)},enumerable:!1,configurable:!0}),t.prototype.renderBackground=function(){var e=this.style,n=e.x,i=e.y,a=e.width,s=e.height,o=en(this.attributes,"background");this.background.attr((0,j.pi)({x:n,y:i,width:a,height:s},o))},t.prototype.renderFunctions=function(){var e=this,n,i=this.attributes,a=i.functions,s=i.iconSize,o=i.iconSpacing,A=i.x,l=i.y,c=i.width,u=i.height,h=i.align,f=(0,j.CR)(this.padding,4),d=f[1],g=f[3],v=a.reduce(function(C,I){return C.length&&I.length?C.concat.apply(C,(0,j.ev)(["split"],(0,j.CR)(I),!1)):C.concat.apply(C,(0,j.ev)([],(0,j.CR)(I),!1))},[]),y=v.length*(s+o)-o,E={left:g+s/2,center:(c-y)/2+s/2,right:c-y-g-d+s/2}[h]||0;(n=this.speedSelect)===null||n===void 0||n.destroy(),this.functions.removeChildren(),v.forEach(function(C,I){var R,K=J_[C],W={x:A+I*(s+o)+E,y:l+u/2,size:s};if(K===x1?(W.speed=e.attributes.speed,W.onSelect=function(J){return e.handleFunctionChange(C,{value:J})}):[S1,M1,T1].includes(K)?(W.onChange=function(J){return e.handleFunctionChange(C,{value:J})},K===S1&&(W.type=e.attributes.state==="play"?"pause":"play"),K===M1&&(W.type=e.attributes.selectionType==="range"?"value":"range"),K===T1&&(W.type=e.attributes.chartType==="line"?"column":"line")):W.onClick=function(){return e.handleFunctionChange(C,{value:C})},K===x1){var V=(R=e.ownerDocument)===null||R===void 0?void 0:R.defaultView;V&&(e.speedSelect=new K({style:(0,j.pi)((0,j.pi)({},W),{zIndex:100})}),V.appendChild(e.speedSelect))}else e.functions.appendChild(new K({style:W}))})},t.prototype.disconnectedCallback=function(){var e;r.prototype.disconnectedCallback.call(this),(e=this.speedSelect)===null||e===void 0||e.destroy()},t.prototype.render=function(){this.renderBackground(),this.renderFunctions()},t.prototype.handleFunctionChange=function(e,n){var i=this.attributes.onChange;i==null||i(e,n)},t.defaultOptions={style:{x:0,y:0,width:300,height:40,padding:0,align:"center",iconSize:25,iconSpacing:0,speed:1,state:"pause",chartType:"line",selectionType:"range",backgroundFill:"#fbfdff",backgroundStroke:"#ebedf0",functions:[["reset","speed"],["backward","playPause","forward"],["selectionType","chartType"]]}},t}(Sr),$_=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,jr({},t.defaultOptions,e))||this;return n.bindEvents(),n}return t.prototype.bindEvents=function(){var e=this;this.addEventListener("mouseenter",function(){e.attr("lineWidth",Math.ceil(+(e.style.r||0)/2))}),this.addEventListener("mouseleave",function(){e.attr("lineWidth",0)})},t.defaultOptions={style:{r:5,fill:"#3f7cf7",lineWidth:0,stroke:"#3f7cf7",strokeOpacity:.5,cursor:"pointer"}},t}(Js),tH=function(r){(0,j.ZT)(t,r);function t(e){return r.call(this,jr({},t.defaultOptions,e))||this}return t.prototype.renderBackground=function(){var e=this.attributes,n=e.x,i=e.y,a=e.width,s=e.height,o=en(this.attributes,"background");Le(this).maybeAppend("background","rect").attr("className","background").styles((0,j.pi)({x:n-a/2,y:i-s/2,width:a,height:s},o))},t.prototype.renderIcon=function(){var e=this.attributes,n=e.x,i=e.y,a=e.iconSize,s=en(this.attributes,"icon"),o=1,A=a/2;Le(this).maybeAppend("icon-left-line","line").attr("className","icon-left-line").styles((0,j.pi)({x1:n-o,y1:i-A,x2:n-o,y2:i+A},s)),Le(this).maybeAppend("icon-right-line","line").attr("className","icon-right-line").styles((0,j.pi)({x1:n+o,y1:i-A,x2:n+o,y2:i+A},s))},t.prototype.renderBorder=function(){var e=this.attributes,n=e.x,i=e.y,a=e.width,s=e.height,o=e.type,A=en(this.attributes,"border"),l=o==="start"?+a/2:-a/2;Le(this).maybeAppend("border","line").attr("className","border").styles((0,j.pi)({x1:l+n,y1:i-s/2,x2:l+n,y2:i+s/2},A))},t.prototype.render=function(){this.renderBackground(),this.renderIcon(),this.renderBorder()},t.defaultOptions={style:{x:0,y:0,width:10,height:50,iconSize:10,type:"start",backgroundFill:"#fff",backgroundFillOpacity:.5,iconStroke:"#9a9a9a",iconLineWidth:1,borderStroke:"#e8e8e8",borderLineWidth:1}},t}(Sr);function eH(r,t){return typeof r=="number"?W2(r):nH(r,t)}function nH(r,t){var e=new Date(r);switch(t){case"half-hour":case"hour":case"four-hour":return[0,6,12,18].includes(e.getHours())&&e.getMinutes()===0?ia(e,`HH:mm
|
|
|
YYYY-MM-DD`):ia(e,"HH:mm");case"half-day":return e.getHours()<12?`AM
|
|
|
`.concat(ia(e,"YYYY-MM-DD")):"PM";case"day":return[1,10,20].includes(e.getDate())?ia(e,`DD
|
|
|
YYYY-MM`):ia(e,"DD");case"week":return e.getDate()<=7?ia(e,`DD
|
|
|
YYYY-MM`):ia(e,"DD");case"month":return[0,6].includes(e.getMonth())?ia(e,`MM\u6708
|
|
|
YYYY`):ia(e,"MM\u6708");case"season":return[0].includes(e.getMonth())?ia(e,`MM\u6708
|
|
|
YYYY`):ia(e,"MM\u6708");case"year":return ia(e,"YYYY");default:return ia(e,"YYYY-MM-DD HH:mm")}}function W2(r){var t=String(Math.floor(r/3600)).padStart(2,"0"),e=String(Math.floor(r%3600/60)).padStart(2,"0"),n=String(Math.floor(r%60)).padStart(2,"0");return r<3600?"".concat(e,":").concat(n):"".concat(t,":").concat(e,":").concat(n)}var rH=function(r){(0,j.ZT)(t,r);function t(e){var n=r.call(this,jr({},t.defaultOptions,e))||this;n.axis=n.appendChild(new t_({style:{type:"linear",startPos:[0,0],endPos:[0,0],data:[],showArrow:!1,animate:!1}})),n.timeline=n.appendChild(new U_({style:{onChange:function(u){n.handleSliderChange(u)}}})),n.controller=n.appendChild(new q_({})),n.states={},n.handleSliderChange=function(u){var h=function(){var f=n.states.values;return Array.isArray(f)?(0,j.ev)([],(0,j.CR)(f),!1):f}();n.setBySliderValues(u),n.dispatchOnChange(h)};var i=n.attributes,a=i.selectionType,s=i.chartType,o=i.speed,A=i.state,l=i.playMode,c=i.values;return n.states={chartType:s,playMode:l,selectionType:a,speed:o,state:A},n.setByTimebarValues(c),n}return Object.defineProperty(t.prototype,"data",{get:function(){var e=this.attributes.data,n=function(i,a){return i.time<a.time?-1:i.time>a.time?1:0};return e.sort(n)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"space",{get:function(){var e=this.attributes,n=e.x,i=e.y,a=e.width,s=e.height,o=e.type,A=e.controllerHeight,l=hr(+s-A,0,+s),c=new _i(n,i+ +s-A,+a,A),u,h=0;o==="chart"?(h=35,u=new _i(n,i+l-h,+a,h)):u=new _i;var f=o==="time"?10:l,d=new _i(n,i+(o==="time"?l:l-f),+a,f-h);return{axisBBox:u,controllerBBox:c,timelineBBox:d}},enumerable:!1,configurable:!0}),t.prototype.setBySliderValues=function(e){var n,i,a=this.data,s=(0,j.CR)(Array.isArray(e)?e:[0,e],2),o=s[0],A=s[1],l=a.length,c=a[Math.floor(o*l)],u=a[Math.ceil(A*l)-(Array.isArray(e)?0:1)];this.states.values=[(n=c==null?void 0:c.time)!==null&&n!==void 0?n:a[0].time,(i=u==null?void 0:u.time)!==null&&i!==void 0?i:1/0]},t.prototype.setByTimebarValues=function(e){var n,i,a,s=this.data,o=(0,j.CR)(Array.isArray(e)?e:[void 0,e],2),A=o[0],l=o[1],c=s.find(function(h){var f=h.time;return f===A}),u=s.find(function(h){var f=h.time;return f===l});this.states.values=[(n=c==null?void 0:c.time)!==null&&n!==void 0?n:(i=s[0])===null||i===void 0?void 0:i.time,(a=u==null?void 0:u.time)!==null&&a!==void 0?a:1/0]},t.prototype.setByIndex=function(e){var n,i,a,s,o=this.data,A=(0,j.CR)(e,2),l=A[0],c=A[1];this.states.values=[(i=(n=o[l])===null||n===void 0?void 0:n.time)!==null&&i!==void 0?i:o[0].time,(s=(a=this.data[c])===null||a===void 0?void 0:a.time)!==null&&s!==void 0?s:1/0]},Object.defineProperty(t.prototype,"sliderValues",{get:function(){var e=this.states,n=e.values,i=e.selectionType,a=(0,j.CR)(Array.isArray(n)?n:[void 0,n],2),s=a[0],o=a[1],A=this.data,l=A.length,c=i==="value",u=function(){var f=A.findIndex(function(d){var g=d.time;return g===s});return c?0:f>-1?f/l:0},h=function(){if(o===1/0)return 1;var f=A.findIndex(function(d){var g=d.time;return g===o});return f>-1?f/l:c?.5:1};return[u(),h()]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"values",{get:function(){var e=this.states,n=e.values,i=e.selectionType,a=(0,j.CR)(Array.isArray(n)?n:[this.data[0].time,n],2),s=a[0],o=a[1];return i==="value"?o:[s,o]},enumerable:!1,configurable:!0}),t.prototype.getDatumByRatio=function(e){var n=this.data,i=n.length,a=Math.floor(e*(i-1));return n[a]},Object.defineProperty(t.prototype,"chartHandleIconShape",{get:function(){var e=this.states.selectionType,n=this.space.timelineBBox.height;return e==="range"?function(i){return new tH({style:{type:i,height:n,iconSize:n/6}})}:function(){return new cl({style:{x1:0,y1:-n/2,x2:0,y2:n/2,lineWidth:2,stroke:"#c8c8c8"}})}},enumerable:!1,configurable:!0}),t.prototype.getChartStyle=function(e){var n=this,i=e.x,a=e.y,s=e.width,o=e.height,A=this.states,l=A.selectionType,c=A.chartType,u=this.data,h=this.attributes,f=h.type,d=h.labelFormatter,g=en(this.attributes,"chart"),v=g.type,y=(0,j._T)(g,["type"]),E=l==="range";if(f==="time")return(0,j.pi)({handleIconShape:function(){return new $_({})},selectionFill:"#2e7ff8",selectionFillOpacity:1,showLabelOnInteraction:!0,handleLabelDy:E?-15:0,autoFitLabel:E,handleSpacing:E?-15:0,trackFill:"#edeeef",trackLength:s,trackOpacity:.5,trackRadius:o/2,trackSize:o/2,type:l,values:this.sliderValues,formatter:function(R){if(d)return d(R);var K=n.getDatumByRatio(R).time;return typeof K=="number"?W2(K):ia(K,"YYYY-MM-DD HH:mm:ss")},transform:"translate(".concat(i,", ").concat(a,")"),zIndex:1},y);var C=l==="range"?5:0,I=u.map(function(R){var K=R.value;return K});return(0,j.pi)({handleIconOffset:C,handleIconShape:this.chartHandleIconShape,selectionFill:"#fff",selectionFillOpacity:.5,selectionType:"invert",sparklineSpacing:.1,sparklineColumnLineWidth:0,sparklineColor:"#d4e5fd",sparklineAreaOpacity:1,sparklineAreaLineWidth:0,sparklineData:I,sparklineType:c,sparklineScale:.8,trackLength:s,trackSize:o,type:l,values:this.sliderValues,transform:"translate(".concat(i,", ").concat(a,")"),zIndex:1},y)},t.prototype.renderChart=function(e){e===void 0&&(e=this.space.timelineBBox),this.timeline.update(this.getChartStyle(e))},t.prototype.updateSelection=function(){this.timeline.setValues(this.sliderValues,!0),this.handleSliderChange(this.sliderValues)},t.prototype.getAxisStyle=function(e){var n=this.data,i=this.attributes,a=i.interval,s=i.labelFormatter,o=en(this.attributes,"axis"),A=e.x,l=e.y,c=e.width,u=(0,j.ev)((0,j.ev)([],(0,j.CR)(n),!1),[{time:0}],!1).map(function(f,d,g){var v=f.time;return{label:"".concat(v),value:d/(g.length-1),time:v}}),h=(0,j.pi)({startPos:[A,l],endPos:[A+c,l],data:u,labelFilter:function(f,d){return d<u.length-1},labelFormatter:function(f){var d=f.time;return s?s(d):eH(d,a)}},o);return h},t.prototype.renderAxis=function(e){e===void 0&&(e=this.space.axisBBox);var n=this.attributes.type;n==="chart"&&this.axis.update(this.getAxisStyle(e))},t.prototype.renderController=function(e){e===void 0&&(e=this.space.controllerBBox);var n=this.attributes.type,i=this.states,a=i.state,s=i.speed,o=i.selectionType,A=i.chartType,l=en(this.attributes,"controller"),c=this,u=(0,j.pi)((0,j.pi)((0,j.pi)({},e),{iconSize:20,speed:s,state:a,selectionType:o,chartType:A,onChange:function(h,f){var d=f.value;switch(h){case"reset":c.internalReset();break;case"speed":c.handleSpeedChange(d);break;case"backward":c.internalBackward();break;case"playPause":d==="play"?c.internalPlay():c.internalPause();break;case"forward":c.internalForward();break;case"selectionType":c.handleSelectionTypeChange(d);break;case"chartType":c.handleChartTypeChange(d);break;default:break}}}),l);n==="time"&&(u.functions=[["reset","speed"],["backward","playPause","forward"],["selectionType"]]),this.controller.update(u)},t.prototype.dispatchOnChange=function(e){var n=this.data,i=this.attributes.onChange,a=this.states,s=a.values,o=a.selectionType,A=(0,j.CR)(s,2),l=A[0],c=A[1],u=c===1/0?n.at(-1).time:c,h=o==="range"?[l,u]:u,f=function(d,g){return Array.isArray(d)?Array.isArray(g)?d[0]===g[0]&&(d[1]===g[1]||d[1]===1/0||g[1]===1/0):!1:Array.isArray(g)?!1:d===g};(!e||!f(e,h))&&(i==null||i(o==="range"?[l,u]:u))},t.prototype.internalReset=function(e){var n,i,a=this.states.selectionType;this.internalPause(),this.setBySliderValues(a==="range"?[0,1]:[0,0]),this.renderController(),this.updateSelection(),e||((i=(n=this.attributes)===null||n===void 0?void 0:n.onReset)===null||i===void 0||i.call(n),this.dispatchOnChange())},t.prototype.reset=function(){this.internalReset()},t.prototype.moveSelection=function(e,n){var i=this.data,a=i.length,s=this.states,o=s.values,A=s.selectionType,l=s.playMode,c=(0,j.CR)(o,2),u=c[0],h=c[1],f=i.findIndex(function(C){var I=C.time;return I===u}),d=i.findIndex(function(C){var I=C.time;return I===h});d===-1&&(d=a);var g=e==="backward"?-1:1,v;A==="range"?l==="acc"?(v=[f,d+g],g===-1&&f===d&&(v=[f,a])):v=[f+g,d+g]:v=[f,d+g];var y=function(C){var I=(0,j.CR)(C.sort(function(V,J){return V-J}),2),R=I[0],K=I[1],W=function(V){return hr(V,0,a)};return K>a?A==="value"?[0,0]:l==="acc"?[W(R),W(R)]:[0,W(K-R)]:R<0?l==="acc"?[0,W(K)]:[W(R+a-K),a]:[W(R),W(K)]},E=y(v);return this.setByIndex(E),this.updateSelection(),E},t.prototype.internalBackward=function(e){var n,i,a=this.moveSelection("backward",e);return e||((i=(n=this.attributes)===null||n===void 0?void 0:n.onBackward)===null||i===void 0||i.call(n),this.dispatchOnChange()),a},t.prototype.backward=function(){this.internalBackward()},t.prototype.internalPlay=function(e){var n=this,i,a,s=this.data,o=this.attributes.loop,A=this.states.speed,l=A===void 0?1:A;this.playInterval=window.setInterval(function(){var c=n.internalForward();c[1]===s.length&&!o&&(n.internalPause(),n.renderController())},1e3/l),this.states.state="play",!e&&((a=(i=this.attributes)===null||i===void 0?void 0:i.onPlay)===null||a===void 0||a.call(i))},t.prototype.play=function(){this.internalPlay()},t.prototype.internalPause=function(e){var n,i;clearInterval(this.playInterval),this.states.state="pause",!e&&((i=(n=this.attributes)===null||n===void 0?void 0:n.onPause)===null||i===void 0||i.call(n))},t.prototype.pause=function(){this.internalPause()},t.prototype.internalForward=function(e){var n,i,a=this.moveSelection("forward",e);return e||((i=(n=this.attributes)===null||n===void 0?void 0:n.onForward)===null||i===void 0||i.call(n),this.dispatchOnChange()),a},t.prototype.forward=function(){this.internalForward()},t.prototype.handleSpeedChange=function(e){var n,i;this.states.speed=e;var a=this.states.state;a==="play"&&(this.internalPause(!0),this.internalPlay(!0)),(i=(n=this.attributes)===null||n===void 0?void 0:n.onSpeedChange)===null||i===void 0||i.call(n,e)},t.prototype.handleSelectionTypeChange=function(e){var n,i;this.states.selectionType=e,this.renderChart(),(i=(n=this.attributes)===null||n===void 0?void 0:n.onSelectionTypeChange)===null||i===void 0||i.call(n,e)},t.prototype.handleChartTypeChange=function(e){var n,i;this.states.chartType=e,this.renderChart(),(i=(n=this.attributes)===null||n===void 0?void 0:n.onChartTypeChange)===null||i===void 0||i.call(n,e)},t.prototype.render=function(){var e=this.space,n=e.axisBBox,i=e.controllerBBox,a=e.timelineBBox;this.renderController(i),this.renderAxis(n),this.renderChart(a),this.states.state==="play"&&this.internalPlay()},t.prototype.destroy=function(){r.prototype.destroy.call(this),this.internalPause(!0)},t.defaultOptions={style:{x:0,y:0,axisLabelFill:"#6e6e6e",axisLabelTextAlign:"left",axisLabelTextBaseline:"top",axisLabelTransform:"translate(5, -12)",axisLineLineWidth:1,axisLineStroke:"#cacdd1",axisTickLength:15,axisTickLineWidth:1,axisTickStroke:"#cacdd1",chartShowLabel:!1,chartType:"line",controllerAlign:"center",controllerHeight:40,data:[],interval:"day",loop:!1,playMode:"acc",selectionType:"range",type:"time"}},t}(Sr);function iH(r){return r instanceof Date}var aH=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})},sH=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};const oH=["timestamp","time","date","datetime"];class bv extends mi{get padding(){return La(this.options.padding)}constructor(t,e){super(t,Object.assign({},bv.defaultOptions,e)),this.backup(),this.upsertTimebar()}play(){var t;(t=this.timebar)===null||t===void 0||t.play()}pause(){var t;(t=this.timebar)===null||t===void 0||t.pause()}forward(){var t;(t=this.timebar)===null||t===void 0||t.forward()}backward(){var t;(t=this.timebar)===null||t===void 0||t.backward()}reset(){var t;(t=this.timebar)===null||t===void 0||t.reset()}update(t){super.update(t),this.backup(),this.upsertTimebar()}backup(){this.originalData=Z2(this.context.graph.getData())}upsertTimebar(){const{canvas:t}=this.context,e=this.options,{onChange:n,timebarType:i,data:a,x:s,y:o,width:A,height:l,mode:c}=e,u=sH(e,["onChange","timebarType","data","x","y","width","height","mode"]),h=t.getSize(),[f]=this.padding;this.upsertCanvas().ready.then(()=>{var d;const g=Object.assign(Object.assign({x:h[0]/2-A/2,y:f,onChange:v=>{const y=(Ni(v)?v:[v,v]).map(E=>iH(E)?E.getTime():E);this.options.mode==="modify"?this.filterElements(y):this.hiddenElements(y),n==null||n(y)}},u),{data:a.map(v=>we(v)?{time:v,value:0}:v),width:A,height:l,type:i});this.timebar?this.timebar.update(g):(this.timebar=new rH({style:g}),(d=this.canvas)===null||d===void 0||d.appendChild(this.timebar))})}upsertCanvas(){if(this.canvas)return this.canvas;const{className:t,height:e,position:n}=this.options,i=this.context.canvas,[a]=i.getSize(),[s,,o]=this.padding,[A,l]=lv({width:a,height:e+s+o,graphCanvas:i,className:"timebar",placement:n});return this.container=A,t&&A.classList.add(t),this.canvas=l,this.canvas}filterElements(t){return aH(this,void 0,void 0,function*(){var e;if(!this.originalData)return;const{elementTypes:n,getTime:i}=this.options,{graph:a,element:s}=this.context,o=Z2(this.originalData);n.forEach(l=>{const c=`${l}s`;o[c]=(this.originalData[c]||[]).filter(u=>{const h=i(u);return!!j2(h,t)})});const A=[...o.nodes,...o.combos].map(l=>Pt(l));o.edges=o.edges.filter(l=>{const c=l.source,u=l.target;return A.includes(c)&&A.includes(u)}),a.setData(o),yield(e=s.draw({animation:!1,silence:!0}))===null||e===void 0?void 0:e.finished})}hiddenElements(t){const{graph:e}=this.context,{elementTypes:n,getTime:i}=this.options,a=[],s=[];n.forEach(o=>{var A;const l=`${o}s`;(((A=this.originalData)===null||A===void 0?void 0:A[l])||[]).forEach(u=>{const h=Pt(u),f=i(u);j2(f,t)?s.push(h):a.push(h)})}),e.hideElement(a,!1),e.showElement(s,!1)}destroy(){var t,e,n;const{graph:i}=this.context;this.originalData&&i.setData(Object.assign({},this.originalData)),(t=this.timebar)===null||t===void 0||t.destroy(),(e=this.canvas)===null||e===void 0||e.destroy(),(n=this.container)===null||n===void 0||n.remove(),this.originalData=void 0,this.container=void 0,this.timebar=void 0,this.canvas=void 0,super.destroy()}}bv.defaultOptions={position:"bottom",enable:!0,timebarType:"time",className:"g6-timebar",width:450,height:60,zIndex:3,elementTypes:["node"],padding:10,mode:"modify",getTime:r=>AH(r,oH,void 0),loop:!1};const Z2=r=>{const{nodes:t=[],edges:e=[],combos:n=[]}=r;return{nodes:[...t],edges:[...e],combos:[...n]}},j2=(r,t)=>{if(we(t))return r===t;const[e,n]=t;return r>=e&&r<=n},AH=(r,t,e)=>{var n;for(let i=0;i<t.length;i++){const a=t[i],s=(n=r.data)===null||n===void 0?void 0:n[a];if(s)return s}return e};var lH=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};const Y2={fill:"#1D2129",wordWrap:!0,maxLines:1,textOverflow:"ellipsis",textBaseline:"top",textAlign:"start",x:0},cH=Object.assign(Object.assign({},Y2),{fillOpacity:.9,fontSize:16,fontWeight:"bold"}),uH=Object.assign(Object.assign({},Y2),{fillOpacity:.65,fontSize:12,fontWeight:"normal"}),hH={align:"left",spacing:8,size:44,padding:[16,24,0,24]},F1="title",X2="subtitle";class fH extends mi{get padding(){return La(this.options.padding)}constructor(t,e){const n=Object.assign({},hH,e);super(t,n),this.onRender=()=>{const i=this.updateCanvas();this.renderTitle(i)},this.bindEvents()}bindEvents(){const{graph:t}=this.context;t.on(ce.AFTER_RENDER,this.onRender),t.on(ce.AFTER_ANIMATE,this.onRender)}unbindEvents(){const{graph:t}=this.context;t.off(ce.AFTER_RENDER,this.onRender),t.off(ce.AFTER_ANIMATE,this.onRender)}destroy(){var t,e;this.unbindEvents(),(t=this.canvas)===null||t===void 0||t.destroy(),(e=this.container)===null||e===void 0||e.remove(),super.destroy()}updateCanvas(){const{size:t,className:e,align:n}=this.options,[i]=this.context.canvas.getSize(),[a=0,,s=0]=this.padding,o=t+a+s;if(this.canvas){const{width:A,height:l}=this.canvas.getConfig();(i!==A||o!==l)&&this.canvas.resize(i,o)}else{const A={left:"left-top",center:"top",right:"right-top"},[l,c]=lv({width:i,height:o,placement:A[n]||A.left,className:"title-canvas",graphCanvas:this.context.canvas});e&&l.classList.add(e),this.container=l,this.canvas=c}return this.canvas}renderTitle(t){const e=new dH({options:this.options,ctx:this.context});t.removeChildren(),e.getTitle().forEach(n=>{n&&t.appendChild(n)})}}class dH{get padding(){return La(this.options.padding)}constructor(t){const{options:e,ctx:n}=t;this.options=e,this.context=n}getTitle(){const t=this.options,e=F1,n=t[e],i=X2,a=t[i],{spacing:s=44,padding:o,align:A}=t,l=lH(t,[typeof e=="symbol"?e:e+"",typeof i=="symbol"?i:i+"","spacing","padding","align"]),c=n,u=a,h=Ir(l,F1),f=Ir(l,X2),[d]=this.context.graph.getSize(),[g=0,v=0,,y=0]=this.padding,E=d,C=E-y-v;let I=null,R=y,K="left";switch(A){case"left":R=y,K="left";break;case"center":R=E/2,K="center";break;case"right":R=E-v,K="right";break;default:R=y,K="left"}const W=new io({className:F1,style:Object.assign(Object.assign(Object.assign(Object.assign({},cH),{wordWrapWidth:C-5,x:R,y:g,textAlign:K}),h),{text:c})}),V=W.getBBox();return u&&(I=new io({className:"subTitle",style:Object.assign(Object.assign(Object.assign(Object.assign({},uH),{wordWrapWidth:C-5,x:R,y:V.height+s+g,textAlign:K}),f),{text:u})})),[W,I]}}function gH(r){const t={top:"unset",right:"unset",bottom:"unset",left:"unset"};return r.split("-").forEach(n=>{t[n]="8px"}),t.flexDirection=r.startsWith("top")||r.startsWith("bottom")?"row":"column",t}const vH=`
|
|
|
.g6-toolbar {
|
|
|
position: absolute;
|
|
|
z-index: 100;
|
|
|
display: flex;
|
|
|
flex-direction: row;
|
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
|
border-radius: 4px;
|
|
|
box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
|
|
|
opacity: 0.65;
|
|
|
}
|
|
|
.g6-toolbar .g6-toolbar-item {
|
|
|
display: inline-block;
|
|
|
width: 16px;
|
|
|
height: 16px;
|
|
|
padding: 4px;
|
|
|
cursor: pointer;
|
|
|
box-sizing: content-box;
|
|
|
}
|
|
|
|
|
|
.g6-toolbar .g6-toolbar-item:hover {
|
|
|
background-color: #f0f0f0;
|
|
|
}
|
|
|
|
|
|
.g6-toolbar .g6-toolbar-item svg {
|
|
|
display: inline-block;
|
|
|
width: 100%;
|
|
|
height: 100%;
|
|
|
pointer-events: none;
|
|
|
}
|
|
|
`,pH=`
|
|
|
<svg>
|
|
|
<symbol id="zoom-in" viewBox="64 64 896 896">
|
|
|
<path d="M637 443H519V309c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v134H325c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h118v134c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V519h118c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zm284 424L775 721c122.1-148.9 113.6-369.5-26-509-148-148.1-388.4-148.1-537 0-148.1 148.6-148.1 389 0 537 139.5 139.6 360.1 148.1 509 26l146 146c3.2 2.8 8.3 2.8 11 0l43-43c2.8-2.7 2.8-7.8 0-11zM696 696c-118.8 118.7-311.2 118.7-430 0-118.7-118.8-118.7-311.2 0-430 118.8-118.7 311.2-118.7 430 0 118.7 118.8 118.7 311.2 0 430z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="zoom-out" viewBox="64 64 896 896">
|
|
|
<path d="M637 443H325c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h312c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zm284 424L775 721c122.1-148.9 113.6-369.5-26-509-148-148.1-388.4-148.1-537 0-148.1 148.6-148.1 389 0 537 139.5 139.6 360.1 148.1 509 26l146 146c3.2 2.8 8.3 2.8 11 0l43-43c2.8-2.7 2.8-7.8 0-11zM696 696c-118.8 118.7-311.2 118.7-430 0-118.7-118.8-118.7-311.2 0-430 118.8-118.7 311.2-118.7 430 0 118.7 118.8 118.7 311.2 0 430z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="edit" viewBox="64 64 896 896">
|
|
|
<path d="M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="delete" viewBox="64 64 896 896">
|
|
|
<path d="M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="redo" viewBox="64 64 896 896">
|
|
|
<path d="M758.2 839.1C851.8 765.9 912 651.9 912 523.9 912 303 733.5 124.3 512.6 124 291.4 123.7 112 302.8 112 523.9c0 125.2 57.5 236.9 147.6 310.2 3.5 2.8 8.6 2.2 11.4-1.3l39.4-50.5c2.7-3.4 2.1-8.3-1.2-11.1-8.1-6.6-15.9-13.7-23.4-21.2a318.64 318.64 0 01-68.6-101.7C200.4 609 192 567.1 192 523.9s8.4-85.1 25.1-124.5c16.1-38.1 39.2-72.3 68.6-101.7 29.4-29.4 63.6-52.5 101.7-68.6C426.9 212.4 468.8 204 512 204s85.1 8.4 124.5 25.1c38.1 16.1 72.3 39.2 101.7 68.6 29.4 29.4 52.5 63.6 68.6 101.7 16.7 39.4 25.1 81.3 25.1 124.5s-8.4 85.1-25.1 124.5a318.64 318.64 0 01-68.6 101.7c-9.3 9.3-19.1 18-29.3 26L668.2 724a8 8 0 00-14.1 3l-39.6 162.2c-1.2 5 2.6 9.9 7.7 9.9l167 .8c6.7 0 10.5-7.7 6.3-12.9l-37.3-47.9z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="undo" viewBox="64 64 896 896">
|
|
|
<path d="M511.4 124C290.5 124.3 112 303 112 523.9c0 128 60.2 242 153.8 315.2l-37.5 48c-4.1 5.3-.3 13 6.3 12.9l167-.8c5.2 0 9-4.9 7.7-9.9L369.8 727a8 8 0 00-14.1-3L315 776.1c-10.2-8-20-16.7-29.3-26a318.64 318.64 0 01-68.6-101.7C200.4 609 192 567.1 192 523.9s8.4-85.1 25.1-124.5c16.1-38.1 39.2-72.3 68.6-101.7 29.4-29.4 63.6-52.5 101.7-68.6C426.9 212.4 468.8 204 512 204s85.1 8.4 124.5 25.1c38.1 16.1 72.3 39.2 101.7 68.6 29.4 29.4 52.5 63.6 68.6 101.7 16.7 39.4 25.1 81.3 25.1 124.5s-8.4 85.1-25.1 124.5a318.64 318.64 0 01-68.6 101.7c-7.5 7.5-15.3 14.5-23.4 21.2a7.93 7.93 0 00-1.2 11.1l39.4 50.5c2.8 3.5 7.9 4.1 11.4 1.3C854.5 760.8 912 649.1 912 523.9c0-221.1-179.4-400.2-400.6-399.9z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="export" viewBox="64 64 896 896">
|
|
|
<path d="M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="auto-fit" viewBox="64 64 896 896">
|
|
|
<path d="M952 474H829.8C812.5 327.6 696.4 211.5 550 194.2V72c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v122.2C327.6 211.5 211.5 327.6 194.2 474H72c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h122.2C211.5 696.4 327.6 812.5 474 829.8V952c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V829.8C696.4 812.5 812.5 696.4 829.8 550H952c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zM512 756c-134.8 0-244-109.2-244-244s109.2-244 244-244 244 109.2 244 244-109.2 244-244 244z"></path>
|
|
|
<path d="M512 392c-32.1 0-62.1 12.4-84.8 35.2-22.7 22.7-35.2 52.7-35.2 84.8s12.5 62.1 35.2 84.8C449.9 619.4 480 632 512 632s62.1-12.5 84.8-35.2C619.4 574.1 632 544 632 512s-12.5-62.1-35.2-84.8A118.57 118.57 0 00512 392z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="reset" viewBox="64 64 896 896">
|
|
|
<path d="M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 92 521.9 92 290 92 102.3 279.5 102 511.5 101.7 743.7 289.8 932 521.9 932c181.3 0 335.8-115 394.6-276.1 1.5-4.2-.7-8.9-4.9-10.3l-56.7-19.5a8 8 0 00-10.1 4.8c-1.8 5-3.8 10-5.9 14.9-17.3 41-42.1 77.8-73.7 109.4A344.77 344.77 0 01655.9 829c-42.3 17.9-87.4 27-133.8 27-46.5 0-91.5-9.1-133.8-27A341.5 341.5 0 01279 755.2a342.16 342.16 0 01-73.7-109.4c-17.9-42.4-27-87.4-27-133.9s9.1-91.5 27-133.9c17.3-41 42.1-77.8 73.7-109.4 31.6-31.6 68.4-56.4 109.3-73.8 42.3-17.9 87.4-27 133.8-27 46.5 0 91.5 9.1 133.8 27a341.5 341.5 0 01109.3 73.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 003 14.1l175.6 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c-.1-6.6-7.8-10.3-13-6.2z"></path>
|
|
|
</symbol>
|
|
|
<symbol id="exit-fullscreen" viewBox="0 0 1024 1024">
|
|
|
<path d="M418.13333333 361.43786666c0 0.2048-0.13653333 0.4096-0.13653334 0.68266667C417.99679999 362.32533333 418.13333333 362.53013333 418.13333333 362.73493333 418.13333333 371.54133333 414.44693333 379.392 408.78079999 385.39946666 408.43946666 385.7408 408.30293333 386.21866666 408.02986666 386.49173333c-1.09226667 1.09226667-2.59413333 1.77493333-3.82293333 2.73066667C398.40426666 393.65973333 391.64586666 396.8 383.93173333 396.8 383.72693333 396.8 383.59039999 396.73173333 383.38559999 396.73173333S382.97599999 396.8 382.77119999 396.8L112.29866666 396.8C92.50133333 396.8 76.79999999 381.50826666 76.79999999 362.66666666 76.66346666 343.89333333 92.63786666 328.53333333 112.16213333 328.53333333l189.44 0L87.44959999 114.51733333C73.59146666 100.59093333 73.25013333 78.5408 86.63039999 65.29706666c13.17546667-13.44853333 35.36213333-12.97066667 49.152 0.88746667l214.08426667 214.08426667L349.86666666 90.89706666C349.79839999 71.23626666 365.22666666 55.46666666 383.99999999 55.46666666 402.77333333 55.33013333 418.13333333 71.30453333 418.13333333 90.8288L418.13333333 361.43786666zM928.90453333 328.53333333l-189.44 0 214.15253333-214.08426667c13.85813333-13.9264 14.19946667-35.90826667 0.88746667-49.22026666-13.17546667-13.44853333-35.36213333-12.97066667-49.152 0.88746666l-214.08426667 214.08426667L691.26826666 90.89706666C691.26826666 71.23626666 675.83999999 55.46666666 657.06666666 55.46666666 638.29333333 55.33013333 622.93333333 71.30453333 622.93333333 90.8288l0 270.60906666c0 0.2048 0.13653333 0.4096 0.13653333 0.68266667C623.06986666 362.32533333 622.93333333 362.53013333 622.93333333 362.73493333 622.93333333 371.54133333 626.61973333 379.392 632.28586666 385.39946666c0.34133333 0.34133333 0.47786667 0.8192 0.8192 1.09226667 1.09226667 1.09226667 2.59413333 1.77493333 3.8912 2.73066667C642.66239999 393.65973333 649.42079999 396.8 657.13493333 396.8c0.2048 0 0.34133333-0.06826667 0.54613333-0.06826667S658.09066666 396.8 658.29546666 396.8l270.5408 0C948.56533333 396.8 964.26666666 381.50826666 964.26666666 362.66666666 964.40319999 343.89333333 948.42879999 328.53333333 928.90453333 328.53333333zM418.13333333 635.73333333c0-8.8064-3.6864-16.5888-9.35253334-22.66453333C408.43946666 612.72746666 408.30293333 612.2496 408.02986666 611.90826666 406.86933333 610.88426666 405.43573333 610.2016 404.20693333 609.24586666 398.47253333 604.80853333 391.64586666 601.6 383.93173333 601.6 383.72693333 601.6 383.59039999 601.73653333 383.38559999 601.73653333S382.97599999 601.6 382.77119999 601.6L112.29866666 601.6C92.50133333 601.6 76.79999999 616.96 76.79999999 635.73333333 76.66346666 654.50666666 92.63786666 669.86666666 112.16213333 669.86666666l189.44 0-214.15253334 214.15253334c-13.85813333 13.85813333-14.19946667 35.84-0.88746666 49.22026666 13.17546667 13.44853333 35.36213333 12.9024 49.152-0.95573333l214.08426666-214.08426667 0 189.37173334c0 19.59253333 15.42826667 35.49866667 34.2016 35.36213333C402.77333333 943.2064 418.13333333 927.232 418.13333333 907.5712L418.13333333 637.09866666c0-0.27306667-0.13653333-0.47786667-0.13653334-0.68266666C417.99679999 636.14293333 418.13333333 635.93813333 418.13333333 635.73333333zM739.46453333 669.86666666l189.44 0c19.456 0 35.49866667-15.36 35.36213333-34.13333333C964.26666666 616.96 948.56533333 601.6 928.76799999 601.6L658.29546666 601.6C658.09066666 601.6 657.88586666 601.73653333 657.68106666 601.73653333S657.33973333 601.6 657.13493333 601.6C649.42079999 601.6 642.59413333 604.80853333 636.85973333 609.24586666 635.63093333 610.2016 634.19733333 610.88426666 633.03679999 611.90826666 632.76373333 612.2496 632.62719999 612.72746666 632.28586666 613.0688 626.61973333 619.14453333 622.93333333 626.92693333 622.93333333 635.73333333c0 0.2048 0.13653333 0.4096 0.13653333 0.68266667C623.06986666 636.6208 622.93333333 636.8256 622.93333333 637.09866666l0 270.5408C622.93333333 927.232 638.29333333 943.2064 657.06666666 942.93333333c18.77333333 0.13653333 34.2016-15.70133333 34.2016-35.36213333l0-189.37173334 214.08426667 214.08426667c13.78986667 13.85813333 35.90826667 14.40426667 49.152 0.95573333 13.312-13.312 12.97066667-35.36213333-0.88746667-49.22026666L739.46453333 669.86666666z" ></path></symbol>
|
|
|
<symbol id="request-fullscreen" viewBox="0 0 1024 1024">
|
|
|
<path d="M69.818182 87.598545v273.128728a34.909091 34.909091 0 0 0 69.818182 0V163.653818l221.928727 222.021818a33.512727 33.512727 0 0 0 47.383273-47.383272L186.926545 116.363636h197.073455a34.909091 34.909091 0 0 0 0-69.818181H110.871273C85.364364 46.545455 69.818182 59.671273 69.818182 87.598545zM938.542545 46.545455H665.413818a34.909091 34.909091 0 0 0 0 69.818181h197.073455L640.465455 338.292364a33.512727 33.512727 0 0 0 47.383272 47.383272l221.928728-222.021818v197.073455a34.909091 34.909091 0 0 0 69.818181 0V87.598545c0-27.927273-15.453091-41.053091-40.96-41.05309z m-827.671272 907.636363h273.128727a34.909091 34.909091 0 0 0 0-69.818182H186.926545l222.021819-221.928727a33.512727 33.512727 0 0 0-47.383273-47.383273L139.636364 837.073455V640a34.909091 34.909091 0 0 0-69.818182 0v273.128727c0 27.927273 15.546182 41.053091 41.053091 41.053091z m868.724363-41.053091V640a34.909091 34.909091 0 0 0-69.818181 0v197.073455L687.941818 615.051636a33.512727 33.512727 0 0 0-47.383273 47.383273L862.487273 884.363636H665.413818a34.909091 34.909091 0 0 0 0 69.818182h273.128727c25.6 0 41.053091-13.125818 41.053091-41.053091z" ></path></symbol>
|
|
|
</svg>
|
|
|
`;var J2=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class xv extends mi{constructor(t,e){super(t,Object.assign({},xv.defaultOptions,e)),this.$element=Hc("toolbar",!1),this.onToolbarItemClick=i=>{const{onClick:a}=this.options;if(i.target instanceof Element&&i.target.className.includes("g6-toolbar-item")){const s=i.target.getAttribute("value");a==null||a(s,i.target)}};const n=this.context.canvas.getContainer();this.$element.style.display="flex",n.appendChild(this.$element),Uy("g6-toolbar-css","style",{},vH,document.head),Uy("g6-toolbar-svgicon","div",{display:"none"},pH),this.$element.addEventListener("click",this.onToolbarItemClick),this.update(e)}update(t){const e=Object.create(null,{update:{get:()=>super.update}});return J2(this,void 0,void 0,function*(){e.update.call(this,t);const{className:n,position:i,style:a}=this.options;this.$element.className=`g6-toolbar ${n||""}`,Object.assign(this.$element.style,a,gH(i)),this.$element.innerHTML=yield this.getDOMContent()})}destroy(){this.$element.removeEventListener("click",this.onToolbarItemClick),this.$element.remove(),super.destroy()}getDOMContent(){return J2(this,void 0,void 0,function*(){return(yield this.options.getItems()).map(e=>{var n;return`
|
|
|
<div class="g6-toolbar-item" value="${e.value}" title="${(n=e.title)!==null&&n!==void 0?n:""}">
|
|
|
<svg aria-hidden="true" focusable="false">
|
|
|
<use xlink:href="#${e.id}"></use>
|
|
|
</svg>
|
|
|
</div>`}).join("")})}}xv.defaultOptions={position:"top-left"};function O1(r){var t=document.createElement("div");t.innerHTML=r;var e=t.childNodes[0];return e&&t.contains(e)&&t.removeChild(e),e}function mH(r,t){return!r||!t?r:r.replace(/\\?\{([^{}]+)\}/g,function(e,n){return e.charAt(0)==="\\"?e.slice(1):t[n]===void 0?"":t[n]})}var yH=mH,q2=function(r,t){if(t==null){r.innerHTML="";return}r.replaceChildren?Array.isArray(t)?r.replaceChildren.apply(r,(0,j.ev)([],(0,j.CR)(t),!1)):r.replaceChildren(t):(r.innerHTML="",Array.isArray(t)?t.forEach(function(e){return r.appendChild(e)}):r.appendChild(t))};function I1(r){return r===void 0&&(r=""),{CONTAINER:"".concat(r,"tooltip"),TITLE:"".concat(r,"tooltip-title"),LIST:"".concat(r,"tooltip-list"),LIST_ITEM:"".concat(r,"tooltip-list-item"),NAME:"".concat(r,"tooltip-list-item-name"),MARKER:"".concat(r,"tooltip-list-item-marker"),NAME_LABEL:"".concat(r,"tooltip-list-item-name-label"),VALUE:"".concat(r,"tooltip-list-item-value"),CROSSHAIR_X:"".concat(r,"tooltip-crosshair-x"),CROSSHAIR_Y:"".concat(r,"tooltip-crosshair-y")}}var $2={overflow:"hidden","white-space":"nowrap","text-overflow":"ellipsis"};function wH(r){var t;r===void 0&&(r="");var e=I1(r);return t={},t[".".concat(e.CONTAINER)]={position:"absolute",visibility:"visible","z-index":8,transition:"visibility 0.2s cubic-bezier(0.23, 1, 0.32, 1), left 0.4s cubic-bezier(0.23, 1, 0.32, 1), top 0.4s cubic-bezier(0.23, 1, 0.32, 1)","background-color":"rgba(255, 255, 255, 0.96)","box-shadow":"0 6px 12px 0 rgba(0, 0, 0, 0.12)","border-radius":"4px",color:"rgba(0, 0, 0, 0.65)","font-size":"12px","line-height":"20px",padding:"12px","min-width":"120px","max-width":"360px","font-family":"Roboto-Regular"},t[".".concat(e.TITLE)]={color:"rgba(0, 0, 0, 0.45)"},t[".".concat(e.LIST)]={margin:"0px","list-style-type":"none",padding:"0px"},t[".".concat(e.LIST_ITEM)]={"list-style-type":"none",display:"flex","line-height":"2em","align-items":"center","justify-content":"space-between","white-space":"nowrap"},t[".".concat(e.MARKER)]={width:"8px",height:"8px","border-radius":"50%",display:"inline-block","margin-right":"4px"},t[".".concat(e.NAME)]={display:"flex","align-items":"center","max-width":"216px"},t[".".concat(e.NAME_LABEL)]=(0,j.pi)({flex:1},$2),t[".".concat(e.VALUE)]=(0,j.pi)({display:"inline-block",float:"right",flex:1,"text-align":"right","min-width":"28px","margin-left":"30px",color:"rgba(0, 0, 0, 0.85)"},$2),t[".".concat(e.CROSSHAIR_X)]={position:"absolute",width:"1px","background-color":"rgba(0, 0, 0, 0.25)"},t[".".concat(e.CROSSHAIR_Y)]={position:"absolute",height:"1px","background-color":"rgba(0, 0, 0, 0.25)"},t}var EH=function(r){(0,j.ZT)(t,r);function t(e){var n=this,i,a,s=(a=(i=e.style)===null||i===void 0?void 0:i.template)===null||a===void 0?void 0:a.prefixCls,o=I1(s);return n=r.call(this,e,{data:[],x:0,y:0,visibility:"visible",title:"",position:"bottom-right",offset:[5,5],enterable:!1,container:{x:0,y:0},bounding:null,template:{prefixCls:"",container:'<div class="'.concat(o.CONTAINER,'"></div>'),title:'<div class="'.concat(o.TITLE,'"></div>'),item:'<li class="'.concat(o.LIST_ITEM,`" data-index={index}>
|
|
|
<span class="`).concat(o.NAME,`">
|
|
|
<span class="`).concat(o.MARKER,`" style="background:{color}"></span>
|
|
|
<span class="`).concat(o.NAME_LABEL,`" title="{name}">{name}</span>
|
|
|
</span>
|
|
|
<span class="`).concat(o.VALUE,`" title="{value}">{value}</span>
|
|
|
</li>`)},style:wH(s)})||this,n.timestamp=-1,n.prevCustomContentKey=n.attributes.contentKey,n.initShape(),n.render(n.attributes,n),n}return Object.defineProperty(t.prototype,"HTMLTooltipElement",{get:function(){return this.element},enumerable:!1,configurable:!0}),t.prototype.getContainer=function(){return this.element},Object.defineProperty(t.prototype,"elementSize",{get:function(){var e=this.element.offsetWidth,n=this.element.offsetHeight;return{width:e,height:n}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"HTMLTooltipItemsElements",{get:function(){var e=this.attributes,n=e.data,i=e.template;return n.map(function(a,s){var o=a.name,A=o===void 0?"":o,l=a.color,c=l===void 0?"black":l,u=a.index,h=(0,j._T)(a,["name","color","index"]),f=(0,j.pi)({name:A,color:c,index:u!=null?u:s},h);return O1(yH(i.item,f))})},enumerable:!1,configurable:!0}),t.prototype.render=function(e,n){this.renderHTMLTooltipElement(),this.updatePosition()},t.prototype.destroy=function(){var e;(e=this.element)===null||e===void 0||e.remove(),r.prototype.destroy.call(this)},t.prototype.show=function(e,n){var i=this;if(e!==void 0&&n!==void 0){var a=this.element.style.visibility==="hidden",s=function(){i.attributes.x=e!=null?e:i.attributes.x,i.attributes.y=n!=null?n:i.attributes.y,i.updatePosition()};a?this.closeTransition(s):s()}this.element.style.visibility="visible"},t.prototype.hide=function(e,n){e===void 0&&(e=0),n===void 0&&(n=0);var i=this.attributes.enterable;i&&this.isCursorEntered(e,n)||(this.element.style.visibility="hidden")},t.prototype.initShape=function(){var e=this.attributes.template;this.element=O1(e.container),this.id&&this.element.setAttribute("id",this.id)},t.prototype.renderCustomContent=function(){if(!(this.prevCustomContentKey!==void 0&&this.prevCustomContentKey===this.attributes.contentKey)){this.prevCustomContentKey=this.attributes.contentKey;var e=this.attributes.content;e&&(typeof e=="string"?this.element.innerHTML=e:q2(this.element,e))}},t.prototype.renderHTMLTooltipElement=function(){var e,n,i=this.attributes,a=i.template,s=i.title,o=i.enterable,A=i.style,l=i.content,c=I1(a.prefixCls),u=this.element;if(this.element.style.pointerEvents=o?"auto":"none",l)this.renderCustomContent();else{s?(u.innerHTML=a.title,u.getElementsByClassName(c.TITLE)[0].innerHTML=s):(n=(e=u.getElementsByClassName(c.TITLE))===null||e===void 0?void 0:e[0])===null||n===void 0||n.remove();var h=this.HTMLTooltipItemsElements,f=document.createElement("ul");f.className=c.LIST,q2(f,h);var d=this.element.querySelector(".".concat(c.LIST));d?d.replaceWith(f):u.appendChild(f)}ID(u,A)},t.prototype.getRelativeOffsetFromCursor=function(e){var n=this.attributes,i=n.position,a=n.offset,s=e||i,o=s.split("-"),A={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]},l=this.elementSize,c=l.width,u=l.height,h=[-c/2,-u/2];return o.forEach(function(f){var d=(0,j.CR)(h,2),g=d[0],v=d[1],y=(0,j.CR)(A[f],2),E=y[0],C=y[1];h=[g+(c/2+a[0])*E,v+(u/2+a[1])*C]}),h},t.prototype.setOffsetPosition=function(e){var n=(0,j.CR)(e,2),i=n[0],a=n[1],s=this.attributes,o=s.x,A=o===void 0?0:o,l=s.y,c=l===void 0?0:l,u=s.container,h=u.x,f=u.y;this.element.style.left="".concat(+A+h+i,"px"),this.element.style.top="".concat(+c+f+a,"px")},t.prototype.updatePosition=function(){var e=this.attributes.showDelay,n=e===void 0?60:e,i=Date.now();this.timestamp>0&&i-this.timestamp<n||(this.timestamp=i,this.setOffsetPosition(this.autoPosition(this.getRelativeOffsetFromCursor())))},t.prototype.autoPosition=function(e){var n=(0,j.CR)(e,2),i=n[0],a=n[1],s=this.attributes,o=s.x,A=s.y,l=s.bounding,c=s.position;if(!l)return[i,a];var u=this.element,h=u.offsetWidth,f=u.offsetHeight,d=(0,j.CR)([+o+i,+A+a],2),g=d[0],v=d[1],y={left:"right",right:"left",top:"bottom",bottom:"top"},E=l.x,C=l.y,I=l.width,R=l.height,K={left:g<E,right:g+h>E+I,top:v<C,bottom:v+f>C+R},W=[];c.split("-").forEach(function(J){K[J]?W.push(y[J]):W.push(J)});var V=W.join("-");return this.getRelativeOffsetFromCursor(V)},t.prototype.isCursorEntered=function(e,n){if(this.element){var i=this.element.getBoundingClientRect(),a=i.x,s=i.y,o=i.width,A=i.height;return new _i(a,s,o,A).isPointIn(e,n)}return!1},t.prototype.closeTransition=function(e){var n=this,i=this.element.style.transition;this.element.style.transition="none",e(),setTimeout(function(){n.element.style.transition=i},10)},t.tag="tooltip",t}(Sr),tS=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Cv extends mi{constructor(t,e){super(t,Object.assign({},Cv.defaultOptions,e)),this.currentTarget=null,this.tooltipElement=null,this.container=null,this.isEnable=(n,i)=>{const{enable:a}=this.options;return typeof a=="function"?a(n,i):a},this.onClick=n=>{const{target:{id:i}}=n;this.currentTarget===i?this.hide(n):this.show(n)},this.onPointerMove=n=>{const{target:i}=n;!this.currentTarget||i.id===this.currentTarget||this.show(n)},this.onPointerLeave=n=>{this.hide(n)},this.onCanvasMove=n=>{this.hide(n)},this.onPointerOver=n=>{this.show(n)},this.showById=n=>tS(this,void 0,void 0,function*(){const i={target:{id:n}};yield this.show(i)}),this.getElementData=(n,i)=>{const{model:a}=this.context;switch(i){case"node":return a.getNodeData([n]);case"edge":return a.getEdgeData([n]);case"combo":return a.getComboData([n]);default:return[]}},this.show=n=>tS(this,void 0,void 0,function*(){var i,a;const{client:s,target:{id:o}}=n;if(Bh(n.target))return;const A=this.context.graph.getElementType(o),{getContent:l,title:c}=this.options,u=this.getElementData(o,A);if(!this.tooltipElement||!this.isEnable(n,u))return;let h={};if(l){if(h.content=yield l(n,u),!h.content)return}else{const g=this.context.graph.getElementRenderStyle(o),v=A==="node"?g.fill:g.stroke;h={title:c||A,data:u.map(y=>({name:"ID",value:y.id||`${y.source} -> ${y.target}`,color:v}))}}this.currentTarget=o;let f,d;if(s)f=s.x,d=s.y;else{const g=Mi(u,"0.style",{x:0,y:0});f=g.x,d=g.y}(a=(i=this.options).onOpenChange)===null||a===void 0||a.call(i,!0),this.tooltipElement.update(Object.assign(Object.assign(Object.assign({},this.tooltipStyleProps),{x:f,y:d,style:{".tooltip":{visibility:"visible"}}}),h))}),this.hide=n=>{var i,a,s,o,A;if(!n){(a=(i=this.options).onOpenChange)===null||a===void 0||a.call(i,!1),(s=this.tooltipElement)===null||s===void 0||s.hide(),this.currentTarget=null;return}if(!this.tooltipElement||!this.currentTarget)return;const{client:{x:l,y:c}}=n;(A=(o=this.options).onOpenChange)===null||A===void 0||A.call(o,!1),this.tooltipElement.hide(l,c),this.currentTarget=null},this.initTooltip=()=>{var n;const i=new EH({className:"tooltip",style:this.tooltipStyleProps});return(n=this.container)===null||n===void 0||n.appendChild(i.HTMLTooltipElement),i},this.render(),this.bindEvents()}getEvents(){return this.options.trigger==="click"?{"node:click":this.onClick,"edge:click":this.onClick,"combo:click":this.onClick,"canvas:click":this.onPointerLeave,contextmenu:this.onPointerLeave,drag:this.onPointerLeave}:{"node:pointerover":this.onPointerOver,"node:pointermove":this.onPointerMove,"canvas:pointermove":this.onCanvasMove,"edge:pointerover":this.onPointerOver,"edge:pointermove":this.onPointerMove,"combo:pointerover":this.onPointerOver,"combo:pointermove":this.onPointerMove,contextmenu:this.onPointerLeave,"node:drag":this.onPointerLeave}}update(t){var e;this.unbindEvents(),super.update(t),this.tooltipElement&&((e=this.container)===null||e===void 0||e.removeChild(this.tooltipElement.HTMLTooltipElement)),this.tooltipElement=this.initTooltip(),this.bindEvents()}render(){const{canvas:t}=this.context,e=t.getContainer();e&&(this.container=e,this.tooltipElement=this.initTooltip())}unbindEvents(){const{graph:t}=this.context,e=this.getEvents();Object.keys(e).forEach(n=>{t.off(n,e[n])})}bindEvents(){const{graph:t}=this.context,e=this.getEvents();Object.keys(e).forEach(n=>{t.on(n,e[n])})}get tooltipStyleProps(){const{canvas:t}=this.context,{center:e}=t.getBounds(),n=t.getContainer(),{top:i,left:a}=n.getBoundingClientRect(),{style:s,position:o,enterable:A,container:l={x:-a,y:-i},title:c,offset:u}=this.options,[h,f]=e,[d,g]=t.getSize();return{x:h,y:f,container:l,title:c,bounding:{x:0,y:0,width:d,height:g},position:o,enterable:A,offset:u,style:s}}destroy(){var t;this.unbindEvents(),this.tooltipElement&&((t=this.container)===null||t===void 0||t.removeChild(this.tooltipElement.HTMLTooltipElement)),super.destroy()}}Cv.defaultOptions={trigger:"hover",position:"top-right",enterable:!1,enable:!0,offset:[10,10],style:{".tooltip":{visibility:"hidden"}}};var eS=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};let Zc;function nS(r,t){return Zc||(Zc=document.createElement("canvas")),Zc.width=r,Zc.height=t,Zc.getContext("2d").clearRect(0,0,r,t),Zc}function BH(r,t,e,n){return eS(this,void 0,void 0,function*(){const i=nS(r,t),a=i.getContext("2d"),{rotate:s,opacity:o,textFill:A,textFontSize:l,textFontFamily:c,textFontVariant:u,textFontWeight:h,textAlign:f,textBaseline:d}=n;return a.textAlign=f,a.textBaseline=d,a.translate(r/2,t/2),a.font=`${l}px ${c} ${u} ${h}`,s&&a.rotate(s),o&&(a.globalAlpha=o),A&&(a.fillStyle=A,a.fillText(`${e}`,0,0)),i.toDataURL()})}function bH(r,t,e,n){return eS(this,void 0,void 0,function*(){const i=nS(r,t),a=i.getContext("2d"),{rotate:s,opacity:o}=n;s&&a.rotate(s),o&&(a.globalAlpha=o);const A=new Image;return A.crossOrigin="anonymous",A.src=e,new Promise(l=>{A.onload=function(){const c=r>A.width?(r-A.width)/2:0,u=t>A.height?(t-A.height)/2:0;a.drawImage(A,0,0,A.width,A.height,c,u,r-c*2,t-u*2),l(i.toDataURL())}})})}var xH=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})},CH=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class Sv extends mi{constructor(t,e){super(t,Object.assign({},Sv.defaultOptions,e)),this.$element=Hc("watermark"),this.context.canvas.getContainer().appendChild(this.$element),this.update(e)}update(t){const e=Object.create(null,{update:{get:()=>super.update}});return xH(this,void 0,void 0,function*(){e.update.call(this,t);const n=this.options,{width:i,height:a,text:s,imageURL:o}=n,A=CH(n,["width","height","text","imageURL"]);Object.keys(A).forEach(c=>{c.startsWith("background")&&(this.$element.style[c]=t[c])});const l=o?yield bH(i,a,o,A):yield BH(i,a,s,A);this.$element.style.backgroundImage=`url(${l})`})}destroy(){super.destroy(),this.$element.remove()}}Sv.defaultOptions={width:200,height:100,opacity:.2,rotate:Math.PI/12,text:"",textFill:"#000",textFontSize:16,textAlign:"center",textBaseline:"middle",backgroundRepeat:"repeat"};const SH=["#7E92B5","#F4664A","#FFBE3A"],MH={type:"group",color:["#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]},TH={type:"group",color:["#99ADD1","#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]};function rS(r){const{bgColor:t,textColor:e,nodeColor:n,nodeColorDisabled:i,nodeStroke:a,nodeHaloStrokeOpacityActive:s=.15,nodeHaloStrokeOpacitySelected:o=.25,nodeOpacityDisabled:A=.06,nodeIconOpacityInactive:l=.85,nodeOpacityInactive:c=.25,nodeBadgePalette:u=SH,nodePaletteOptions:h=MH,edgeColor:f,edgeColorDisabled:d,edgePaletteOptions:g=TH,comboColor:v,comboColorDisabled:y,comboStroke:E,comboStrokeDisabled:C,edgeColorInactive:I}=r;return{background:t,node:{palette:h,style:{donutOpacity:1,badgeBackgroundOpacity:1,badgeFill:"#fff",badgeFontSize:8,badgePadding:[0,4],badgePalette:u,fill:n,fillOpacity:1,halo:!1,iconFill:"#fff",iconOpacity:1,labelBackground:!1,labelBackgroundFill:t,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelFill:e,labelFillOpacity:.85,labelLineHeight:16,labelPadding:[0,2],labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelOffsetY:2,lineWidth:0,portFill:n,portLineWidth:1,portStroke:a,portStrokeOpacity:.65,size:32,stroke:a,strokeOpacity:1,zIndex:2},state:{selected:{halo:!0,haloLineWidth:24,haloStrokeOpacity:o,labelFontSize:12,labelFontWeight:"bold",lineWidth:4,stroke:a},active:{halo:!0,haloLineWidth:12,haloStrokeOpacity:s},highlight:{labelFontWeight:"bold",lineWidth:4,stroke:a,strokeOpacity:.85},inactive:{badgeBackgroundOpacity:c,donutOpacity:c,fillOpacity:c,iconOpacity:l,labelFill:e,labelFillOpacity:c,strokeOpacity:c},disabled:{badgeBackgroundOpacity:.25,donutOpacity:A,fill:i,fillOpacity:A,iconFill:i,iconOpacity:.25,labelFill:e,labelFillOpacity:.25,strokeOpacity:A}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"node-expand",collapse:"node-collapse",update:[{fields:["x","y","fill","stroke"]}],translate:[{fields:["x","y"]}]}},edge:{palette:g,style:{badgeBackgroundFill:f,badgeFill:"#fff",badgeFontSize:8,badgeOffsetX:10,badgeBackgroundOpacity:1,fillOpacity:1,halo:!1,haloLineWidth:12,haloStrokeOpacity:1,increasedLineWidthForHitTesting:2,labelBackground:!1,labelBackgroundFill:t,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[4,4,4,4],labelFill:e,labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelPlacement:"center",labelTextBaseline:"middle",lineWidth:1,stroke:f,strokeOpacity:1,zIndex:1},state:{selected:{halo:!0,haloStrokeOpacity:.25,labelFontSize:14,labelFontWeight:"bold",lineWidth:3},active:{halo:!0,haloStrokeOpacity:.15},highlight:{labelFontWeight:"bold",lineWidth:3},inactive:{stroke:I,fillOpacity:.08,labelOpacity:.25,strokeOpacity:.08,badgeBackgroundOpacity:.25},disabled:{stroke:d,fillOpacity:.45,strokeOpacity:.45,labelOpacity:.25,badgeBackgroundOpacity:.45}},animation:{enter:"fade",exit:"fade",expand:"path-in",collapse:"path-out",show:"fade",hide:"fade",update:[{fields:["sourceNode","targetNode"]},{fields:["stroke"],shape:"key"}],translate:[{fields:["sourceNode","targetNode"]}]}},combo:{style:{collapsedMarkerFill:t,collapsedMarkerFontSize:12,collapsedMarkerFillOpacity:1,collapsedSize:32,collapsedFillOpacity:1,fill:v,halo:!1,haloLineWidth:12,haloStroke:E,haloStrokeOpacity:.25,labelBackground:!1,labelBackgroundFill:t,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[2,4,2,4],labelFill:e,labelFontSize:12,labelFontWeight:400,labelOpacity:1,lineDash:0,lineWidth:1,fillOpacity:.04,strokeOpacity:1,padding:10,stroke:E},state:{selected:{halo:!0,labelFontSize:14,labelFontWeight:700,lineWidth:4},active:{halo:!0},highlight:{labelFontWeight:700,lineWidth:4},inactive:{fillOpacity:.65,labelOpacity:.25,strokeOpacity:.65},disabled:{fill:y,fillOpacity:.25,labelOpacity:.25,stroke:C,strokeOpacity:.25}},animation:{enter:"fade",exit:"fade",show:"fade",hide:"fade",expand:"combo-expand",collapse:"combo-collapse",update:[{fields:["x","y"]},{fields:["fill","stroke","lineWidth"],shape:"key"}],translate:[{fields:["x","y"]}]}}}}const FH=rS({bgColor:"#000000",comboColor:"#fdfdfd",comboColorDisabled:"#d0e4ff",comboStroke:"#99add1",comboStrokeDisabled:"#969696",edgeColor:"#637088",edgeColorDisabled:"#637088",edgeColorInactive:"#D0E4FF",edgePaletteOptions:{type:"group",color:["#637088","#0F55A6","#008383","#9C5D38","#8B53A6","#4E40A6","#8F6608","#3E801D","#A65383","#175E75","#0F8248"]},nodeColor:"#1783ff",nodeColorDisabled:"#D0E4FF",nodeHaloStrokeOpacityActive:.25,nodeHaloStrokeOpacitySelected:.45,nodeIconOpacityInactive:.45,nodeOpacityDisabled:.25,nodeOpacityInactive:.45,nodeStroke:"#d0e4ff",textColor:"#ffffff"}),OH=rS({bgColor:"#ffffff",comboColor:"#99ADD1",comboColorDisabled:"#f0f0f0",comboStroke:"#99add1",comboStrokeDisabled:"#d9d9d9",edgeColor:"#99add1",edgeColorDisabled:"#d9d9d9",edgeColorInactive:"#1B324F",nodeColor:"#1783ff",nodeColorDisabled:"#1B324F",nodeHaloStrokeOpacityActive:.15,nodeHaloStrokeOpacitySelected:.25,nodeIconOpacityInactive:.85,nodeOpacityDisabled:.06,nodeOpacityInactive:.25,nodeStroke:"#000000",textColor:"#000000"});class IA extends Hm{beforeDraw(t,e){return t}afterLayout(t,e){}}class IH extends IA{beforeDraw(t){const{model:e}=this.context,n=t.add.combos,i=a=>{const s=[];return a.forEach((o,A)=>{const c=e.getAncestorsData(A,"combo").map(u=>Pt(u)).reverse();s.push([A,o,c.length])}),new Map(s.sort(([,,o],[,,A])=>A-o).map(([o,A])=>[o,A]))};return t.add.combos=i(n),t.update.combos=i(t.update.combos),t}}function Pa(r,t,e,n,i){const a=Pt(n),s=`${e}s`,o=i?n:r.add[s].get(a)||r.update[s].get(a)||r.remove[s].get(a)||n;Object.entries(r).forEach(([A,l])=>{t===A?l[s].set(a,o):l[s].delete(a)})}function Mv(r,t){return Object.keys(r).every(e=>r[e]===t[e])}class LH extends IA{beforeDraw(t,e){if(e.stage==="visibility"||!this.context.model.model.hasTreeStructure(nr))return t;const{model:n}=this.context,{add:i,update:a}=t,s=[...t.update.combos.entries(),...t.add.combos.entries()];for(;s.length;){const[o,A]=s.pop();if(fa(A)){const l=n.getDescendantsData(o),c=l.map(Pt),{internal:u,external:h}=sy(c,f=>n.getRelatedEdgesData(f));l.forEach(f=>{const d=Pt(f),g=s.findIndex(([y])=>y===d);g!==-1&&s.splice(g,1);const v=n.getElementType(d);Pa(t,"remove",v,f)}),u.forEach(f=>Pa(t,"remove","edge",f)),h.forEach(f=>{var d;const g=Pt(f);((d=this.context.element)===null||d===void 0?void 0:d.getElement(g))?a.edges.set(g,f):i.edges.set(g,f)})}else{const l=n.getChildrenData(o),c=l.map(Pt),{edges:u}=sy(c,h=>n.getRelatedEdgesData(h));[...l,...u].forEach(h=>{var f;const d=Pt(h),g=n.getElementType(d);((f=this.context.element)===null||f===void 0?void 0:f.getElement(d))?Pa(t,"update",g,h):Pa(t,"add",g,h),g==="combo"&&s.push([d,h])})}}return t}}const iS=(r,t,e,n)=>{const i=`${e}s`,a=Pt(n);!r.add[i].has(a)&&!r.update[i].has(a)&&r[t][i].set(Pt(n),n)};class NH extends IA{getElement(t){return this.context.element.getElement(t)}handleExpand(t,e){if(iS(e,"add","node",t),fa(t))return;const n=Pt(t);iS(e,"add","node",t),this.context.model.getRelatedEdgesData(n).forEach(s=>{Pa(e,"add","edge",s)}),this.context.model.getChildrenData(n).forEach(s=>{this.handleExpand(s,e)})}beforeDraw(t){const{graph:e,model:n}=this.context;if(!n.model.hasTreeStructure(Ia))return t;const{add:{nodes:i,edges:a},update:{nodes:s}}=t,o=new Map,A=new Map;i.forEach((c,u)=>{fa(c)&&o.set(u,c)}),a.forEach(c=>{if(e.getElementType(c.source)!=="node")return;const u=e.getNodeData(c.source);fa(u)&&o.set(c.source,u)}),s.forEach((c,u)=>{const h=this.getElement(u);if(!h)return;const f=h.attributes.collapsed;fa(c)?f||o.set(u,c):f&&A.set(u,c)});const l=new Set;return o.forEach((c,u)=>{n.getDescendantsData(u).forEach(f=>{const d=Pt(f);if(l.has(d))return;Pa(t,"remove","node",f),n.getRelatedEdgesData(d).forEach(v=>{Pa(t,"remove","edge",v)}),l.add(d)})}),A.forEach((c,u)=>{if(n.getAncestorsData(u,Ia).some(fa)){Pa(t,"remove","node",c);return}this.handleExpand(c,t)}),t}}const L1=new WeakMap;function IG(r,t,e){L1.has(r)||L1.set(r,{});const n=L1.get(r);if(!n[t])return n[t]=e,!0;const i=n[t];return aS(i,e)?!1:(n[t]=e,!0)}const aS=(r,t,e=2)=>{if(typeof r!="object"||typeof t!="object")return r===t;const n=Object.keys(r),i=Object.keys(t);if(n.length!==i.length)return!1;for(const a of n){const s=r[a],o=t[a];if(e>1&&typeof s=="object"&&typeof o=="object"){if(!aS(s,o,e-1))return!1}else if(s!==o)return!1}return!0};function kH(r,t,e){xm[r][t]&&ha.warn(`The extension ${t} of ${r} has been registered before, and will be overridden.`),Object.assign(xm[r],{[t]:e})}var sS=function(){function r(t){(0,N.Z)(this,r),this.dragndropPluginOptions=t}return(0,O.Z)(r,[{key:"apply",value:function(e){var n=this,i=e.renderingService,a=e.renderingContext,s=a.root.ownerDocument,o=s.defaultView,A=function(c){var u=c.target,h=u===s,f=h&&n.dragndropPluginOptions.isDocumentDraggable?s:u.closest&&u.closest("[draggable=true]");if(f){var d=!1,g=c.timeStamp,v=[c.clientX,c.clientY],y=null,E=[c.clientX,c.clientY],C=function(){var R=(0,Wa.Z)((0,ri.Z)().mark(function K(W){var V,J,et,at,ct,pt;return(0,ri.Z)().wrap(function(wt){for(;;)switch(wt.prev=wt.next){case 0:if(d){wt.next=2;break}if(V=W.timeStamp-g,J=Li([W.clientX,W.clientY],v),!(V<=n.dragndropPluginOptions.dragstartTimeThreshold||J<=n.dragndropPluginOptions.dragstartDistanceThreshold)){wt.next=1;break}return wt.abrupt("return");case 1:W.type="dragstart",f.dispatchEvent(W),d=!0;case 2:if(W.type="drag",W.dx=W.clientX-E[0],W.dy=W.clientY-E[1],f.dispatchEvent(W),E=[W.clientX,W.clientY],h){wt.next=4;break}return et=n.dragndropPluginOptions.overlap==="pointer"?[W.canvasX,W.canvasY]:u.getBounds().center,wt.next=3,s.elementsFromPoint(et[0],et[1]);case 3:at=wt.sent,ct=at[at.indexOf(u)+1],pt=(ct==null?void 0:ct.closest("[droppable=true]"))||(n.dragndropPluginOptions.isDocumentDroppable?s:null),y!==pt&&(y&&(W.type="dragleave",W.target=y,y.dispatchEvent(W)),pt&&(W.type="dragenter",W.target=pt,pt.dispatchEvent(W)),y=pt,y&&(W.type="dragover",W.target=y,y.dispatchEvent(W)));case 4:case"end":return wt.stop()}},K)}));return function(W){return R.apply(this,arguments)}}();o.addEventListener("pointermove",C);var I=function(K){if(d){K.detail={preventClick:!0};var W=K.clone();y&&(W.type="drop",W.target=y,y.dispatchEvent(W)),W.type="dragend",f.dispatchEvent(W),d=!1}o.removeEventListener("pointermove",C)};u.addEventListener("pointerup",I,{once:!0}),u.addEventListener("pointerupoutside",I,{once:!0})}};i.hooks.init.tap(r.tag,function(){o.addEventListener("pointerdown",A)}),i.hooks.destroy.tap(r.tag,function(){o.removeEventListener("pointerdown",A)})}}])}();sS.tag="Dragndrop";var QH=function(r){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return(0,N.Z)(this,t),e=(0,U.Z)(this,t),e.name="dragndrop",e.options=n,e}return(0,L.Z)(t,r),(0,O.Z)(t,[{key:"init",value:function(){this.addRenderingPlugin(new sS((0,D.Z)({overlap:"pointer",isDocumentDraggable:!1,isDocumentDroppable:!1,dragstartDistanceThreshold:0,dragstartTimeThreshold:0},this.options)))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}},{key:"setOptions",value:function(n){Object.assign(this.plugins[0].dragndropPluginOptions,n)}}])}(ls),oS=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})},AS=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};const lS=["main"],cS=["background","main","label","transient"];function UH(r){return r.main}class uS{getConfig(){return this.config}getLayer(t="main"){return this.extends.layers[t]||UH(this.getLayers())}getLayers(){return this.extends.layers}getRenderer(t){return this.extends.renderers[t]}getCamera(t="main"){return this.getLayer(t).getCamera()}getRoot(t="main"){return this.getLayer(t).getRoot()}getContextService(t="main"){return this.getLayer(t).getContextService()}setCursor(t){this.config.cursor=t,this.getLayer().setCursor(t)}get document(){return this.getLayer().document}get context(){return this.getLayer().context}constructor(t){this.config={enableMultiLayer:!0},Object.assign(this.config,t);const e=this.config,{renderer:n,background:i,cursor:a,enableMultiLayer:s}=e,o=AS(e,["renderer","background","cursor","enableMultiLayer"]),A=s?cS:lS,l=hS(n,A),c=Object.fromEntries(A.map(u=>{const h=new om(Object.assign(Object.assign({},o),{supportsMutipleCanvasesInOneContainer:s,renderer:l[u],background:s?u==="background"?i:void 0:i}));return[u,h]}));fS(c),this.extends={config:this.config,renderer:n,renderers:l,layers:c}}get ready(){return Promise.all(Object.entries(this.getLayers()).map(([,t])=>t.ready))}resize(t,e){Object.assign(this.extends.config,{width:t,height:e}),Object.values(this.getLayers()).forEach(n=>{const i=n.getCamera(),a=i.getPosition(),s=i.getFocalPoint();n.resize(t,e),i.setPosition(a),i.setFocalPoint(s)})}getBounds(t){return oh(Object.values(this.getLayers()).map(e=>t?e.getRoot().childNodes.find(i=>i.classList.includes(t)):e.getRoot()).filter(e=>(e==null?void 0:e.childNodes.length)>0).map(e=>e.getBounds()))}getContainer(){const t=this.extends.config.container;return typeof t=="string"?document.getElementById(t):t}getSize(){return[this.extends.config.width||0,this.extends.config.height||0]}appendChild(t,e){var n;const i=((n=t.style)===null||n===void 0?void 0:n.$layer)||"main";return this.getLayer(i).appendChild(t,e)}setRenderer(t){if(t===this.extends.renderer)return;const e=hS(t,this.config.enableMultiLayer?cS:lS);this.extends.renderers=e,Object.entries(e).forEach(([n,i])=>this.getLayer(n).setRenderer(i)),fS(this.getLayers())}getCanvasByViewport(t){return Si(this.getLayer().viewport2Canvas(xs(t)))}getViewportByCanvas(t){return Si(this.getLayer().canvas2Viewport(xs(t)))}getViewportByClient(t){return Si(this.getLayer().client2Viewport(xs(t)))}getClientByViewport(t){return Si(this.getLayer().viewport2Client(xs(t)))}getClientByCanvas(t){return this.getClientByViewport(this.getViewportByCanvas(t))}getCanvasByClient(t){const e=this.getLayer(),n=e.client2Viewport(xs(t));return Si(e.viewport2Canvas(n))}toDataURL(){return oS(this,arguments,void 0,function*(t={}){const e=globalThis.devicePixelRatio||1,{mode:n="viewport"}=t,i=AS(t,["mode"]);let[a,s,o,A]=[0,0,0,0];if(n==="viewport")[o,A]=this.getSize();else if(n==="overall"){const y=this.getBounds(),E=gA(y);[a,s]=y.min,[o,A]=E}const l=O1('<div id="virtual-image"></div>'),c=new om({width:o,height:A,renderer:new mh,devicePixelRatio:e,container:l,background:this.extends.config.background});yield c.ready,c.appendChild(this.getLayer("background").getRoot().cloneNode(!0)),c.appendChild(this.getRoot().cloneNode(!0));const u=this.getLayer("label").getRoot().cloneNode(!0),h=c.viewport2Canvas({x:0,y:0}),f=this.getCanvasByViewport([0,0]);u.translate([f[0]-h.x,f[1]-h.y]),u.scale(1/this.getCamera().getZoom()),c.appendChild(u),c.appendChild(this.getLayer("transient").getRoot().cloneNode(!0));const d=this.getCamera(),g=c.getCamera();if(n==="viewport")g.setZoom(d.getZoom()),g.setPosition(d.getPosition()),g.setFocalPoint(d.getFocalPoint());else if(n==="overall"){const[y,E,C]=g.getPosition(),[I,R,K]=g.getFocalPoint();g.setPosition([y+a,E+s,C]),g.setFocalPoint([I+a,R+s,K])}const v=c.getContextService();return new Promise(y=>{c.addEventListener(Fa.RERENDER,()=>oS(this,void 0,void 0,function*(){yield new Promise(C=>setTimeout(C,300));const E=yield v.toDataURL(i);y(E)}))})})}destroy(){Object.values(this.getLayers()).forEach(t=>{t.getCamera().cancelLandmarkAnimation(),t.destroy()})}}function hS(r,t){return Object.fromEntries(t.map(e=>{const n=(r==null?void 0:r(e))||new mh;return n instanceof mh&&n.setConfig({enableDirtyRectangleRendering:!1}),e==="main"?n.registerPlugin(new QH({isDocumentDraggable:!0,isDocumentDroppable:!0,dragstartDistanceThreshold:10,dragstartTimeThreshold:100})):n.unregisterPlugin(n.getPlugin("dom-interaction")),[e,n]}))}function fS(r){Object.entries(r).forEach(([t,e])=>{const n=e.getContextService().getDomElement();n!=null&&n.style&&(n.style.gridArea="1 / 1 / 2 / 2",n.style.outline="none",n.tabIndex=1,t!=="main"&&(n.style.pointerEvents="none")),n!=null&&n.parentElement&&(n.parentElement.style.display="grid",n.parentElement.style.isolation="isolate")})}const jc=r=>r?parseInt(r):0;function PH(r){const t=getComputedStyle(r),e=r.clientWidth||jc(t.width),n=r.clientHeight||jc(t.height),i=jc(t.paddingLeft)+jc(t.paddingRight),a=jc(t.paddingTop)+jc(t.paddingBottom);return[e-i,n-a]}function dS(r){if(!r)return[0,0];let t=640,e=480;const[n,i]=PH(r);t=n||t,e=i||e;const a=1,s=1;return[Math.max(we(t)?t:a,a),Math.max(we(e)?e:s,s)]}class Tv{constructor(t){this.type=t}}class Xr extends Tv{constructor(t,e){super(t),this.data=e}}class rs extends Tv{constructor(t,e,n,i){super(t),this.animationType=e,this.animation=n,this.data=i}}class Yc extends Tv{constructor(t,e,n){super(t),this.elementType=e,this.data=n}}class Fv extends Tv{constructor(t,e){super(t),this.data=e}}function ci(r,t){r.emit(t.type,t)}function DH(r){if(!r)return null;if(r instanceof CE)return{type:"canvas",element:r};let t=r;for(;t;){if(wh(t))return{type:"node",element:t};if(tx(t))return{type:"edge",element:t};if(oy(t))return{type:"combo",element:t};t=t.parentElement}return null}function gS(r){var t;return((t=r==null?void 0:r.style)===null||t===void 0?void 0:t.zIndex)||0}const Xc="cachedStyle",Ov=r=>`__${r}__`;function RH(r,t){const e=Array.isArray(t)?t:[t];Mi(r,Xc)||dh(r,Xc,{}),e.forEach(n=>{dh(Mi(r,Xc),Ov(n),r.attributes[n])})}function vS(r,t){return Mi(r,[Xc,Ov(t)])}function _H(r,t){return Ov(t)in(Mi(r,Xc)||{})}function LG(r,t,e){set(r,[Xc,Ov(t)],e)}class HH{constructor(t){this.tasks=[],this.animations=new Set,this.context=t}getTasks(){const t=[...this.tasks];return this.tasks=[],t}add(t,e){this.tasks.push([t,e])}animate(t,e,n){var i,a,s;(i=e==null?void 0:e.before)===null||i===void 0||i.call(e);const o=this.getTasks().map(([l,c])=>{var u,h,f;const{element:d,elementType:g,stage:v}=l,y=uO(this.context.options,g,v,t);(u=c==null?void 0:c.before)===null||u===void 0||u.call(c);const E=y.length?fO(d,this.inferStyle(l,n),y):null;return E?((h=c==null?void 0:c.beforeAnimate)===null||h===void 0||h.call(c,E),E.finished.then(()=>{var C,I;(C=c==null?void 0:c.afterAnimate)===null||C===void 0||C.call(c,E),(I=c==null?void 0:c.after)===null||I===void 0||I.call(c),this.animations.delete(E)})):(f=c==null?void 0:c.after)===null||f===void 0||f.call(c),E}).filter(Boolean);o.forEach(l=>this.animations.add(l));const A=Cm(o);return A?((a=e==null?void 0:e.beforeAnimate)===null||a===void 0||a.call(e,A),A.finished.then(()=>{var l,c;(l=e==null?void 0:e.afterAnimate)===null||l===void 0||l.call(e,A),(c=e==null?void 0:e.after)===null||c===void 0||c.call(e),this.release()})):(s=e==null?void 0:e.after)===null||s===void 0||s.call(e),A}inferStyle(t,e){var n,i;const{element:a,elementType:s,stage:o,originalStyle:A,updatedStyle:l={}}=t;t.modifiedStyle||(t.modifiedStyle=Object.assign(Object.assign({},A),l));const{modifiedStyle:c}=t,u={},h={};if(o==="enter")Object.assign(u,{opacity:0});else if(o==="exit")Object.assign(h,{opacity:0});else if(o==="show")Object.assign(u,{opacity:0}),Object.assign(h,{opacity:(n=vS(a,"opacity"))!==null&&n!==void 0?n:sh("opacity")});else if(o==="hide")Object.assign(u,{opacity:(i=vS(a,"opacity"))!==null&&i!==void 0?i:sh("opacity")}),Object.assign(h,{opacity:0});else if(o==="collapse"){const{collapse:f}=e||{},{target:d,descendants:g,position:v}=f;if(s==="node"){if(g.includes(a.id)){const[y,E,C]=v;Object.assign(h,{x:y,y:E,z:C})}}else if(s==="combo"){if(a.id===d||g.includes(a.id)){const[y,E]=v;Object.assign(h,{x:y,y:E,childrenNode:A.childrenNode})}}else s==="edge"&&Object.assign(h,{sourceNode:c.sourceNode,targetNode:c.targetNode})}else if(o==="expand"){const{expand:f}=e||{},{target:d,descendants:g,position:v}=f;if(s==="node"){if(a.id===d||g.includes(a.id)){const[y,E,C]=v;Object.assign(u,{x:y,y:E,z:C})}}else if(s==="combo"){if(a.id===d||g.includes(a.id)){const[y,E,C]=v;Object.assign(u,{x:y,y:E,z:C,childrenNode:c.childrenNode})}}else s==="edge"&&Object.assign(u,{sourceNode:c.sourceNode,targetNode:c.targetNode})}return[Object.keys(u).length>0?Object.assign({},A,u):A,Object.keys(h).length>0?Object.assign({},c,h):c]}stop(){this.animations.forEach(t=>t.cancel())}clear(){this.tasks=[]}release(){var t,e;const{canvas:n}=this.context,i=(e=(t=n.document)===null||t===void 0?void 0:t.timeline)===null||e===void 0?void 0:e.animationsWithPromises;i&&(n.document.timeline.animationsWithPromises=i.filter(a=>a.playState!=="finished"))}destroy(){this.stop(),this.animations.clear(),this.tasks=[]}}class GH{constructor(t){this.batchCount=0,this.context=t}emit(t){const{graph:e}=this.context;e.emit(t.type,t)}startBatch(t=!0){this.batchCount++,this.batchCount===1&&this.emit(new Xr(ce.BATCH_START,{initiate:t}))}endBatch(){this.batchCount--,this.batchCount===0&&this.emit(new Xr(ce.BATCH_END))}get isBatching(){return this.batchCount>0}destroy(){this.context=null}}class KH extends _m{constructor(t){super(t),this.currentTarget=null,this.currentTargetType=null,this.category="behavior",this.forwardCanvasEvents=e=>{const{target:n}=e,i=DH(n);if(!i)return;const{graph:a,canvas:s}=this.context,{type:o,element:A}=i;if("destroyed"in A&&(Bh(A)||A.destroyed))return;const{type:l,detail:c,button:u}=e,h=Object.assign(Object.assign({},e),{target:A,targetType:o,originalTarget:n});l===Jt.POINTER_MOVE&&(this.currentTarget!==A&&(this.currentTarget&&a.emit(`${this.currentTargetType}:${Jt.POINTER_LEAVE}`,Object.assign(Object.assign({},h),{type:Jt.POINTER_LEAVE,target:this.currentTarget,targetType:this.currentTargetType})),A&&(Object.assign(h,{type:Jt.POINTER_ENTER}),a.emit(`${o}:${Jt.POINTER_ENTER}`,h))),this.currentTarget=A,this.currentTargetType=o),l===Jt.CLICK&&u===2||(a.emit(`${o}:${l}`,h),a.emit(l,h)),l===Jt.CLICK&&c===2&&(Object.assign(h,{type:Jt.DBLCLICK}),a.emit(`${o}:${Jt.DBLCLICK}`,h),a.emit(Jt.DBLCLICK,h)),l===Jt.POINTER_DOWN&&u===2&&(Object.assign(h,{type:Jt.CONTEXT_MENU,preventDefault:()=>{var f;(f=s.getContainer())===null||f===void 0||f.addEventListener(Jt.CONTEXT_MENU,d=>d.preventDefault(),{once:!0})}}),a.emit(`${o}:${Jt.CONTEXT_MENU}`,h),a.emit(Jt.CONTEXT_MENU,h))},this.forwardContainerEvents=e=>{this.context.graph.emit(e.type,e)},this.forwardEvents(),this.setBehaviors(this.context.options.behaviors||[])}setBehaviors(t){this.setExtensions(t)}forwardEvents(){const t=this.context.canvas.getContainer();t&&[Fc.KEY_DOWN,Fc.KEY_UP].forEach(n=>{t.addEventListener(n,this.forwardContainerEvents)});const e=this.context.canvas.document;e&&[Jt.CLICK,Jt.DBLCLICK,Jt.POINTER_OVER,Jt.POINTER_LEAVE,Jt.POINTER_ENTER,Jt.POINTER_MOVE,Jt.POINTER_OUT,Jt.POINTER_DOWN,Jt.POINTER_UP,Jt.CONTEXT_MENU,Jt.DRAG_START,Jt.DRAG,Jt.DRAG_END,Jt.DRAG_ENTER,Jt.DRAG_OVER,Jt.DRAG_LEAVE,Jt.DROP,Jt.WHEEL].forEach(n=>{e.addEventListener(n,this.forwardCanvasEvents)})}destroy(){const t=this.context.canvas.getContainer();t&&[Fc.KEY_DOWN,Fc.KEY_UP].forEach(e=>{t.removeEventListener(e,this.forwardContainerEvents)}),this.context.canvas.document.removeAllEventListeners(),super.destroy()}}function zH(r,t){t===void 0&&(t=new Map);var e=[];if(Array.isArray(r))for(var n=0,i=r.length;n<i;n++){var a=r[n];t.has(a)||(e.push(a),t.set(a,!0))}return e}var Rh=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};function LA(r,t){const{data:e,style:n}=r,i=Rh(r,["data","style"]),{data:a,style:s}=t,o=Rh(t,["data","style"]),A=Object.assign(Object.assign({},i),o);return(e||a)&&Object.assign(A,{data:Object.assign(Object.assign({},e),a)}),(n||s)&&Object.assign(A,{style:Object.assign(Object.assign({},n),s)}),A}function N1(r){const{data:t,style:e}=r,i=Rh(r,["data","style"]);return t&&(i.data=Object.assign({},t)),e&&(i.style=Object.assign({},e)),i}function NG(r){return!get(r,["nodes","length"])&&!get(r,["edges","length"])&&!get(r,["combos","length"])}function Jc(r={},t={}){const{states:e=[],data:n={},style:i={},children:a=[]}=r,s=Rh(r,["states","data","style","children"]),{states:o=[],data:A={},style:l={},children:c=[]}=t,u=Rh(t,["states","data","style","children"]),h=(d,g)=>d.length!==g.length?!1:d.every((v,y)=>v===g[y]),f=(d,g)=>{const v=Object.keys(d),y=Object.keys(g);return v.length!==y.length?!1:v.every(E=>d[E]===g[E])};return!(!f(s,u)||!h(a,c)||!h(e,o)||!f(n,A)||!f(i,l))}var VH=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};function k1(r){const{id:t=Pt(r),style:e,data:n}=r,i=VH(r,["id","style","data"]),a=Object.assign(Object.assign({},r),{style:Object.assign({},e),data:Object.assign({},n)});return EO(r)?Object.assign({id:t,data:a},i):{id:t,data:a}}function wi(r){return r.data}function WH(r){if(r.hasTreeStructure(Ia))return;r.attachTreeStructure(Ia);const t=r.getAllEdges();for(const e of t){const{source:n,target:i}=e;r.setParent(i,n,Ia)}}class ZH{constructor(){this.latestRemovedComboIds=new Set,this.comboIds=new Set,this.changes=[],this.batchCount=0,this.isTraceless=!1,this.enableUpdateNodeLikeHierarchy=!0,this.model=new Gr}pushChange(t){if(this.isTraceless)return;const{type:e}=t;if(e===fr.NodeUpdated||e===fr.EdgeUpdated||e===fr.ComboUpdated){const{value:n,original:i}=t;this.changes.push({value:N1(n),original:N1(i),type:e})}else this.changes.push({value:N1(t.value),type:e})}getChanges(){return this.changes}clearChanges(){this.changes=[]}batch(t){this.batchCount++,this.model.batch(t),this.batchCount--}isBatching(){return this.batchCount>0}silence(t){this.isTraceless=!0,t(),this.isTraceless=!1}isCombo(t){return this.comboIds.has(t)||this.latestRemovedComboIds.has(t)}getData(){return{nodes:this.getNodeData(),edges:this.getEdgeData(),combos:this.getComboData()}}getNodeData(t){return this.model.getAllNodes().reduce((e,n)=>{const i=wi(n);return this.isCombo(Pt(i))||(t===void 0||t.includes(Pt(i)))&&e.push(i),e},[])}getEdgeDatum(t){return wi(this.model.getEdge(t))}getEdgeData(t){return this.model.getAllEdges().reduce((e,n)=>{const i=wi(n);return(t===void 0||t.includes(Pt(i)))&&e.push(i),e},[])}getComboData(t){return this.model.getAllNodes().reduce((e,n)=>{const i=wi(n);return this.isCombo(Pt(i))&&(t===void 0||t.includes(Pt(i)))&&e.push(i),e},[])}getRootsData(t=Ia){return this.model.getRoots(t).map(wi)}getAncestorsData(t,e){const{model:n}=this;return!n.hasNode(t)||!n.hasTreeStructure(e)?[]:n.getAncestors(t,e).map(wi)}getDescendantsData(t){const e=this.getElementDataById(t),n=[];return yl(e,i=>{i!==e&&n.push(i)},i=>this.getChildrenData(Pt(i)),"TB"),n}getParentData(t,e){const{model:n}=this;if(!e){ha.warn("The hierarchy structure key is not specified");return}if(!n.hasNode(t)||!n.hasTreeStructure(e))return;const i=n.getParent(t,e);return i?wi(i):void 0}getChildrenData(t){const e=this.getElementType(t)==="node"?Ia:nr,{model:n}=this;return!n.hasNode(t)||!n.hasTreeStructure(e)?[]:n.getChildren(t,e).map(wi)}getElementsDataByType(t){return t==="node"?this.getNodeData():t==="edge"?this.getEdgeData():t==="combo"?this.getComboData():[]}getElementDataById(t){return this.getElementType(t)==="edge"?this.getEdgeDatum(t):this.getNodeLikeDatum(t)}getNodeLikeDatum(t){const e=this.model.getNode(t);return wi(e)}getNodeLikeData(t){return this.model.getAllNodes().reduce((e,n)=>{const i=wi(n);return t?t.includes(Pt(i))&&e.push(i):e.push(i),e},[])}getElementDataByState(t,e){return this.getElementsDataByType(t).filter(i=>{var a;return(a=i.states)===null||a===void 0?void 0:a.includes(e)})}getElementState(t){var e;return((e=this.getElementDataById(t))===null||e===void 0?void 0:e.states)||[]}hasNode(t){return this.model.hasNode(t)&&!this.isCombo(t)}hasEdge(t){return this.model.hasEdge(t)}hasCombo(t){return this.model.hasNode(t)&&this.isCombo(t)}getRelatedEdgesData(t,e="both"){return this.model.getRelatedEdges(t,e).map(wi)}getNeighborNodesData(t){return this.model.getNeighbors(t).map(wi)}setData(t){const{nodes:e=[],edges:n=[],combos:i=[]}=t,{nodes:a,edges:s,combos:o}=this.getData(),A=mA(a,e,u=>Pt(u),Jc),l=mA(s,n,u=>Pt(u),Jc),c=mA(o,i,u=>Pt(u),Jc);this.batch(()=>{const u={nodes:A.enter,edges:l.enter,combos:c.enter};this.addData(u),this.computeZIndex(u,"add",!0);const h={nodes:A.update,edges:l.update,combos:c.update};this.updateData(h),this.computeZIndex(h,"update",!0);const f={nodes:A.exit.map(Pt),edges:l.exit.map(Pt),combos:c.exit.map(Pt)};this.removeData(f)})}addData(t){const{nodes:e,edges:n,combos:i}=t;this.batch(()=>{this.addComboData(i),this.addNodeData(e),this.addEdgeData(n)}),this.computeZIndex(t,"add")}addNodeData(t=[]){t.length&&(this.model.addNodes(t.map(e=>(this.pushChange({value:e,type:fr.NodeAdded}),k1(e)))),this.updateNodeLikeHierarchy(t),this.computeZIndex({nodes:t},"add"))}addEdgeData(t=[]){t.length&&(this.model.addEdges(t.map(e=>(this.pushChange({value:e,type:fr.EdgeAdded}),k1(e)))),this.computeZIndex({edges:t},"add"))}addComboData(t=[]){if(!t.length)return;const{model:e}=this;e.hasTreeStructure(nr)||e.attachTreeStructure(nr),e.addNodes(t.map(n=>(this.comboIds.add(Pt(n)),this.pushChange({value:n,type:fr.ComboAdded}),k1(n)))),this.updateNodeLikeHierarchy(t),this.computeZIndex({combos:t},"add")}addChildrenData(t,e){const n=this.getNodeLikeDatum(t),i=e.map(Pt);this.addNodeData(e),this.updateNodeData([{id:t,children:[...n.children||[],...i]}]),this.addEdgeData(i.map(a=>({source:t,target:a})))}computeZIndex(t,e,n=!1){!n&&this.isBatching()||this.batch(()=>{const{nodes:i=[],edges:a=[],combos:s=[]}=t;s.forEach(o=>{var A,l,c;const u=Pt(o);if(e==="add"&&we((A=o.style)===null||A===void 0?void 0:A.zIndex)||e==="update"&&!("combo"in o))return;const h=this.getParentData(u,nr),f=h?((c=(l=h.style)===null||l===void 0?void 0:l.zIndex)!==null&&c!==void 0?c:0)+1:0;this.preventUpdateNodeLikeHierarchy(()=>{this.updateComboData([{id:u,style:{zIndex:f}}])})}),i.forEach(o=>{var A,l,c;const u=Pt(o);if(e==="add"&&we((A=o.style)===null||A===void 0?void 0:A.zIndex)||e==="update"&&!("combo"in o)&&!("children"in o))return;let h=0;const f=this.getParentData(u,nr);if(f)h=(((l=f.style)===null||l===void 0?void 0:l.zIndex)||0)+1;else{const d=this.getParentData(u,Ia);d&&(h=((c=d==null?void 0:d.style)===null||c===void 0?void 0:c.zIndex)||0)}this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:u,style:{zIndex:h}}])})}),a.forEach(o=>{var A,l,c,u,h;if(we((A=o.style)===null||A===void 0?void 0:A.zIndex))return;let{id:f,source:d,target:g}=o;if(!f)f=Pt(o);else{const E=this.getEdgeDatum(f);d=E.source,g=E.target}if(!d||!g)return;const v=((c=(l=this.getNodeLikeDatum(d))===null||l===void 0?void 0:l.style)===null||c===void 0?void 0:c.zIndex)||0,y=((h=(u=this.getNodeLikeDatum(g))===null||u===void 0?void 0:u.style)===null||h===void 0?void 0:h.zIndex)||0;this.updateEdgeData([{id:Pt(o),style:{zIndex:Math.max(v,y)-1}}])})})}getFrontZIndex(t){var e;const n=this.getElementType(t),i=this.getElementDataById(t),a=this.getData();if(Object.assign(a,{[`${n}s`]:a[`${n}s`].filter(s=>Pt(s)!==t)}),n==="combo"&&!fa(i)){const s=new Set(this.getAncestorsData(t,nr).map(Pt));a.nodes=a.nodes.filter(o=>!s.has(Pt(o))),a.combos=a.combos.filter(o=>!s.has(Pt(o))),a.edges=a.edges.filter(({source:o,target:A})=>!s.has(o)&&!s.has(A))}return Math.max(((e=i.style)===null||e===void 0?void 0:e.zIndex)||0,0,...Object.values(a).flat().map(s=>{var o;return(((o=s==null?void 0:s.style)===null||o===void 0?void 0:o.zIndex)||0)+1}))}updateNodeLikeHierarchy(t){if(!this.enableUpdateNodeLikeHierarchy)return;const{model:e}=this;t.forEach(n=>{const i=Pt(n),a=_d(n);a!==void 0&&(e.hasTreeStructure(nr)||e.attachTreeStructure(nr),a===null&&this.refreshComboData(i),this.setParent(i,_d(n),nr));const s=n.children||[];if(s.length){e.hasTreeStructure(Ia)||e.attachTreeStructure(Ia);const o=s.filter(A=>e.hasNode(A));o.forEach(A=>this.setParent(A,i,Ia)),o.length!==s.length&&this.updateNodeData([{id:i,children:o}])}})}preventUpdateNodeLikeHierarchy(t){this.enableUpdateNodeLikeHierarchy=!1,t(),this.enableUpdateNodeLikeHierarchy=!0}updateData(t){const{nodes:e,edges:n,combos:i}=t;this.batch(()=>{this.updateNodeData(e),this.updateComboData(i),this.updateEdgeData(n)}),this.computeZIndex(t,"update")}updateNodeData(t=[]){if(!t.length)return;const{model:e}=this;this.batch(()=>{const n=[];t.forEach(i=>{const a=Pt(i),s=wi(e.getNode(a));if(Jc(s,i))return;const o=LA(s,i);this.pushChange({value:o,original:s,type:fr.NodeUpdated}),e.mergeNodeData(a,o),n.push(o)}),this.updateNodeLikeHierarchy(n)}),this.computeZIndex({nodes:t},"update")}refreshData(){const{nodes:t,edges:e,combos:n}=this.getData();t.forEach(i=>{this.pushChange({value:i,original:i,type:fr.NodeUpdated})}),e.forEach(i=>{this.pushChange({value:i,original:i,type:fr.EdgeUpdated})}),n.forEach(i=>{this.pushChange({value:i,original:i,type:fr.ComboUpdated})})}syncNodeLikeDatum(t){const{model:e}=this,n=Pt(t);if(!e.hasNode(n))return;const i=wi(e.getNode(n)),a=LA(i,t);e.mergeNodeData(n,a)}syncEdgeDatum(t){const{model:e}=this,n=Pt(t);if(!e.hasEdge(n))return;const i=wi(e.getEdge(n)),a=LA(i,t);e.mergeEdgeData(n,a)}updateEdgeData(t=[]){if(!t.length)return;const{model:e}=this;this.batch(()=>{t.forEach(n=>{const i=Pt(n),a=wi(e.getEdge(i));if(Jc(a,n))return;n.source&&a.source!==n.source&&e.updateEdgeSource(i,n.source),n.target&&a.target!==n.target&&e.updateEdgeTarget(i,n.target);const s=LA(a,n);this.pushChange({value:s,original:a,type:fr.EdgeUpdated}),e.mergeEdgeData(i,s)})}),this.computeZIndex({edges:t},"update")}updateComboData(t=[]){if(!t.length)return;const{model:e}=this;e.batch(()=>{const n=[];t.forEach(i=>{const a=Pt(i),s=wi(e.getNode(a));if(Jc(s,i))return;const o=LA(s,i);this.pushChange({value:o,original:s,type:fr.ComboUpdated}),e.mergeNodeData(a,o),n.push(o)}),this.updateNodeLikeHierarchy(n)}),this.computeZIndex({combos:t},"update")}setParent(t,e,n,i=!0){if(t===e)return;const a=this.getNodeLikeDatum(t),s=_d(a);if(s!==e&&n===nr){const o={id:t,combo:e};this.isCombo(t)?this.syncNodeLikeDatum(o):this.syncNodeLikeDatum(o)}this.model.setParent(t,e,n),i&&n===nr&&zH([s,e]).forEach(o=>{o!==void 0&&this.refreshComboData(o)})}refreshComboData(t){const e=this.getComboData([t])[0],n=this.getAncestorsData(t,nr);e&&this.pushChange({value:e,original:e,type:fr.ComboUpdated}),n.forEach(i=>{this.pushChange({value:i,original:i,type:fr.ComboUpdated})})}getElementPosition(t){const e=this.getElementDataById(t);return Ai(e)}translateNodeLikeBy(t,e){this.isCombo(t)?this.translateComboBy(t,e):this.translateNodeBy(t,e)}translateNodeLikeTo(t,e){this.isCombo(t)?this.translateComboTo(t,e):this.translateNodeTo(t,e)}translateNodeBy(t,e){const n=this.getElementPosition(t),i=tn(n,[...e,0].slice(0,3));this.translateNodeTo(t,i)}translateNodeTo(t,e){const[n=0,i=0,a=0]=e;this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:t,style:{x:n,y:i,z:a}}])})}translateComboBy(t,e){const[n=0,i=0,a=0]=e;if([n,i,a].some(isNaN)||[n,i,a].every(A=>A===0))return;const s=this.getComboData([t])[0];if(!s)return;const o=new Set;yl(s,A=>{const l=Pt(A);if(o.has(l))return;o.add(l);const[c,u,h]=Ai(A),f=LA(A,{style:{x:c+n,y:u+i,z:h+a}});this.pushChange({value:f,original:A,type:this.isCombo(l)?fr.ComboUpdated:fr.NodeUpdated}),this.model.mergeNodeData(l,f)},A=>this.getChildrenData(Pt(A)),"BT")}translateComboTo(t,e){var n;if(e.some(isNaN))return;const[i=0,a=0,s=0]=e,o=(n=this.getComboData([t]))===null||n===void 0?void 0:n[0];if(!o)return;const[A,l,c]=Ai(o),u=i-A,h=a-l,f=s-c;yl(o,d=>{const g=Pt(d),[v,y,E]=Ai(d),C=LA(d,{style:{x:v+u,y:y+h,z:E+f}});this.pushChange({value:C,original:d,type:this.isCombo(g)?fr.ComboUpdated:fr.NodeUpdated}),this.model.mergeNodeData(g,C)},d=>this.getChildrenData(Pt(d)),"BT")}removeData(t){const{nodes:e,edges:n,combos:i}=t;this.batch(()=>{this.removeEdgeData(n),this.removeNodeData(e),this.removeComboData(i),this.latestRemovedComboIds=new Set(i)})}removeNodeData(t=[]){t.length&&this.batch(()=>{t.forEach(e=>{this.removeEdgeData(this.getRelatedEdgesData(e).map(Pt)),this.pushChange({value:this.getNodeData([e])[0],type:fr.NodeRemoved}),this.removeNodeLikeHierarchy(e)}),this.model.removeNodes(t)})}removeEdgeData(t=[]){t.length&&(t.forEach(e=>this.pushChange({value:this.getEdgeData([e])[0],type:fr.EdgeRemoved})),this.model.removeEdges(t))}removeComboData(t=[]){t.length&&this.batch(()=>{t.forEach(e=>{this.pushChange({value:this.getComboData([e])[0],type:fr.ComboRemoved}),this.removeNodeLikeHierarchy(e),this.comboIds.delete(e)}),this.model.removeNodes(t)})}removeNodeLikeHierarchy(t){if(this.model.hasTreeStructure(nr)){const e=_d(this.getNodeLikeDatum(t));this.setParent(t,void 0,nr,!1),this.model.getChildren(t,nr).forEach(n=>{const i=wi(n),a=Pt(i);this.setParent(Pt(i),e,nr,!1);const s=LA(i,{id:Pt(i),combo:e});this.pushChange({value:s,original:i,type:this.isCombo(a)?fr.ComboUpdated:fr.NodeUpdated}),this.model.mergeNodeData(Pt(i),s)}),Pe(e)||this.refreshComboData(e)}}getElementType(t){if(this.model.hasNode(t))return this.isCombo(t)?"combo":"node";if(this.model.hasEdge(t))return"edge";throw new Error(Oo(`Unknown element type of id: ${t}`))}destroy(){const{model:t}=this,e=t.getAllNodes(),n=t.getAllEdges();t.removeEdges(n.map(i=>i.id)),t.removeNodes(e.map(i=>i.id)),this.context={}}}var _h=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class jH{constructor(t){this.elementMap={},this.shapeTypeMap={},this.paletteStyle={},this.defaultStyle={},this.stateStyle={},this.visibilityCache=new WeakMap,this.context=t}init(){this.initContainer()}initContainer(){if(!this.container||this.container.destroyed){const{canvas:t}=this.context;this.container=t.appendChild(new oi({className:"elements"}))}}emit(t,e){e.silence||ci(this.context.graph,t)}forEachElementData(t){ml.forEach(e=>{const n=this.context.model.getElementsDataByType(e);t(e,n)})}getElementType(t,e){var n;const{options:i,graph:a}=this.context,s=((n=i[t])===null||n===void 0?void 0:n.type)||e.type;return s?typeof s=="string"?s:s.call(a,e):t==="edge"?"line":"circle"}getTheme(t){return nB(this.context.options)[t]||{}}getThemeStyle(t){return this.getTheme(t).style||{}}getThemeStateStyle(t,e){const{state:n={}}=this.getTheme(t);return Object.assign({},...e.map(i=>n[i]||{}))}computePaletteStyle(){const{options:t}=this.context;this.paletteStyle={},this.forEachElementData((e,n)=>{var i,a;const s=Object.assign({},gb((i=this.getTheme(e))===null||i===void 0?void 0:i.palette),gb((a=t[e])===null||a===void 0?void 0:a.palette));s!=null&&s.field&&Object.assign(this.paletteStyle,NL(n,s))})}getPaletteStyle(t,e){const n=this.paletteStyle[e];return n?t==="edge"?{stroke:n}:{fill:n}:{}}computeElementDefaultStyle(t,e){var n;const{options:i}=this.context,a=((n=i[t])===null||n===void 0?void 0:n.style)||{};"transform"in a&&Array.isArray(a.transform)&&(a.transform=[...a.transform]),this.defaultStyle[Pt(e.datum)]=db(a,e)}computeElementsDefaultStyle(t){const{graph:e}=this.context;this.forEachElementData((n,i)=>{const a=i.length;for(let s=0;s<a;s++){const o=i[s];(t===void 0||t.includes(Pt(o)))&&this.computeElementDefaultStyle(n,{datum:o,graph:e})}})}getDefaultStyle(t){return this.defaultStyle[t]||{}}getElementState(t){try{const{model:e}=this.context;return e.getElementState(t)}catch(e){return[]}}getElementStateStyle(t,e,n){var i,a;const{options:s}=this.context,o=((a=(i=s[t])===null||i===void 0?void 0:i.state)===null||a===void 0?void 0:a[e])||{};return db(o,n)}computeElementStatesStyle(t,e,n){this.stateStyle[Pt(n.datum)]=Object.assign({},...e.map(i=>this.getElementStateStyle(t,i,n)))}computeElementsStatesStyle(t){const{graph:e}=this.context;this.forEachElementData((n,i)=>{const a=i.length;for(let s=0;s<a;s++){const o=i[s];if(t===void 0||t.includes(Pt(o))){const A=this.getElementState(Pt(o));this.computeElementStatesStyle(n,A,{datum:o,graph:e})}}})}getStateStyle(t){return this.stateStyle[t]||{}}computeStyle(t,e){t&&["translate","zIndex"].includes(t)||(this.computePaletteStyle(),this.computeElementsDefaultStyle(e),this.computeElementsStatesStyle(e))}getElement(t){return this.elementMap[t]}getNodes(){return this.context.model.getNodeData().map(({id:t})=>this.elementMap[t])}getEdges(){return this.context.model.getEdgeData().map(t=>this.elementMap[Pt(t)])}getCombos(){return this.context.model.getComboData().map(({id:t})=>this.elementMap[t])}getElementComputedStyle(t,e){const n=Pt(e),i=this.getThemeStyle(t),a=this.getPaletteStyle(t,n),s=e.style||{},o=this.getDefaultStyle(n),A=this.getThemeStateStyle(t,this.getElementState(n)),l=this.getStateStyle(n),c=Object.assign({},i,a,s,o,A,l);if(t==="combo"){const u=this.context.model.getChildrenData(n),f=!!c.collapsed?[]:u.map(Pt).filter(d=>this.getElement(d));Object.assign(c,{childrenNode:f,childrenData:u})}return c}getDrawData(t){this.init();const e=this.computeChangesAndDrawData(t);if(!e)return null;const{type:n="draw",stage:i=n}=t;return this.markDestroyElement(e.drawData),this.computeStyle(i),{type:n,stage:i,data:e}}draw(t={animation:!0}){const e=this.getDrawData(t);if(!e)return;const{data:{drawData:{add:n,update:i,remove:a}}}=e;return this.destroyElements(a,t),this.createElements(n,t),this.updateElements(i,t),this.setAnimationTask(t,e)}preLayoutDraw(){return _h(this,arguments,void 0,function*(t={animation:!0}){var e,n;const i=this.getDrawData(t);if(!i)return;const{data:{drawData:a}}=i;yield(n=(e=this.context.layout)===null||e===void 0?void 0:e.preLayout)===null||n===void 0?void 0:n.call(e,a);const{add:s,update:o,remove:A}=a;return this.destroyElements(A,t),this.createElements(s,t),this.updateElements(o,t),this.setAnimationTask(t,i)})}setAnimationTask(t,e){const{animation:n,silence:i}=t,{data:{dataChanges:a,drawData:s},stage:o,type:A}=e;return this.context.animation.animate(n,i?{}:{before:()=>this.emit(new Xr(ce.BEFORE_DRAW,{dataChanges:a,animation:n,stage:o,render:A==="render"}),t),beforeAnimate:l=>this.emit(new rs(ce.BEFORE_ANIMATE,ua.DRAW,l,s),t),afterAnimate:l=>this.emit(new rs(ce.AFTER_ANIMATE,ua.DRAW,l,s),t),after:()=>this.emit(new Xr(ce.AFTER_DRAW,{dataChanges:a,animation:n,stage:o,render:A==="render",firstRender:this.context.graph.rendered===!1}),t)})}computeChangesAndDrawData(t){const{model:e}=this.context,n=e.getChanges(),i=Hy(n);if(i.length===0)return null;const{NodeAdded:a=[],NodeUpdated:s=[],NodeRemoved:o=[],EdgeAdded:A=[],EdgeUpdated:l=[],EdgeRemoved:c=[],ComboAdded:u=[],ComboUpdated:h=[],ComboRemoved:f=[]}=Sd(i,y=>y.type),d=y=>new Map(y.map(E=>{const C=E.value;return[Pt(C),C]})),g={add:{nodes:d(a),edges:d(A),combos:d(u)},update:{nodes:d(s),edges:d(l),combos:d(h)},remove:{nodes:d(o),edges:d(c),combos:d(f)}},v=this.transformData(g,t);return e.clearChanges(),{dataChanges:n,drawData:v}}transformData(t,e){const n=this.context.transform.getTransformInstance();return Object.values(n).reduce((i,a)=>a.beforeDraw(i,e),t)}createElement(t,e,n){var i;const a=Pt(e);if(this.getElement(a))return;const o=this.getElementType(t,e),A=this.getElementComputedStyle(t,e),l=Fo(t,o);if(!l)return ha.warn(`The element ${o} of ${t} is not registered.`);this.emit(new Yc(ce.BEFORE_ELEMENT_CREATE,t,e),n);const c=this.container.appendChild(new l({id:a,context:this.context,style:A}));this.shapeTypeMap[a]=o,this.elementMap[a]=c;const{stage:u="enter"}=n;(i=this.context.animation)===null||i===void 0||i.add({element:c,elementType:t,stage:u,originalStyle:Object.assign({},c.attributes),updatedStyle:A},{after:()=>{var h;this.emit(new Yc(ce.AFTER_ELEMENT_CREATE,t,e),n),(h=c.onCreate)===null||h===void 0||h.call(c)}})}createElements(t,e){const{nodes:n,edges:i,combos:a}=t;[["node",n],["combo",a],["edge",i]].forEach(([o,A])=>{A.forEach(l=>this.createElement(o,l,e))})}getUpdateStageStyle(t,e,n){const{stage:i="update"}=n;if(i==="translate")if(t==="node"||t==="combo"){const{style:{x:a=0,y:s=0,z:o=0}={}}=e;return{x:a,y:s,z:o}}else return{};return this.getElementComputedStyle(t,e)}updateElement(t,e,n){var i;const a=Pt(e),{stage:s="update"}=n,o=this.getElement(a);if(!o)return()=>null;this.emit(new Yc(ce.BEFORE_ELEMENT_UPDATE,t,e),n);const A=this.getElementType(t,e),l=this.getUpdateStageStyle(t,e,n);this.shapeTypeMap[a]!==A&&(o.destroy(),delete this.shapeTypeMap[a],delete this.elementMap[a],this.createElement(t,e,{animation:!1,silence:!0}));const c=s!=="visibility"?s:l.visibility==="hidden"?"hide":"show";c==="hide"&&delete l.visibility,(i=this.context.animation)===null||i===void 0||i.add({element:o,elementType:t,stage:c,originalStyle:Object.assign({},o.attributes),updatedStyle:l},{before:()=>{const u=this.elementMap[a];s!=="collapse"&&uy(u,l),s==="visibility"&&(_H(u,"opacity")||RH(u,"opacity"),this.visibilityCache.set(u,c==="show"?"visible":"hidden"),c==="show"&&vl(u,"visible"))},after:()=>{var u;const h=this.elementMap[a];s==="collapse"&&uy(h,l),c==="hide"&&vl(h,this.visibilityCache.get(h)),this.emit(new Yc(ce.AFTER_ELEMENT_UPDATE,t,e),n),(u=h.onUpdate)===null||u===void 0||u.call(h)}})}updateElements(t,e){const{nodes:n,edges:i,combos:a}=t;[["node",n],["combo",a],["edge",i]].forEach(([o,A])=>{A.forEach(l=>this.updateElement(o,l,e))})}markDestroyElement(t){Object.values(t.remove).forEach(e=>{e.forEach(n=>{const i=Pt(n),a=this.getElement(i);a&&Qk(a)})})}destroyElement(t,e,n){var i;const{stage:a="exit"}=n,s=Pt(e),o=this.elementMap[s];if(!o)return()=>null;this.emit(new Yc(ce.BEFORE_ELEMENT_DESTROY,t,e),n),(i=this.context.animation)===null||i===void 0||i.add({element:o,elementType:t,stage:a,originalStyle:Object.assign({},o.attributes),updatedStyle:{}},{after:()=>{var A;this.clearElement(s),o.destroy(),(A=o.onDestroy)===null||A===void 0||A.call(o),this.emit(new Yc(ce.AFTER_ELEMENT_DESTROY,t,e),n)}})}destroyElements(t,e){const{nodes:n,edges:i,combos:a}=t;[["combo",a],["edge",i],["node",n]].forEach(([o,A])=>{A.forEach(l=>this.destroyElement(o,l,e))})}clearElement(t){delete this.paletteStyle[t],delete this.defaultStyle[t],delete this.stateStyle[t],delete this.elementMap[t],delete this.shapeTypeMap[t]}alignLayoutResultToElement(t,e){var n,i;const a=(n=t.nodes)===null||n===void 0?void 0:n.find(s=>Pt(s)===e);if(a){const s=Ai(this.context.model.getNodeLikeDatum(e)),o=Ai(a),A=tr(s,o);(i=t.nodes)===null||i===void 0||i.forEach(l=>{var c,u,h;!((c=l.style)===null||c===void 0)&&c.x&&(l.style.x+=A[0]),!((u=l.style)===null||u===void 0)&&u.y&&(l.style.y+=A[1]),!((h=l.style)===null||h===void 0)&&h.z&&(l.style.z+=A[2]||0)})}}collapseNode(t,e){return _h(this,void 0,void 0,function*(){var n;const{animation:i}=e,{model:a}=this.context,s=this.computeChangesAndDrawData({stage:"collapse",animation:i});if(!s)return;const{drawData:o}=s,{add:A,remove:l,update:c}=o;this.markDestroyElement(o);const u={animation:i,stage:"collapse",data:o};this.destroyElements(l,u),this.createElements(A,u),this.updateElements(c,u),yield(n=this.context.animation.animate(i,{beforeAnimate:h=>this.emit(new rs(ce.BEFORE_ANIMATE,ua.COLLAPSE,h,o),u),afterAnimate:h=>this.emit(new rs(ce.AFTER_ANIMATE,ua.COLLAPSE,h,o),u)},{collapse:{target:t,descendants:Array.from(l.nodes).map(([,h])=>Pt(h)),position:Ai(c.nodes.get(t))}}))===null||n===void 0?void 0:n.finished})}expandNode(t,e){return _h(this,void 0,void 0,function*(){var n;const{model:i,layout:a}=this.context,{animation:s,align:o}=e,A=Ai(i.getNodeData([t])[0]),l=this.computeChangesAndDrawData({stage:"expand",animation:s});if(this.createElements(l.drawData.add,{animation:!1,stage:"expand",target:t}),this.context.animation.clear(),this.computeStyle("expand"),!l)return;const{drawData:c}=l,{update:u,add:h}=c,f={animation:s,stage:"expand",data:c};h.edges.forEach(d=>u.edges.set(Pt(d),d)),h.nodes.forEach(d=>u.nodes.set(Pt(d),d)),this.updateElements(u,f),yield(n=this.context.animation.animate(s,{beforeAnimate:d=>this.emit(new rs(ce.BEFORE_ANIMATE,ua.EXPAND,d,c),f),afterAnimate:d=>this.emit(new rs(ce.AFTER_ANIMATE,ua.EXPAND,d,c),f)},{expand:{target:t,descendants:Array.from(h.nodes).map(([,d])=>Pt(d)),position:A}}))===null||n===void 0?void 0:n.finished})}collapseCombo(t,e){return _h(this,void 0,void 0,function*(){var n;const{model:i,element:a}=this.context;if(i.getAncestorsData(t,nr).some(g=>fa(g)))return;const s=a.getElement(t),o=s.getComboPosition(Object.assign(Object.assign({},s.attributes),{collapsed:!0})),A=this.computeChangesAndDrawData({stage:"collapse",animation:e});if(!A)return;const{dataChanges:l,drawData:c}=A;this.markDestroyElement(c);const{update:u,remove:h}=c,f={animation:e,stage:"collapse",data:c};this.destroyElements(h,f),this.updateElements(u,f);const d=g=>Array.from(g).map(([,v])=>Pt(v));yield(n=this.context.animation.animate(e,{before:()=>this.emit(new Xr(ce.BEFORE_DRAW,{dataChanges:l,animation:e}),f),beforeAnimate:g=>this.emit(new rs(ce.BEFORE_ANIMATE,ua.COLLAPSE,g,c),f),afterAnimate:g=>this.emit(new rs(ce.AFTER_ANIMATE,ua.COLLAPSE,g,c),f),after:()=>this.emit(new Xr(ce.AFTER_DRAW,{dataChanges:l,animation:e}),f)},{collapse:{target:t,descendants:[...d(h.nodes),...d(h.combos)],position:o}}))===null||n===void 0?void 0:n.finished})}expandCombo(t,e){return _h(this,void 0,void 0,function*(){var n;const{model:i}=this.context,a=Ai(i.getComboData([t])[0]);this.computeStyle("expand");const s=this.computeChangesAndDrawData({stage:"expand",animation:e});if(!s)return;const{dataChanges:o,drawData:A}=s,{add:l,update:c}=A,u={animation:e,stage:"expand",data:A,target:t};this.createElements(l,u),this.updateElements(c,u);const h=f=>Array.from(f).map(([,d])=>Pt(d));yield(n=this.context.animation.animate(e,{before:()=>this.emit(new Xr(ce.BEFORE_DRAW,{dataChanges:o,animation:e}),u),beforeAnimate:f=>this.emit(new rs(ce.BEFORE_ANIMATE,ua.EXPAND,f,A),u),afterAnimate:f=>this.emit(new rs(ce.AFTER_ANIMATE,ua.EXPAND,f,A),u),after:()=>this.emit(new Xr(ce.AFTER_DRAW,{dataChanges:o,animation:e}),u)},{expand:{target:t,descendants:[...h(l.nodes),...h(l.combos)],position:a}}))===null||n===void 0?void 0:n.finished})}clear(){this.container.destroy(),this.initContainer(),this.elementMap={},this.shapeTypeMap={},this.defaultStyle={},this.stateStyle={},this.paletteStyle={}}destroy(){this.clear(),this.container.destroy(),this.context={}}}const pS=Symbol("Comlink.proxy"),YH=Symbol("Comlink.endpoint"),mS=Symbol("Comlink.releaseProxy"),Q1=Symbol("Comlink.finalizer"),Iv=Symbol("Comlink.thrown"),yS=r=>typeof r=="object"&&r!==null||typeof r=="function",XH={canHandle:r=>yS(r)&&r[pS],serialize(r){const{port1:t,port2:e}=new MessageChannel;return ES(r,t),[e,[e]]},deserialize(r){return r.start(),bS(r)}},JH={canHandle:r=>yS(r)&&Iv in r,serialize({value:r}){let t;return r instanceof Error?t={isError:!0,value:{message:r.message,name:r.name,stack:r.stack}}:t={isError:!1,value:r},[t,[]]},deserialize(r){throw r.isError?Object.assign(new Error(r.value.message),r.value):r.value}},wS=new Map([["proxy",XH],["throw",JH]]);function qH(r,t){for(const e of r)if(t===e||e==="*"||e instanceof RegExp&&e.test(t))return!0;return!1}function ES(r,t=globalThis,e=["*"]){t.addEventListener("message",function n(i){if(!i||!i.data)return;if(!qH(e,i.origin)){console.warn(`Invalid origin '${i.origin}' for comlink proxy`);return}const{id:a,type:s,path:o}=Object.assign({path:[]},i.data),A=(i.data.argumentList||[]).map(Ql);let l;try{const c=o.slice(0,-1).reduce((h,f)=>h[f],r),u=o.reduce((h,f)=>h[f],r);switch(s){case"GET":l=u;break;case"SET":c[o.slice(-1)[0]]=Ql(i.data.value),l=!0;break;case"APPLY":l=u.apply(c,A);break;case"CONSTRUCT":{const h=new u(...A);l=i6(h)}break;case"ENDPOINT":{const{port1:h,port2:f}=new MessageChannel;ES(r,f),l=r6(h,[h])}break;case"RELEASE":l=void 0;break;default:return}}catch(c){l={value:c,[Iv]:0}}Promise.resolve(l).catch(c=>({value:c,[Iv]:0})).then(c=>{const[u,h]=Qv(c);t.postMessage(Object.assign(Object.assign({},u),{id:a}),h),s==="RELEASE"&&(t.removeEventListener("message",n),BS(t),Q1 in r&&typeof r[Q1]=="function"&&r[Q1]())}).catch(c=>{const[u,h]=Qv({value:new TypeError("Unserializable return value"),[Iv]:0});t.postMessage(Object.assign(Object.assign({},u),{id:a}),h)})}),t.start&&t.start()}function $H(r){return r.constructor.name==="MessagePort"}function BS(r){$H(r)&&r.close()}function bS(r,t){const e=new Map;return r.addEventListener("message",function(i){const{data:a}=i;if(!a||!a.id)return;const s=e.get(a.id);if(s)try{s(a)}finally{e.delete(a.id)}}),U1(r,e,[],t)}function Lv(r){if(r)throw new Error("Proxy has been released and is not useable")}function xS(r){return qc(r,new Map,{type:"RELEASE"}).then(()=>{BS(r)})}const Nv=new WeakMap,kv="FinalizationRegistry"in globalThis&&new FinalizationRegistry(r=>{const t=(Nv.get(r)||0)-1;Nv.set(r,t),t===0&&xS(r)});function t6(r,t){const e=(Nv.get(t)||0)+1;Nv.set(t,e),kv&&kv.register(r,t,r)}function e6(r){kv&&kv.unregister(r)}function U1(r,t,e=[],n=function(){}){let i=!1;const a=new Proxy(n,{get(s,o){if(Lv(i),o===mS)return()=>{e6(a),xS(r),t.clear(),i=!0};if(o==="then"){if(e.length===0)return{then:()=>a};const A=qc(r,t,{type:"GET",path:e.map(l=>l.toString())}).then(Ql);return A.then.bind(A)}return U1(r,t,[...e,o])},set(s,o,A){Lv(i);const[l,c]=Qv(A);return qc(r,t,{type:"SET",path:[...e,o].map(u=>u.toString()),value:l},c).then(Ql)},apply(s,o,A){Lv(i);const l=e[e.length-1];if(l===YH)return qc(r,t,{type:"ENDPOINT"}).then(Ql);if(l==="bind")return U1(r,t,e.slice(0,-1));const[c,u]=CS(A);return qc(r,t,{type:"APPLY",path:e.map(h=>h.toString()),argumentList:c},u).then(Ql)},construct(s,o){Lv(i);const[A,l]=CS(o);return qc(r,t,{type:"CONSTRUCT",path:e.map(c=>c.toString()),argumentList:A},l).then(Ql)}});return t6(a,r),a}function n6(r){return Array.prototype.concat.apply([],r)}function CS(r){const t=r.map(Qv);return[t.map(e=>e[0]),n6(t.map(e=>e[1]))]}const SS=new WeakMap;function r6(r,t){return SS.set(r,t),r}function i6(r){return Object.assign(r,{[pS]:!0})}function kG(r,t=globalThis,e="*"){return{postMessage:(n,i)=>r.postMessage(n,e,i),addEventListener:t.addEventListener.bind(t),removeEventListener:t.removeEventListener.bind(t)}}function Qv(r){for(const[t,e]of wS)if(e.canHandle(r)){const[n,i]=e.serialize(r);return[{type:"HANDLER",name:t,value:n},i]}return[{type:"RAW",value:r},SS.get(r)||[]]}function Ql(r){switch(r.type){case"HANDLER":return wS.get(r.name).deserialize(r.value);case"RAW":return r.value}}function qc(r,t,e,n){return new Promise(i=>{const a=a6();t.set(a,i),r.start&&r.start(),r.postMessage(Object.assign({id:a},e),n)})}function a6(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}class s6 extends Bg{constructor(t,e,n){super(),this.graph=t,this.layout=e,this.options=n,this.spawnWorker()}spawnWorker(){this.proxy=bS(new Worker(new URL(M.p+M.u(2004),M.b),{type:void 0})),this.running&&(this.running=!1,this.execute())}execute(){var t;return(0,j.mG)(this,void 0,void 0,function*(){if(this.running)return this;this.running=!0;const e=this.layout.options,{onTick:n}=e,i=(0,j._T)(e,["onTick"]),a={};Object.keys(i).forEach(l=>{jt(i[l])||(a[l]=i[l])});const s={layout:{id:this.layout.id,options:a,iterations:(t=this.options)===null||t===void 0?void 0:t.iterations},nodes:this.graph.getAllNodes(),edges:this.graph.getAllEdges()},o=new Float32Array([0]),[A]=yield this.proxy.calculateLayout(s,[o]);return A})}stop(){return this.running=!1,this.proxy.stopLayout(),this}kill(){this.proxy[mS]()}isRunning(){return this.running}}var $c=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})},o6=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};class A6{get presetOptions(){return{animation:!!rB(this.context.options,!0)}}get options(){const{options:t}=this.context;return t.layout}constructor(t){this.instances=[],this.context=t}getLayoutInstance(){return this.instances}preLayout(t){return $c(this,void 0,void 0,function*(){var e,n,i,a;const{graph:s,model:o}=this.context,{add:A}=t;ci(s,new Xr(ce.BEFORE_LAYOUT,{type:"pre"}));const l=yield(e=this.context.layout)===null||e===void 0?void 0:e.simulate();(n=l==null?void 0:l.nodes)===null||n===void 0||n.forEach(c=>{const u=Pt(c),h=A.nodes.get(u);o.syncNodeLikeDatum(c),h&&Object.assign(h.style,c.style)}),(i=l==null?void 0:l.edges)===null||i===void 0||i.forEach(c=>{const u=Pt(c),h=A.edges.get(u);o.syncEdgeDatum(c),h&&Object.assign(h.style,c.style)}),(a=l==null?void 0:l.combos)===null||a===void 0||a.forEach(c=>{const u=Pt(c),h=A.combos.get(u);o.syncNodeLikeDatum(c),h&&Object.assign(h.style,c.style)}),ci(s,new Xr(ce.AFTER_LAYOUT,{type:"pre"})),this.transformDataAfterLayout("pre",t)})}postLayout(){return $c(this,arguments,void 0,function*(t=this.options){if(!t)return;const e=Array.isArray(t)?t:[t],{graph:n}=this.context;ci(n,new Xr(ce.BEFORE_LAYOUT,{type:"post"}));for(let i=0;i<e.length;i++){const a=e[i],s=this.getLayoutData(a),o=Object.assign(Object.assign({},this.presetOptions),a);ci(n,new Xr(ce.BEFORE_STAGE_LAYOUT,{options:o,index:i}));const A=yield this.stepLayout(s,o,i);ci(n,new Xr(ce.AFTER_STAGE_LAYOUT,{options:o,index:i})),a.animation||this.updateElementPosition(A,!1)}ci(n,new Xr(ce.AFTER_LAYOUT,{type:"post"})),this.transformDataAfterLayout("post")})}transformDataAfterLayout(t,e){const n=this.context.transform.getTransformInstance();Object.values(n).forEach(i=>i.afterLayout(t,e))}simulate(){return $c(this,void 0,void 0,function*(){if(!this.options)return{};const t=Array.isArray(this.options)?this.options:[this.options];let e={};for(let n=0;n<t.length;n++){const i=t[n],a=this.getLayoutData(i);e=yield this.stepLayout(a,Object.assign(Object.assign(Object.assign({},this.presetOptions),i),{animation:!1}),n)}return e})}stepLayout(t,e,n){return $c(this,void 0,void 0,function*(){return Vk(e)?yield this.treeLayout(t,e,n):yield this.graphLayout(t,e,n)})}graphLayout(t,e,n){return $c(this,void 0,void 0,function*(){const{animation:i,enableWorker:a,iterations:s=300}=e,o=this.initGraphLayout(e);if(!o)return{};if(this.instances[n]=o,this.instance=o,a){const l=o;return this.supervisor=new s6(l.graphData2LayoutModel(t),l.instance,{iterations:s}),Cg(yield this.supervisor.execute())}if(Fy(o))return i?yield o.execute(t,{onTick:l=>{this.updateElementPosition(l,!1)}}):(o.execute(t),o.stop(),o.tick(s));const A=yield o.execute(t);if(i){const l=this.updateElementPosition(A,i);yield l==null?void 0:l.finished}return A})}treeLayout(t,e,n){return $c(this,void 0,void 0,function*(){const{type:i,animation:a}=e,s=Fo("layout",i);if(!s)return{};const{nodes:o=[],edges:A=[]}=t,l=new Gr({nodes:o.map(d=>({id:Pt(d),data:d.data||{}})),edges:A.map(d=>({id:Pt(d),source:d.source,target:d.target,data:d.data||{}}))});WH(l);const c={nodes:[],edges:[]},u={nodes:[],edges:[]};l.getRoots(Ia).forEach(d=>{yl(d,C=>{C.children=l.getSuccessors(C.id)},C=>l.getSuccessors(C.id),"TB");const g=s(d,e),{x:v,y,z:E=0}=g;yl(g,C=>{const{id:I,x:R,y:K,z:W=0}=C;c.nodes.push({id:I,style:{x:v,y,z:E}}),u.nodes.push({id:I,style:{x:R,y:K,z:W}})},C=>C.children,"TB")});const f=this.inferTreeLayoutOffset(u);if(MS(u,f),a){MS(c,f),this.updateElementPosition(c,!1);const d=this.updateElementPosition(u,a);yield d==null?void 0:d.finished}return u})}inferTreeLayoutOffset(t){var e;let[n,i]=[1/0,-1/0],[a,s]=[1/0,-1/0];(e=t.nodes)===null||e===void 0||e.forEach(g=>{const{x:v=0,y=0}=g.style||{};n=Math.min(n,v),i=Math.max(i,v),a=Math.min(a,y),s=Math.max(s,y)});const{canvas:o}=this.context,A=o.getSize(),[l,c]=o.getCanvasByViewport([0,0]),[u,h]=o.getCanvasByViewport(A);if(n>=l&&i<=u&&a>=c&&s<=h)return[0,0];const f=(l+u)/2,d=(c+h)/2;return[f-(n+i)/2,d-(a+s)/2]}stopLayout(){this.instance&&Fy(this.instance)&&(this.instance.stop(),this.instance=void 0),this.supervisor&&(this.supervisor.stop(),this.supervisor=void 0),this.animationResult&&(this.animationResult.finish(),this.animationResult=void 0)}getLayoutData(t){const{nodeFilter:e=()=>!0,comboFilter:n=()=>!0,preLayout:i=!1,isLayoutInvisibleNodes:a=!1}=t,{nodes:s,edges:o,combos:A}=this.context.model.getData(),{element:l,model:c}=this.context,u=y=>l.getElement(y),h=i?y=>{var E;return!a&&(((E=y.style)===null||E===void 0?void 0:E.visibility)==="hidden"||c.getAncestorsData(y.id,Ia).some(fa)||c.getAncestorsData(y.id,nr).some(fa))?!1:e(y)}:y=>{const E=Pt(y),C=u(E);return!C||Bh(C)?!1:e(y)},f=s.filter(h),d=A.filter(n),g=new Map(f.map(y=>[Pt(y),y]));d.forEach(y=>g.set(Pt(y),y));const v=o.filter(({source:y,target:E})=>g.has(y)&&g.has(E));return{nodes:f,edges:v,combos:d}}initGraphLayout(t){var e;const{element:n,viewport:i}=this.context,{type:a,enableWorker:s,animation:o,iterations:A}=t,l=o6(t,["type","enableWorker","animation","iterations"]),[c,u]=i.getCanvasSize(),h=[c/2,u/2],f=(e=t==null?void 0:t.nodeSize)!==null&&e!==void 0?e:E=>{const C=n==null?void 0:n.getElement(E.id);return C?C.attributes.size:n==null?void 0:n.getElementComputedStyle("node",E).size},d=Fo("layout",a);if(!d)return ha.warn(`The layout of ${a} is not registered.`);const g=Object.getPrototypeOf(d.prototype)===xg.prototype?d:Zk(d,this.context),v=new g(this.context),y={nodeSize:f,width:c,height:u,center:h};switch(v.id){case"d3-force":case"d3-force-3d":Object.assign(y,{center:{x:c/2,y:u/2,z:0}});break;default:break}return Ci(v.options,y,l),v}updateElementPosition(t,e){const{model:n,element:i}=this.context;return i?(n.updateData(t),i.draw({animation:e,silence:!0})):null}destroy(){var t;this.stopLayout(),this.context={},(t=this.supervisor)===null||t===void 0||t.kill(),this.supervisor=void 0,this.instance=void 0,this.instances=[],this.animationResult=void 0}}const MS=(r,t)=>{var e;const[n,i]=t;(e=r.nodes)===null||e===void 0||e.forEach(a=>{if(a.style){const{x:s=0,y:o=0}=a.style;a.style.x=s+n,a.style.y=o+i}else a.style={x:n,y:i}})};function l6(r){return[c6].reduce((e,n)=>n(e),r)}function c6(r){return!r.layout||Array.isArray(r.layout)||"preLayout"in r.layout||["antv-dagre","combo-combined","compact-box","circular","concentric","dagre","fishbone","grid","indented","mds","radial","random","snake","dendrogram","mindmap"].includes(r.layout.type)&&(r.layout.preLayout=!0),r}class u6 extends _m{constructor(t){super(t),this.category="plugin",this.setPlugins(this.context.options.plugins||[])}setPlugins(t){this.setExtensions(t)}getPluginInstance(t){const e=this.extensionMap[t];if(e)return e;ha.warn(`Cannot find the plugin ${t}, will try to find it by type.`);const n=this.extensions.find(i=>i.type===t);if(n)return this.extensionMap[n.key]}}const Uv=["update-related-edges","collapse-expand-node","collapse-expand-combo","get-edge-actual-ends","arrange-draw-order"];class h6 extends _m{constructor(t){super(t),this.category="transform",this.setTransforms(this.context.options.transforms||[])}getTransforms(){}setTransforms(t){this.setExtensions([...Uv.slice(0,Uv.length-1),...t,Uv[Uv.length-1]])}getTransformInstance(t){return t?this.extensionMap[t]:this.extensionMap}}var Hh=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class f6{get padding(){return La(this.context.options.padding)}get paddingOffset(){const[t,e,n,i]=this.padding,[a,s,o]=[(i-e)/2,(t-n)/2,0];return[a,s,o]}constructor(t){this.landmarkCounter=0,this.context=t;const[e,n]=this.paddingOffset,{zoom:i,rotation:a,x:s=e,y:o=n}=t.options;this.transform({mode:"absolute",scale:i,translate:[s,o],rotate:a},!1)}get camera(){const{canvas:t}=this.context;return new Proxy(t.getCamera(),{get:(e,n)=>{const a=Object.entries(t.getLayers()).filter(([o])=>!["main"].includes(o)).map(([,o])=>o.getCamera()),s=e[n];if(typeof s=="function")return(...o)=>{const A=s.apply(e,o);return a.forEach(l=>{l[n].apply(l,o)}),A}}})}createLandmark(t){return this.camera.createLandmark(`landmark-${this.landmarkCounter++}`,t)}getAnimation(t){const e=rB(this.context.options,t);return e?Bl(Object.assign({},e),["easing","duration"]):!1}getCanvasSize(){const{canvas:t}=this.context,{width:e=0,height:n=0}=t.getConfig();return[e,n]}getCanvasCenter(){const{canvas:t}=this.context,{width:e=0,height:n=0}=t.getConfig();return[e/2,n/2,0]}getViewportCenter(){const[t,e]=this.camera.getPosition();return[t,e,0]}getGraphCenter(){return this.context.graph.getViewportByCanvas(this.getCanvasCenter())}getZoom(){return this.camera.getZoom()}getRotation(){return this.camera.getRoll()}getTranslateOptions(t){const{camera:e}=this,{mode:n,translate:i=[]}=t,a=this.getZoom(),s=e.getPosition(),o=e.getFocalPoint(),[A,l]=this.getCanvasCenter(),[c=0,u=0,h=0]=i,f=bs([-c,-u,-h],a);return n==="relative"?{position:tn(s,f),focalPoint:tn(o,f)}:{position:tn([A,l,s[2]],f),focalPoint:tn([A,l,o[2]],f)}}getRotateOptions(t){const{mode:e,rotate:n=0}=t;return{roll:e==="relative"?this.camera.getRoll()+n:n}}getZoomOptions(t){const{zoomRange:e}=this.context.options,n=this.camera.getZoom(),{mode:i,scale:a=1}=t;return hr(i==="relative"?n*a:a,...e)}transform(t,e){return Hh(this,void 0,void 0,function*(){const{graph:n}=this.context,{translate:i,rotate:a,scale:s,origin:o}=t;this.cancelAnimation();const A=this.getAnimation(e);if(ci(n,new Fv(ce.BEFORE_TRANSFORM,t)),!a&&s&&!i&&o&&!A){this.camera.setZoomByViewportPoint(this.getZoomOptions(t),o),ci(n,new Fv(ce.AFTER_TRANSFORM,t));return}const l={};if(i&&Object.assign(l,this.getTranslateOptions(t)),we(a)&&Object.assign(l,this.getRotateOptions(t)),we(s)&&Object.assign(l,{zoom:this.getZoomOptions(t)}),A)return ci(n,new rs(ce.BEFORE_ANIMATE,ua.TRANSFORM,null,t)),new Promise(c=>{this.transformResolver=c,this.camera.gotoLandmark(this.createLandmark(l),Object.assign(Object.assign({},A),{onfinish:()=>{ci(n,new rs(ce.AFTER_ANIMATE,ua.TRANSFORM,null,t)),ci(n,new Fv(ce.AFTER_TRANSFORM,t)),this.transformResolver=void 0,c()}}))});this.camera.gotoLandmark(this.createLandmark(l),{duration:0}),ci(n,new Fv(ce.AFTER_TRANSFORM,t))})}fitView(t,e){return Hh(this,void 0,void 0,function*(){const[n,i,a,s]=this.padding,{when:o="always",direction:A="both"}=t||{},[l,c]=this.context.canvas.getSize(),u=l-s-i,h=c-n-a,f=this.context.canvas.getBounds(),d=this.getBBoxInViewport(f),[g,v]=gA(d),y=A==="x"&&g>=u||A==="y"&&v>=h||A==="both"&&g>=u&&v>=h;if(o==="overflow"&&!y)return yield this.fitCenter({animation:e});const E=u/g,C=h/v,I=A==="x"?E:A==="y"?C:Math.min(E,C),R=this.getAnimation(e);Number.isFinite(I)&&(yield this.transform({mode:"relative",scale:I,translate:tn(tr(this.getCanvasCenter(),this.getBBoxInViewport(f).center),bs(this.paddingOffset,I))},R))})}fitCenter(t){return Hh(this,void 0,void 0,function*(){const e=this.context.canvas.getBounds();yield this.focus(e,t)})}focusElements(t){return Hh(this,arguments,void 0,function*(e,n={}){const{element:i}=this.context;if(!i)return;const a=o=>n.shapes?o.getShape(n.shapes).getRenderBounds():o.getRenderBounds(),s=oh(e.map(o=>a(i.getElement(o))));yield this.focus(s,n)})}focus(t,e){return Hh(this,void 0,void 0,function*(){const n=this.context.graph.getViewportByCanvas(t.center),i=e.position||this.getCanvasCenter(),a=tr(i,n);yield this.transform({mode:"relative",translate:tn(a,this.paddingOffset)},e.animation)})}getBBoxInViewport(t){const{min:e,max:n}=t,{graph:i}=this.context,[a,s]=i.getViewportByCanvas(e),[o,A]=i.getViewportByCanvas(n),l=new Yn;return l.setMinMax([a,s,0],[o,A,0]),l}isInViewport(t,e=!1,n=0){const{graph:i}=this.context,a=this.getCanvasSize(),[s,o]=i.getCanvasByViewport([0,0]),[A,l]=i.getCanvasByViewport(a);let c=new Yn;return c.setMinMax([s,o,0],[A,l,0]),n&&(c=pA(c,n)),Ic(t)?ws(t,c):e?xO(t,c):c.intersects(t)}cancelAnimation(){var t,e;!((t=this.camera.landmarks)===null||t===void 0)&&t.length&&this.camera.cancelLandmarkAnimation(),(e=this.transformResolver)===null||e===void 0||e.call(this)}}var ar=function(r,t,e,n){function i(a){return a instanceof e?a:new e(function(s){s(a)})}return new(e||(e=Promise))(function(a,s){function o(c){try{l(n.next(c))}catch(u){s(u)}}function A(c){try{l(n.throw(c))}catch(u){s(u)}}function l(c){c.done?a(c.value):i(c.value).then(o,A)}l((n=n.apply(r,t||[])).next())})};class Pv extends Bg{constructor(t){var e;super(),this.options={},this.rendered=!1,this.destroyed=!1,this.context={model:new ZH},this.isCollapsingExpanding=!1,this.onResize=bh(()=>{this.resize()},300),this._setOptions(Object.assign({},Pv.defaultOptions,t),!0),this.context.graph=this,this.options.autoResize&&((e=globalThis.addEventListener)===null||e===void 0||e.call(globalThis,"resize",this.onResize))}getOptions(){return this.options}setOptions(t){this._setOptions(t,!1)}_setOptions(t,e){if(this.updateCanvas(t),Object.assign(this.options,l6(t)),e){const{data:h}=t;h&&this.addData(h);return}const{behaviors:n,combo:i,data:a,edge:s,layout:o,node:A,plugins:l,theme:c,transforms:u}=t;n&&this.setBehaviors(n),a&&this.setData(a),A&&this.setNode(A),s&&this.setEdge(s),i&&this.setCombo(i),o&&this.setLayout(o),c&&this.setTheme(c),l&&this.setPlugins(l),u&&this.setTransforms(u)}getSize(){return this.context.canvas?this.context.canvas.getSize():[this.options.width||0,this.options.height||0]}setSize(t,e){t&&(this.options.width=t),e&&(this.options.height=e),this.resize(t,e)}setZoomRange(t){this.options.zoomRange=t}getZoomRange(){return this.options.zoomRange}setNode(t){this.options.node=t,this.context.model.refreshData()}setEdge(t){this.options.edge=t,this.context.model.refreshData()}setCombo(t){this.options.combo=t,this.context.model.refreshData()}getTheme(){return this.options.theme}setTheme(t){this.options.theme=jt(t)?t(this.getTheme()):t}setLayout(t){this.options.layout=jt(t)?t(this.getLayout()):t}getLayout(){return this.options.layout}setBehaviors(t){var e;this.options.behaviors=jt(t)?t(this.getBehaviors()):t,(e=this.context.behavior)===null||e===void 0||e.setBehaviors(this.options.behaviors)}updateBehavior(t){this.setBehaviors(e=>e.map(n=>typeof n=="object"&&n.key===t.key?Object.assign(Object.assign({},n),t):n))}getBehaviors(){return this.options.behaviors||[]}setPlugins(t){var e;this.options.plugins=jt(t)?t(this.getPlugins()):t,(e=this.context.plugin)===null||e===void 0||e.setPlugins(this.options.plugins)}updatePlugin(t){this.setPlugins(e=>e.map(n=>typeof n=="object"&&n.key===t.key?Object.assign(Object.assign({},n),t):n))}getPlugins(){return this.options.plugins||[]}getPluginInstance(t){return this.context.plugin.getPluginInstance(t)}setTransforms(t){var e;this.options.transforms=jt(t)?t(this.getTransforms()):t,(e=this.context.transform)===null||e===void 0||e.setTransforms(this.options.transforms)}updateTransform(t){this.setTransforms(e=>e.map(n=>typeof n=="object"&&n.key===t.key?Object.assign(Object.assign({},n),t):n)),this.context.model.refreshData()}getTransforms(){return this.options.transforms||[]}getData(){return this.context.model.getData()}hasNode(t){return this.context.model.hasNode(t)}hasEdge(t){return this.context.model.hasEdge(t)}hasCombo(t){return this.context.model.hasCombo(t)}getElementData(t){return Array.isArray(t)?t.map(e=>this.context.model.getElementDataById(e)):this.context.model.getElementDataById(t)}getNodeData(t){return t===void 0?this.context.model.getNodeData():Array.isArray(t)?this.context.model.getNodeData(t):this.context.model.getNodeLikeDatum(t)}getEdgeData(t){return t===void 0?this.context.model.getEdgeData():Array.isArray(t)?this.context.model.getEdgeData(t):this.context.model.getEdgeDatum(t)}getComboData(t){return t===void 0?this.context.model.getComboData():Array.isArray(t)?this.context.model.getComboData(t):this.context.model.getNodeLikeDatum(t)}setData(t){this.context.model.setData(jt(t)?t(this.getData()):t)}addData(t){this.context.model.addData(jt(t)?t(this.getData()):t)}addNodeData(t){this.context.model.addNodeData(jt(t)?t(this.getNodeData()):t)}addEdgeData(t){this.context.model.addEdgeData(jt(t)?t(this.getEdgeData()):t)}addComboData(t){this.context.model.addComboData(jt(t)?t(this.getComboData()):t)}addChildrenData(t,e){this.context.model.addChildrenData(t,e)}updateData(t){this.context.model.updateData(jt(t)?t(this.getData()):t)}updateNodeData(t){this.context.model.updateNodeData(jt(t)?t(this.getNodeData()):t)}updateEdgeData(t){this.context.model.updateEdgeData(jt(t)?t(this.getEdgeData()):t)}updateComboData(t){this.context.model.updateComboData(jt(t)?t(this.getComboData()):t)}removeData(t){this.context.model.removeData(jt(t)?t(this.getData()):t)}removeNodeData(t){this.context.model.removeNodeData(jt(t)?t(this.getNodeData()):t)}removeEdgeData(t){this.context.model.removeEdgeData(jt(t)?t(this.getEdgeData()):t)}removeComboData(t){this.context.model.removeComboData(jt(t)?t(this.getComboData()):t)}getElementType(t){return this.context.model.getElementType(t)}getRelatedEdgesData(t,e="both"){return this.context.model.getRelatedEdgesData(t,e)}getNeighborNodesData(t){return this.context.model.getNeighborNodesData(t)}getAncestorsData(t,e){return this.context.model.getAncestorsData(t,e)}getParentData(t,e){return this.context.model.getParentData(t,e)}getChildrenData(t){return this.context.model.getChildrenData(t)}getDescendantsData(t){return this.context.model.getDescendantsData(t)}getElementDataByState(t,e){return this.context.model.getElementDataByState(t,e)}initCanvas(){return ar(this,void 0,void 0,function*(){var t;if(this.context.canvas)return yield this.context.canvas.ready;const{container:e="container",width:n,height:i,renderer:a,cursor:s,background:o,canvas:A,devicePixelRatio:l=(t=globalThis.devicePixelRatio)!==null&&t!==void 0?t:1}=this.options;if(e instanceof uS)this.context.canvas=e,s&&e.setCursor(s),a&&e.setRenderer(a),yield e.ready;else{const c=gn(e)?document.getElementById(e):e,u=dS(c);this.emit(ce.BEFORE_CANVAS_INIT,{container:c,width:n,height:i});const h=Object.assign(Object.assign({},A),{container:c,width:n||u[0],height:i||u[1],background:o,renderer:a,cursor:s,devicePixelRatio:l}),f=new uS(h);this.context.canvas=f,yield f.ready,this.emit(ce.AFTER_CANVAS_INIT,{canvas:f})}})}updateCanvas(t){var e,n;const{renderer:i,cursor:a,height:s,width:o}=t,A=this.context.canvas;A&&(i&&(this.emit(ce.BEFORE_RENDERER_CHANGE,{renderer:this.options.renderer}),A.setRenderer(i),this.emit(ce.AFTER_RENDERER_CHANGE,{renderer:i})),a&&A.setCursor(a),(we(o)||we(s))&&this.setSize((e=o!=null?o:this.options.width)!==null&&e!==void 0?e:0,(n=s!=null?s:this.options.height)!==null&&n!==void 0?n:0))}initRuntime(){this.context.options=this.options,this.context.batch||(this.context.batch=new GH(this.context)),this.context.plugin||(this.context.plugin=new u6(this.context)),this.context.viewport||(this.context.viewport=new f6(this.context)),this.context.transform||(this.context.transform=new h6(this.context)),this.context.element||(this.context.element=new jH(this.context)),this.context.animation||(this.context.animation=new HH(this.context)),this.context.layout||(this.context.layout=new A6(this.context)),this.context.behavior||(this.context.behavior=new KH(this.context))}prepare(){return ar(this,void 0,void 0,function*(){if(yield Promise.resolve(),this.destroyed){console.error(Oo("The graph instance has been destroyed"));return}yield this.initCanvas(),this.initRuntime()})}render(){return ar(this,void 0,void 0,function*(){if(yield this.prepare(),ci(this,new Xr(ce.BEFORE_RENDER)),this.options.layout)if(!this.rendered&&Wk(this.options.layout)){const t=yield this.context.element.preLayoutDraw({type:"render"});yield Promise.all([t==null?void 0:t.finished,this.autoFit()])}else{const t=this.context.element.draw({type:"render"});yield Promise.all([t==null?void 0:t.finished,this.context.layout.postLayout()]),yield this.autoFit()}else{const t=this.context.element.draw({type:"render"});yield Promise.all([t==null?void 0:t.finished,this.autoFit()])}this.rendered=!0,ci(this,new Xr(ce.AFTER_RENDER))})}draw(){return ar(this,void 0,void 0,function*(){var t;yield this.prepare(),yield(t=this.context.element.draw())===null||t===void 0?void 0:t.finished})}layout(t){return ar(this,void 0,void 0,function*(){yield this.context.layout.postLayout(t)})}stopLayout(){this.context.layout.stopLayout()}clear(){return ar(this,void 0,void 0,function*(){const{model:t,element:e}=this.context;t.setData({}),t.clearChanges(),e==null||e.clear()})}destroy(){var t;ci(this,new Xr(ce.BEFORE_DESTROY));const{layout:e,animation:n,element:i,model:a,canvas:s,behavior:o,plugin:A}=this.context;A==null||A.destroy(),o==null||o.destroy(),e==null||e.destroy(),n==null||n.destroy(),i==null||i.destroy(),a.destroy(),s==null||s.destroy(),this.options={},this.context={},this.off(),(t=globalThis.removeEventListener)===null||t===void 0||t.call(globalThis,"resize",this.onResize),this.destroyed=!0,ci(this,new Xr(ce.AFTER_DESTROY))}getCanvas(){return this.context.canvas}resize(t,e){var n;const i=dS((n=this.context.canvas)===null||n===void 0?void 0:n.getContainer()),a=[t||i[0],e||i[1]];if(!this.context.canvas)return;const s=this.context.canvas.getSize();Rr(a,s)||(ci(this,new Xr(ce.BEFORE_SIZE_CHANGE,{size:a})),this.context.canvas.resize(...a),ci(this,new Xr(ce.AFTER_SIZE_CHANGE,{size:a})))}fitView(t,e){return ar(this,void 0,void 0,function*(){var n;yield(n=this.context.viewport)===null||n===void 0?void 0:n.fitView(t,e)})}fitCenter(t){return ar(this,void 0,void 0,function*(){var e;yield(e=this.context.viewport)===null||e===void 0?void 0:e.fitCenter({animation:t})})}autoFit(){return ar(this,void 0,void 0,function*(){const{autoFit:t}=this.context.options;if(t)if(gn(t))t==="view"?yield this.fitView():t==="center"&&(yield this.fitCenter());else{const{type:e,animation:n}=t;e==="view"?yield this.fitView(t.options,n):e==="center"&&(yield this.fitCenter(n))}})}focusElement(t,e){return ar(this,void 0,void 0,function*(){var n;yield(n=this.context.viewport)===null||n===void 0?void 0:n.focusElements(Array.isArray(t)?t:[t],{animation:e})})}zoomBy(t,e,n){return ar(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",scale:t,origin:n},e)})}zoomTo(t,e,n){return ar(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",scale:t,origin:n},e)})}getZoom(){return this.context.viewport.getZoom()}rotateBy(t,e,n){return ar(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",rotate:t,origin:n},e)})}rotateTo(t,e,n){return ar(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",rotate:t,origin:n},e)})}getRotation(){return this.context.viewport.getRotation()}translateBy(t,e){return ar(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",translate:t},e)})}translateTo(t,e){return ar(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",translate:t},e)})}getPosition(){return tr([0,0],this.getCanvasByViewport([0,0]))}translateElementBy(t,e){return ar(this,arguments,void 0,function*(n,i,a=!0){var s,o;const[A,l]=Br(n)?[n,(s=i)!==null&&s!==void 0?s:!0]:[{[n]:i},a];Object.entries(A).forEach(([c,u])=>this.context.model.translateNodeLikeBy(c,u)),yield(o=this.context.element.draw({animation:l,stage:"translate"}))===null||o===void 0?void 0:o.finished})}translateElementTo(t,e){return ar(this,arguments,void 0,function*(n,i,a=!0){var s,o;const[A,l]=Br(n)?[n,(s=i)!==null&&s!==void 0?s:!0]:[{[n]:i},a];Object.entries(A).forEach(([c,u])=>this.context.model.translateNodeLikeTo(c,u)),yield(o=this.context.element.draw({animation:l,stage:"translate"}))===null||o===void 0?void 0:o.finished})}getElementPosition(t){return this.context.model.getElementPosition(t)}getElementRenderStyle(t){return Qy(this.context.element.getElement(t).attributes,["context"])}setElementVisibility(t,e){return ar(this,arguments,void 0,function*(n,i,a=!0){var s,o;const[A,l]=Br(n)?[n,(s=i)!==null&&s!==void 0?s:!0]:[{[n]:i},a],c={nodes:[],edges:[],combos:[]};Object.entries(A).forEach(([f,d])=>{const g=this.getElementType(f);c[`${g}s`].push({id:f,style:{visibility:d}})});const{model:u,element:h}=this.context;u.preventUpdateNodeLikeHierarchy(()=>{u.updateData(c)}),yield(o=h.draw({animation:l,stage:"visibility"}))===null||o===void 0?void 0:o.finished})}showElement(t,e){return ar(this,void 0,void 0,function*(){const n=Array.isArray(t)?t:[t];yield this.setElementVisibility(Object.fromEntries(n.map(i=>[i,"visible"])),e)})}hideElement(t,e){return ar(this,void 0,void 0,function*(){const n=Array.isArray(t)?t:[t];yield this.setElementVisibility(Object.fromEntries(n.map(i=>[i,"hidden"])),e)})}getElementVisibility(t){var e,n;const i=this.context.element.getElement(t);return(n=(e=i==null?void 0:i.style)===null||e===void 0?void 0:e.visibility)!==null&&n!==void 0?n:"visible"}setElementZIndex(t,e){return ar(this,void 0,void 0,function*(){var n;const i={nodes:[],edges:[],combos:[]},a=Br(t)?t:{[t]:e};Object.entries(a).forEach(([A,l])=>{const c=this.getElementType(A);i[`${c}s`].push({id:A,style:{zIndex:l}})});const{model:s,element:o}=this.context;s.preventUpdateNodeLikeHierarchy(()=>s.updateData(i)),yield(n=o.draw({animation:!1,stage:"zIndex"}))===null||n===void 0?void 0:n.finished})}frontElement(t){return ar(this,void 0,void 0,function*(){const e=Array.isArray(t)?t:[t],{model:n}=this.context,i={};e.map(a=>{const s=n.getFrontZIndex(a);if(n.getElementType(a)==="combo"){const A=n.getAncestorsData(a,nr).at(-1)||this.getComboData(a),l=[A,...n.getDescendantsData(Pt(A))],c=s-gS(A);l.forEach(h=>{i[Pt(h)]=this.getElementZIndex(Pt(h))+c});const{internal:u}=sy(l.map(Pt),h=>n.getRelatedEdgesData(h));u.forEach(h=>{const f=Pt(h);i[f]=this.getElementZIndex(f)+c})}else i[a]=s}),yield this.setElementZIndex(i)})}getElementZIndex(t){return gS(this.context.model.getElementDataById(t))}setElementState(t,e){return ar(this,arguments,void 0,function*(n,i,a=!0){var s,o;const[A,l]=Br(n)?[n,(s=i)!==null&&s!==void 0?s:!0]:[{[n]:i},a],c=h=>h?Array.isArray(h)?h:[h]:[],u={nodes:[],edges:[],combos:[]};Object.entries(A).forEach(([h,f])=>{const d=this.getElementType(h);u[`${d}s`].push({id:h,states:c(f)})}),this.updateData(u),yield(o=this.context.element.draw({animation:l,stage:"state"}))===null||o===void 0?void 0:o.finished})}getElementState(t){return this.context.model.getElementState(t)}getElementRenderBounds(t){return this.context.element.getElement(t).getRenderBounds()}collapseElement(t){return ar(this,arguments,void 0,function*(e,n=!0){const{model:i,element:a}=this.context;if(fa(i.getNodeLikeData([e])[0])||this.isCollapsingExpanding)return;typeof n=="boolean"&&(n={animation:n,align:!0});const s=i.getElementType(e);yield this.frontElement(e),this.isCollapsingExpanding=!0,i.updateData(s==="node"?{nodes:[{id:e,style:{collapsed:!0}}]}:{combos:[{id:e,style:{collapsed:!0}}]}),s==="node"?yield a.collapseNode(e,n):s==="combo"&&(yield a.collapseCombo(e,!!n.animation)),this.isCollapsingExpanding=!1})}expandElement(t){return ar(this,arguments,void 0,function*(e,n=!0){const{model:i,element:a}=this.context;if(!fa(i.getNodeLikeData([e])[0])||this.isCollapsingExpanding)return;typeof n=="boolean"&&(n={animation:n,align:!0});const s=i.getElementType(e);this.isCollapsingExpanding=!0,i.updateData(s==="node"?{nodes:[{id:e,style:{collapsed:!1}}]}:{combos:[{id:e,style:{collapsed:!1}}]}),s==="node"?yield a.expandNode(e,n):s==="combo"&&(yield a.expandCombo(e,!!n.animation)),this.isCollapsingExpanding=!1})}setElementCollapsibility(t,e){const n=this.getElementType(t);n==="node"?this.updateNodeData([{id:t,style:{collapsed:e}}]):n==="combo"&&this.updateComboData([{id:t,style:{collapsed:e}}])}toDataURL(){return ar(this,arguments,void 0,function*(t={}){return this.context.canvas.toDataURL(t)})}getCanvasByViewport(t){return this.context.canvas.getCanvasByViewport(t)}getViewportByCanvas(t){return this.context.canvas.getViewportByCanvas(t)}getClientByCanvas(t){return this.context.canvas.getClientByCanvas(t)}getCanvasByClient(t){return this.context.canvas.getCanvasByClient(t)}getViewportCenter(){return this.context.viewport.getViewportCenter()}getCanvasCenter(){return this.context.viewport.getCanvasCenter()}on(t,e,n){return super.on(t,e,n)}once(t,e){return super.once(t,e)}off(t,e){return super.off(t,e)}}Pv.defaultOptions={autoResize:!1,theme:"light",rotation:0,zoom:1,zoomRange:[.01,10]};var d6=function(r,t){var e={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&t.indexOf(n)<0&&(e[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(e[n[i]]=r[n[i]]);return e};function g6(r,t){const{getNodeData:e=(o,A)=>{if(o.depth=A,!o.children)return o;const{children:l}=o,c=d6(o,["children"]);return Object.assign(Object.assign({},c),{children:l.map(u=>u.id)})},getEdgeData:n=(o,A)=>({source:o.id,target:A.id}),getChildren:i=o=>o.children||[]}=t||{},a=[],s=[];return yl(r,(o,A)=>{a.push(e(o,A));const l=i(o);for(const c of l)s.push(n(o,c))},o=>i(o),"TB"),{nodes:a,edges:s}}class v6 extends IA{beforeDraw(t){const{add:e,update:n}=t,{model:i}=this.context;return[...e.edges.entries(),...n.edges.entries()].forEach(([,a])=>{TS(i,a)}),t}}const TS=(r,t)=>{const{source:e,target:n}=t,i=r.getElementDataById(e),a=r.getElementDataById(n),s=jb(i,u=>r.getParentData(u,nr)),o=jb(a,u=>r.getParentData(u,nr)),A=Pt(s),l=Pt(o),c={sourceNode:A,targetNode:l};return t.style?Object.assign(t.style,c):t.style=c,t},p6=(r,t,e)=>{const[n,i]=t,[a,s]=e;if(i===n)return a;const o=(r-n)/(i-n);return a+o*(s-a)},m6=(r,t,e)=>{const[n,i]=t,[a,s]=e,o=Math.log(r-n+1)/Math.log(i-n+1);return a+o*(s-a)},y6=(r,t,e,n=2)=>{const[i,a]=t,[s,o]=e,A=Math.pow((r-i)/(a-i),n);return s+A*(o-s)},w6=(r,t,e)=>{const[n,i]=t,[a,s]=e,o=Math.sqrt((r-n)/(i-n));return a+o*(s-a)};class Dv extends IA{constructor(t,e){super(t,Ci({},Dv.defaultOptions,e)),this.assignSizeByCentrality=(n,i,a,s,o,A)=>{const l=[i,a],c=[s[0],o[0]],u=[s[1],o[1]],h=[s[2],o[2]],f=(d,g)=>{if(typeof A=="function")return A(d,l,g);switch(A){case"linear":return p6(d,l,g);case"log":return m6(d,l,g);case"pow":return y6(d,l,g,2);case"sqrt":return w6(d,l,g);default:return g[0]}};return[f(n,c),f(n,u),f(n,h)]}}beforeDraw(t){const{model:e}=this.context,n=e.getNodeData(),i=ka(this.options.maxSize),a=ka(this.options.minSize),s=this.getCentralities(this.options.centrality),o=s.size>0?Math.max(...s.values()):0,A=s.size>0?Math.min(...s.values()):0;return n.forEach(l=>{var c;const u=this.assignSizeByCentrality(s.get(Pt(l))||0,A,o,a,i,this.options.scale),h=(c=this.context.element)===null||c===void 0?void 0:c.getElement(Pt(l)),f={size:u};this.assignLabelStyle(f,u,l,h),(!h||!Mv(f,h.attributes))&&Pa(t,h?"update":"add","node",Ci(l,{style:f}),!0)}),t}assignLabelStyle(t,e,n,i){var a;const s=i?i.config.style:(a=this.context.element)===null||a===void 0?void 0:a.getElementComputedStyle("node",n);if(Object.assign(t,Bl(s,["labelFontSize","labelLineHeight"])),this.options.mapLabelSize){const o=this.getLabelSizeByNodeSize(e,1/0,Number(t.labelFontSize));Object.assign(t,{labelFontSize:o,labelLineHeight:o+bO(t.labelPadding)})}return t}getLabelSizeByNodeSize(t,e,n){const i=Math.min(...t)/2,[a,s]=Array.isArray(this.options.mapLabelSize)?this.options.mapLabelSize:[n,e];return Math.min(s,Math.max(i,a))}getCentralities(t){const{model:e}=this.context,n=e.getData();if(typeof t=="function")return t(n);const i=e.getRelatedEdgesData.bind(e);return jB(n,i,t)}}Dv.defaultOptions={centrality:{type:"degree"},maxSize:80,minSize:20,scale:"linear",mapLabelSize:!1};class Rv extends IA{constructor(t,e){super(t,Object.assign({},Rv.defaultOptions,e))}get ref(){return this.context.model.getRootsData()[0]}afterLayout(){var t;const e=Ai(this.ref),{graph:n,model:i}=this.context;(t=i.getData().nodes)===null||t===void 0||t.forEach(s=>{var o;if(Pt(s)===Pt(this.ref))return;const A=qB(tr(Ai(s),e)),l=Math.abs(A)>Math.PI/2,c=!s.children||s.children.length===0,u=Pt(s),h=(o=this.context.element)===null||o===void 0?void 0:o.getElement(u);if(!h||!h.isVisible())return;const f=ka(n.getElementRenderStyle(u).size)[0]/2,d=(c?1:-1)*(f+this.options.offset),g=[["translate",d*Math.cos(A),d*Math.sin(A)],["rotate",l?Bi(A)+180:Bi(A)]];i.updateNodeData([{id:Pt(s),style:{labelTextAlign:l===c?"right":"left",labelTextBaseline:"middle",labelTransform:g}}])}),n.draw()}}Rv.defaultOptions={offset:5};const E6="quadratic",FS=["top","top-right","right","right-bottom","bottom","bottom-left","left","left-top"];class _v extends IA{constructor(t,e){super(t,Object.assign({},_v.defaultOptions,e)),this.cacheMergeStyle=new Map,this.getAffectedParallelEdges=n=>{const{add:{edges:i},update:{nodes:a,edges:s,combos:o},remove:{edges:A}}=n,{model:l}=this.context,c=new Map,u=(d,g)=>{l.getRelatedEdgesData(g).forEach(y=>!c.has(Pt(y))&&c.set(Pt(y),y))};a.forEach(u),o.forEach(u);const h=d=>{const g=new Set(n.remove.edges.keys()),v=l.getEdgeData().filter(y=>!g.has(Pt(y))).map(y=>TS(l,y));B6(d,v,!0).forEach(y=>{const E=Pt(y);c.has(E)||c.set(E,y)})};if(A.size&&A.forEach(h),i.size&&i.forEach(h),s.size){const d=TC(Hy(l.getChanges())).update.edges;s.forEach(g=>{var v;h(g);const y=(v=d.find(E=>Pt(E.value)===Pt(g)))===null||v===void 0?void 0:v.original;y&&!P1(g,y)&&h(y)})}ro(this.options.edges)||c.forEach((d,g)=>!this.options.edges.includes(g)&&c.delete(g));const f=l.getEdgeData().map(Pt);return new Map([...c].sort((d,g)=>f.indexOf(d[0])-f.indexOf(g[0])))},this.applyBundlingStyle=(n,i,a)=>{const{edgeMap:s,reverses:o}=OS(i);s.forEach(A=>{A.forEach((l,c,u)=>{var h;const f=u.length,d=l.style||{};if(l.source===l.target){const y=FS.length;d.loopPlacement=FS[c%y],d.loopDist=Math.floor(c/y)*a+50}else if(f===1)d.curveOffset=0;else{const y=(c%2===0?1:-1)*(o[`${l.source}|${l.target}|${c}`]?-1:1);d.curveOffset=f%2===1?y*Math.ceil(c/2)*a*2:y*(Math.floor(c/2)*a*2+a)}const g=Object.assign(l,{type:E6,style:d}),v=(h=this.context.element)===null||h===void 0?void 0:h.getElement(Pt(l));(!v||!Mv(g.style,v.attributes))&&Pa(n,v?"update":"add","edge",g,!0)})})},this.resetEdgeStyle=n=>{const i=n.style||{},a=this.cacheMergeStyle.get(Pt(n))||{};return Object.keys(a).forEach(s=>{Rr(i[s],a[s])&&(n[s]?i[s]=n[s]:delete i[s])}),Object.assign(n,{style:i})},this.applyMergingStyle=(n,i)=>{const{edgeMap:a,reverses:s}=OS(i);a.forEach(o=>{var A;if(o.length===1){const c=o[0],u=(A=this.context.element)===null||A===void 0?void 0:A.getElement(Pt(c)),h=this.resetEdgeStyle(c);(!u||!Mv(h,u.attributes))&&Pa(n,u?"update":"add","edge",h);return}const l=o.map(({source:c,target:u,style:h={}},f)=>{const{startArrow:d,endArrow:g}=h,v={},[y,E]=s[`${c}|${u}|${f}`]?["endArrow","startArrow"]:["startArrow","endArrow"];return Jo(d)&&(v[y]=d),Jo(g)&&(v[E]=g),v}).reduce((c,u)=>Object.assign(Object.assign({},c),u),{});o.forEach((c,u,h)=>{var f;if(u!==0){Pa(n,"remove","edge",c);return}const d=Object.assign({},jt(this.options.style)?this.options.style(h):this.options.style,{childrenData:h});this.cacheMergeStyle.set(Pt(c),d);const g=Object.assign(Object.assign({},c),{type:"line",style:Object.assign(Object.assign(Object.assign({},c.style),l),d)}),v=(f=this.context.element)===null||f===void 0?void 0:f.getElement(Pt(c));(!v||!Mv(g.style,v.attributes))&&Pa(n,v?"update":"add","edge",g,!0)})})}}beforeDraw(t){const e=this.getAffectedParallelEdges(t);return e.size===0||(this.options.mode==="bundle"?this.applyBundlingStyle(t,e,this.options.distance):this.applyMergingStyle(t,e)),t}}_v.defaultOptions={mode:"bundle",distance:15};const OS=r=>{const t=new Map,e=new Set,n={},i=new Map;for(const[a,s]of r){if(e.has(a))continue;const{source:o,target:A}=s,l=`${o}-${A}`;t.has(l)||(t.set(l,[]),i.set(l,new Set));const c=t.get(l),u=i.get(l);c&&u&&!u.has(a)&&(c.push(s),u.add(a),e.add(a));for(const[h,f]of r)if(!(e.has(h)||h===a)&&P1(s,f)){const d=t.get(l),g=i.get(l);d&&g&&!g.has(h)&&(d.push(f),g.add(h),o===f.target&&A===f.source&&(n[`${f.source}|${f.target}|${d.length-1}`]=!0),e.add(h))}}return{edgeMap:t,reverses:n}},B6=(r,t,e)=>t.filter(n=>(e||Pt(n)!==Pt(r))&&P1(n,r)),P1=(r,t)=>{const{sourceNode:e,targetNode:n}=r.style||{},{sourceNode:i,targetNode:a}=t.style||{};return e===i&&n===a||e===a&&n===i};class b6 extends IA{beforeDraw(t,e){const{stage:n}=e;if(n==="visibility")return t;const{model:i}=this.context,{update:{nodes:a,edges:s,combos:o}}=t,A=(l,c)=>{i.getRelatedEdgesData(c).forEach(h=>!s.has(Pt(h))&&s.set(Pt(h),h))};return a.forEach(A),o.forEach(A),t}}const x6={animation:{"combo-collapse":oB,"combo-expand":mO,"node-collapse":aB,"node-expand":vO,"path-in":sB,"path-out":pO,fade:dO,translate:gO},behavior:{"brush-select":fh,"click-select":Zd,"collapse-expand":vg,"create-edge":wg,"drag-canvas":Eg,"drag-element-force":Yk,"drag-element":xh,"fix-element-size":Sg,"focus-element":Mg,"hover-activate":Tg,"lasso-select":Jk,"auto-adapt-label":Hd,"optimize-viewport-transform":Fg,"scroll-canvas":Og,"zoom-canvas":Ig},combo:{circle:HN,rect:GN},edge:{cubic:bl,line:fg,polyline:dg,quadratic:gg,"cubic-horizontal":cg,"cubic-radial":ug,"cubic-vertical":hg},layout:{"antv-dagre":UU,"combo-combined":aP,"compact-box":Lg.compactBox,"d3-force":SP,"force-atlas2":FP,circular:RU,concentric:xy,dagre:Ng,dendrogram:Lg.dendrogram,fishbone:Ug,force:Jx,fruchterman:LP,grid:kP,indented:Lg.indented,mds:iC,mindmap:Lg.mindmap,radial:KP,random:XP,snake:Pg},node:{circle:wl,diamond:qL,ellipse:qd,hexagon:rN,html:ag,image:sg,rect:RN,star:_N,donut:Xd,triangle:og},palette:{spectral:e3,tableau:n3,oranges:r3,greens:i3,blues:a3},theme:{dark:FH,light:OH},plugin:{"bubble-sets":Zg,"edge-bundling":Yg,"edge-filter-lens":Xg,"grid-line":$g,background:Dg,contextmenu:jg,fisheye:Jg,fullscreen:qg,history:tv,hull:iv,legend:cv,minimap:uv,snapline:hv,timebar:bv,title:fH,toolbar:xv,tooltip:Cv,watermark:Sv},transform:{"arrange-draw-order":IH,"collapse-expand-combo":LH,"collapse-expand-node":NH,"get-edge-actual-ends":v6,"map-node-size":Dv,"place-radial-labels":Rv,"process-parallel-edges":_v,"update-related-edges":b6},shape:{circle:Js,ellipse:qu,group:oi,html:ll,image:Xm,line:cl,path:Pi,polygon:ul,polyline:nd,rect:xi,text:hl,label:io,badge:kc}};function C6(){Object.entries(x6).forEach(([r,t])=>{Object.entries(t).forEach(([e,n])=>{kH(r,e,n)})})}C6();const QG={css:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.css",js:"//at.alicdn.com/t/a/font_470089_8hnbbf8n4u8.js"}},13722:function(X){(function(M,F){X.exports=F()})(typeof self!="undefined"?self:this,function(){return function(nt){var M={};function F(z){if(M[z])return M[z].exports;var D=M[z]={i:z,l:!1,exports:{}};return nt[z].call(D.exports,D,D.exports,F),D.l=!0,D.exports}return F.m=nt,F.c=M,F.d=function(z,D,N){F.o(z,D)||Object.defineProperty(z,D,{configurable:!1,enumerable:!0,get:N})},F.n=function(z){var D=z&&z.__esModule?function(){return z.default}:function(){return z};return F.d(D,"a",D),D},F.o=function(z,D){return Object.prototype.hasOwnProperty.call(z,D)},F.p="",F(F.s=5)}([function(nt,M){function F(z,D,N,O){return O===void 0&&(O="height"),N==="center"?(z[O]+D[O])/2:z.height}nt.exports={assign:Object.assign,getHeight:F}},function(nt,M,F){var z=F(3),D=function(){function N(k,U){U===void 0&&(U={});var L=this;L.options=U,L.rootNode=z(k,U)}var O=N.prototype;return O.execute=function(){throw new Error("please override this method")},N}();nt.exports=D},function(nt,M,F){var z=F(4),D=["LR","RL","TB","BT","H","V"],N=["LR","RL","H"],O=function(Q){return N.indexOf(Q)>-1},k=D[0];nt.exports=function(L,Q,_){var P=Q.direction||k;if(Q.isHorizontal=O(P),P&&D.indexOf(P)===-1)throw new TypeError("Invalid direction: "+P);if(P===D[0])_(L,Q);else if(P===D[1])_(L,Q),L.right2left();else if(P===D[2])_(L,Q);else if(P===D[3])_(L,Q),L.bottom2top();else if(P===D[4]||P===D[5]){var Z=z(L,Q),tt=Z.left,$=Z.right;_(tt,Q),_($,Q),Q.isHorizontal?tt.right2left():tt.bottom2top(),$.translate(tt.x-$.x,tt.y-$.y),L.x=tt.x,L.y=$.y;var lt=L.getBoundingBox();Q.isHorizontal?lt.top<0&&L.translate(0,-lt.top):lt.left<0&&L.translate(-lt.left,0)}var At=Q.fixedRoot;return At===void 0&&(At=!0),At&&L.translate(-(L.x+L.width/2+L.hgap),-(L.y+L.height/2+L.vgap)),U(L,Q),L};function U(L,Q){if(Q.radial){var _=Q.isHorizontal?["x","y"]:["y","x"],P=_[0],Z=_[1],tt={x:1/0,y:1/0},$={x:-1/0,y:-1/0},lt=0;L.DFTraverse(function(ft){lt++;var ht=ft.x,mt=ft.y;tt.x=Math.min(tt.x,ht),tt.y=Math.min(tt.y,mt),$.x=Math.max($.x,ht),$.y=Math.max($.y,mt)});var At=$[Z]-tt[Z];if(At===0)return;var rt=Math.PI*2/lt;L.DFTraverse(function(ft){var ht=(ft[Z]-tt[Z])/At*(Math.PI*2-rt)+rt,mt=ft[P]-L[P];ft.x=Math.cos(ht)*mt,ft.y=Math.sin(ht)*mt})}}},function(nt,M,F){var z=F(0),D=18,N=D*2,O=D,k={getId:function(_){return _.id||_.name},getPreH:function(_){return _.preH||0},getPreV:function(_){return _.preV||0},getHGap:function(_){return _.hgap||O},getVGap:function(_){return _.vgap||O},getChildren:function(_){return _.children},getHeight:function(_){return _.height||N},getWidth:function(_){var P=_.label||" ";return _.width||P.split("").length*D}};function U(Q,_){var P=this;if(P.vgap=P.hgap=0,Q instanceof U)return Q;P.data=Q;var Z=_.getHGap(Q),tt=_.getVGap(Q);return P.preH=_.getPreH(Q),P.preV=_.getPreV(Q),P.width=_.getWidth(Q),P.height=_.getHeight(Q),P.width+=P.preH,P.height+=P.preV,P.id=_.getId(Q),P.x=P.y=0,P.depth=0,P.children||(P.children=[]),P.addGap(Z,tt),P}z.assign(U.prototype,{isRoot:function(){return this.depth===0},isLeaf:function(){return this.children.length===0},addGap:function(_,P){var Z=this;Z.hgap+=_,Z.vgap+=P,Z.width+=2*_,Z.height+=2*P},eachNode:function(_){for(var P=this,Z=[P],tt;tt=Z.shift();)_(tt),Z=tt.children.concat(Z)},DFTraverse:function(_){this.eachNode(_)},BFTraverse:function(_){for(var P=this,Z=[P],tt;tt=Z.shift();)_(tt),Z=Z.concat(tt.children)},getBoundingBox:function(){var _={left:Number.MAX_VALUE,top:Number.MAX_VALUE,width:0,height:0};return this.eachNode(function(P){_.left=Math.min(_.left,P.x),_.top=Math.min(_.top,P.y),_.width=Math.max(_.width,P.x+P.width),_.height=Math.max(_.height,P.y+P.height)}),_},translate:function(_,P){_===void 0&&(_=0),P===void 0&&(P=0),this.eachNode(function(Z){Z.x+=_,Z.y+=P,Z.x+=Z.preH,Z.y+=Z.preV})},right2left:function(){var _=this,P=_.getBoundingBox();_.eachNode(function(Z){Z.x=Z.x-(Z.x-P.left)*2-Z.width}),_.translate(P.width,0)},bottom2top:function(){var _=this,P=_.getBoundingBox();_.eachNode(function(Z){Z.y=Z.y-(Z.y-P.top)*2-Z.height}),_.translate(0,P.height)}});function L(Q,_,P){_===void 0&&(_={}),_=z.assign({},k,_);var Z=new U(Q,_),tt=[Z],$;if(!P&&!Q.collapsed){for(;$=tt.shift();)if(!$.data.collapsed){var lt=_.getChildren($.data),At=lt?lt.length:0;if($.children=new Array(At),lt&&At)for(var rt=0;rt<At;rt++){var ft=new U(lt[rt],_);$.children[rt]=ft,tt.push(ft),ft.parent=$,ft.depth=$.depth+1}}}return Z}nt.exports=L},function(nt,M,F){var z=F(3);nt.exports=function(D,N){for(var O=z(D.data,N,!0),k=z(D.data,N,!0),U=D.children.length,L=Math.round(U/2),Q=N.getSide||function(tt,$){return $<L?"right":"left"},_=0;_<U;_++){var P=D.children[_],Z=Q(P,_);Z==="right"?k.children.push(P):O.children.push(P)}return O.eachNode(function(tt){tt.isRoot()||(tt.side="left")}),k.eachNode(function(tt){tt.isRoot()||(tt.side="right")}),{left:O,right:k}}},function(nt,M,F){var z={compactBox:F(6),dendrogram:F(8),indented:F(10),mindmap:F(12)};nt.exports=z},function(nt,M,F){function z(P,Z){P.prototype=Object.create(Z.prototype),P.prototype.constructor=P,D(P,Z)}function D(P,Z){return D=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(tt,$){return tt.__proto__=$,tt},D(P,Z)}var N=F(1),O=F(7),k=F(2),U=F(0),L=function(P){function Z(){return P.apply(this,arguments)||this}z(Z,P);var tt=Z.prototype;return tt.execute=function(){var lt=this;return k(lt.rootNode,lt.options,O)},Z}(N),Q={};function _(P,Z){return Z=U.assign({},Q,Z),new L(P,Z).execute()}nt.exports=_},function(nt,M){function F(U,L,Q,_){_===void 0&&(_=[]);var P=this;P.w=U||0,P.h=L||0,P.y=Q||0,P.x=0,P.c=_||[],P.cs=_.length,P.prelim=0,P.mod=0,P.shift=0,P.change=0,P.tl=null,P.tr=null,P.el=null,P.er=null,P.msel=0,P.mser=0}F.fromNode=function(U,L){if(!U)return null;var Q=[];return U.children.forEach(function(_){Q.push(F.fromNode(_,L))}),L?new F(U.height,U.width,U.x,Q):new F(U.width,U.height,U.y,Q)};function z(U,L,Q){Q?U.y+=L:U.x+=L,U.children.forEach(function(_){z(_,L,Q)})}function D(U,L){var Q=L?U.y:U.x;return U.children.forEach(function(_){Q=Math.min(D(_,L),Q)}),Q}function N(U,L){var Q=D(U,L);z(U,-Q,L)}function O(U,L,Q){Q?L.y=U.x:L.x=U.x,U.c.forEach(function(_,P){O(_,L.children[P],Q)})}function k(U,L,Q){Q===void 0&&(Q=0),L?(U.x=Q,Q+=U.width):(U.y=Q,Q+=U.height),U.children.forEach(function(_){k(_,L,Q)})}nt.exports=function(U,L){L===void 0&&(L={});var Q=L.isHorizontal;function _(bt){if(bt.cs===0){P(bt);return}_(bt.c[0]);for(var Lt=xt(At(bt.c[0].el),0,null),Kt=1;Kt<bt.cs;++Kt){_(bt.c[Kt]);var $t=At(bt.c[Kt].er);Z(bt,Kt,Lt),Lt=xt($t,Kt,Lt)}ht(bt),P(bt)}function P(bt){bt.cs===0?(bt.el=bt,bt.er=bt,bt.msel=bt.mser=0):(bt.el=bt.c[0].el,bt.msel=bt.c[0].msel,bt.er=bt.c[bt.cs-1].er,bt.mser=bt.c[bt.cs-1].mser)}function Z(bt,Lt,Kt){for(var $t=bt.c[Lt-1],oe=$t.mod,fe=bt.c[Lt],He=fe.mod;$t!==null&&fe!==null;){At($t)>Kt.low&&(Kt=Kt.nxt);var rn=oe+$t.prelim+$t.w-(He+fe.prelim);rn>0&&(He+=rn,tt(bt,Lt,Kt.index,rn));var Dn=At($t),Mr=At(fe);Dn<=Mr&&($t=lt($t),$t!==null&&(oe+=$t.mod)),Dn>=Mr&&(fe=$(fe),fe!==null&&(He+=fe.mod))}!$t&&fe?rt(bt,Lt,fe,He):$t&&!fe&&ft(bt,Lt,$t,oe)}function tt(bt,Lt,Kt,$t){bt.c[Lt].mod+=$t,bt.c[Lt].msel+=$t,bt.c[Lt].mser+=$t,yt(bt,Lt,Kt,$t)}function $(bt){return bt.cs===0?bt.tl:bt.c[0]}function lt(bt){return bt.cs===0?bt.tr:bt.c[bt.cs-1]}function At(bt){return bt.y+bt.h}function rt(bt,Lt,Kt,$t){var oe=bt.c[0].el;oe.tl=Kt;var fe=$t-Kt.mod-bt.c[0].msel;oe.mod+=fe,oe.prelim-=fe,bt.c[0].el=bt.c[Lt].el,bt.c[0].msel=bt.c[Lt].msel}function ft(bt,Lt,Kt,$t){var oe=bt.c[Lt].er;oe.tr=Kt;var fe=$t-Kt.mod-bt.c[Lt].mser;oe.mod+=fe,oe.prelim-=fe,bt.c[Lt].er=bt.c[Lt-1].er,bt.c[Lt].mser=bt.c[Lt-1].mser}function ht(bt){bt.prelim=(bt.c[0].prelim+bt.c[0].mod+bt.c[bt.cs-1].mod+bt.c[bt.cs-1].prelim+bt.c[bt.cs-1].w)/2-bt.w/2}function mt(bt,Lt){Lt+=bt.mod,bt.x=bt.prelim+Lt,Tt(bt);for(var Kt=0;Kt<bt.cs;Kt++)mt(bt.c[Kt],Lt)}function yt(bt,Lt,Kt,$t){if(Kt!==Lt-1){var oe=Lt-Kt;bt.c[Kt+1].shift+=$t/oe,bt.c[Lt].shift-=$t/oe,bt.c[Lt].change-=$t-$t/oe}}function Tt(bt){for(var Lt=0,Kt=0,$t=0;$t<bt.cs;$t++)Lt+=bt.c[$t].shift,Kt+=Lt+bt.c[$t].change,bt.c[$t].mod+=Kt}function xt(bt,Lt,Kt){for(;Kt!==null&&bt>=Kt.low;)Kt=Kt.nxt;return{low:bt,index:Lt,nxt:Kt}}k(U,Q);var Nt=F.fromNode(U,Q);return _(Nt),mt(Nt,0),O(Nt,U,Q),N(U,Q),U}},function(nt,M,F){function z(P,Z){P.prototype=Object.create(Z.prototype),P.prototype.constructor=P,D(P,Z)}function D(P,Z){return D=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(tt,$){return tt.__proto__=$,tt},D(P,Z)}var N=F(1),O=F(9),k=F(2),U=F(0),L=function(P){function Z(){return P.apply(this,arguments)||this}z(Z,P);var tt=Z.prototype;return tt.execute=function(){var lt=this;return lt.rootNode.width=0,k(lt.rootNode,lt.options,O)},Z}(N),Q={};function _(P,Z){return Z=U.assign({},Q,Z),new L(P,Z).execute()}nt.exports=_},function(nt,M,F){var z=F(0);function D(k,U){k===void 0&&(k=0),U===void 0&&(U=[]);var L=this;L.x=L.y=0,L.leftChild=L.rightChild=null,L.height=0,L.children=U}var N={isHorizontal:!0,nodeSep:20,nodeSize:20,rankSep:200,subTreeSep:10};function O(k,U,L){L?(U.x=k.x,U.y=k.y):(U.x=k.y,U.y=k.x),k.children.forEach(function(Q,_){O(Q,U.children[_],L)})}nt.exports=function(k,U){U===void 0&&(U={}),U=z.assign({},N,U);var L=0;function Q($){if(!$)return null;$.width=0,$.depth&&$.depth>L&&(L=$.depth);var lt=$.children,At=lt.length,rt=new D($.height,[]);return lt.forEach(function(ft,ht){var mt=Q(ft);rt.children.push(mt),ht===0&&(rt.leftChild=mt),ht===At-1&&(rt.rightChild=mt)}),rt.originNode=$,rt.isLeaf=$.isLeaf(),rt}function _($){if($.isLeaf||$.children.length===0)$.drawingDepth=L;else{var lt=$.children.map(function(rt){return _(rt)}),At=Math.min.apply(null,lt);$.drawingDepth=At-1}return $.drawingDepth}var P;function Z($){$.x=$.drawingDepth*U.rankSep,$.isLeaf?($.y=0,P&&($.y=P.y+P.height+U.nodeSep,$.originNode.parent!==P.originNode.parent&&($.y+=U.subTreeSep)),P=$):($.children.forEach(function(lt){Z(lt)}),$.y=($.leftChild.y+$.rightChild.y)/2)}var tt=Q(k);return _(tt),Z(tt),O(tt,k,U.isHorizontal),k}},function(nt,M,F){function z(tt,$){tt.prototype=Object.create($.prototype),tt.prototype.constructor=tt,D(tt,$)}function D(tt,$){return D=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(lt,At){return lt.__proto__=At,lt},D(tt,$)}var N=F(1),O=F(11),k=F(4),U=F(0),L=["LR","RL","H"],Q=L[0],_=function(tt){function $(){return tt.apply(this,arguments)||this}z($,tt);var lt=$.prototype;return lt.execute=function(){var rt=this,ft=rt.options,ht=rt.rootNode;ft.isHorizontal=!0;var mt=ft.indent,yt=mt===void 0?20:mt,Tt=ft.dropCap,xt=Tt===void 0?!0:Tt,Nt=ft.direction,bt=Nt===void 0?Q:Nt,Lt=ft.align;if(bt&&L.indexOf(bt)===-1)throw new TypeError("Invalid direction: "+bt);if(bt===L[0])O(ht,yt,xt,Lt);else if(bt===L[1])O(ht,yt,xt,Lt),ht.right2left();else if(bt===L[2]){var Kt=k(ht,ft),$t=Kt.left,oe=Kt.right;O($t,yt,xt,Lt),$t.right2left(),O(oe,yt,xt,Lt);var fe=$t.getBoundingBox();oe.translate(fe.width,0),ht.x=oe.x-ht.width/2}return ht},$}(N),P={};function Z(tt,$){return $=U.assign({},P,$),new _(tt,$).execute()}nt.exports=Z},function(nt,M,F){var z=F(0);function D(N,O,k,U,L){var Q=(typeof k=="function"?k(N):k)*N.depth;if(!U)try{if(N.id===N.parent.children[0].id){N.x+=Q,N.y=O?O.y:0;return}}catch(Z){}if(N.x+=Q,O){if(N.y=O.y+z.getHeight(O,N,L),O.parent&&N.parent.id!==O.parent.id){var _=O.parent,P=_.y+z.getHeight(_,N,L);N.y=P>N.y?P:N.y}}else N.y=0}nt.exports=function(N,O,k,U){var L=null;N.eachNode(function(Q){D(Q,L,O,k,U),L=Q})}},function(nt,M,F){function z(P,Z){P.prototype=Object.create(Z.prototype),P.prototype.constructor=P,D(P,Z)}function D(P,Z){return D=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(tt,$){return tt.__proto__=$,tt},D(P,Z)}var N=F(1),O=F(13),k=F(2),U=F(0),L=function(P){function Z(){return P.apply(this,arguments)||this}z(Z,P);var tt=Z.prototype;return tt.execute=function(){var lt=this;return k(lt.rootNode,lt.options,O)},Z}(N),Q={};function _(P,Z){return Z=U.assign({},Q,Z),new L(P,Z).execute()}nt.exports=_},function(nt,M,F){var z=F(0);function D(k,U){var L=0;return k.children.length?k.children.forEach(function(Q){L+=D(Q,U)}):L=k.height,k._subTreeSep=U.getSubTreeSep(k.data),k.totalHeight=Math.max(k.height,L)+2*k._subTreeSep,k.totalHeight}function N(k){var U=k.children,L=U.length;if(L){U.forEach(function($){N($)});var Q=U[0],_=U[L-1],P=_.y-Q.y+_.height,Z=0;if(U.forEach(function($){Z+=$.totalHeight}),P>k.height)k.y=Q.y+P/2-k.height/2;else if(U.length!==1||k.height>Z){var tt=k.y+(k.height-P)/2-Q.y;U.forEach(function($){$.translate(0,tt)})}else k.y=(Q.y+Q.height/2+_.y+_.height/2)/2-k.height/2}}var O={getSubTreeSep:function(){return 0}};nt.exports=function(k,U){U===void 0&&(U={}),U=z.assign({},O,U),k.parent={x:0,width:0,height:0,y:0},k.BFTraverse(function(L){L.x=L.parent.x+L.parent.width}),k.parent=null,D(k,U),k.startY=0,k.y=k.totalHeight/2-k.height/2,k.eachNode(function(L){var Q=L.children,_=Q.length;if(_){var P=Q[0];if(P.startY=L.startY+L._subTreeSep,_===1)P.y=L.y+L.height/2-P.height/2;else{P.y=P.startY+P.totalHeight/2-P.height/2;for(var Z=1;Z<_;Z++){var tt=Q[Z];tt.startY=Q[Z-1].startY+Q[Z-1].totalHeight,tt.y=tt.startY+tt.totalHeight/2-tt.height/2}}}}),N(k)}}])})},77975:function(X,nt,M){"use strict";var F=M(59301),z=M(42441),D=M(48961),N=M.n(D),O=Object.defineProperty,k=Object.defineProperties,U=Object.getOwnPropertyDescriptors,L=Object.getOwnPropertySymbols,Q=Object.prototype.hasOwnProperty,_=Object.prototype.propertyIsEnumerable,P=(rt,ft,ht)=>ft in rt?O(rt,ft,{enumerable:!0,configurable:!0,writable:!0,value:ht}):rt[ft]=ht,Z=(rt,ft)=>{for(var ht in ft||(ft={}))Q.call(ft,ht)&&P(rt,ht,ft[ht]);if(L)for(var ht of L(ft))_.call(ft,ht)&&P(rt,ht,ft[ht]);return rt},tt=(rt,ft)=>k(rt,U(ft));function $(rt,ft,ht=1/3,mt){let yt=rt*Math.PI*2,Tt=ft*Math.PI*2;return{u:{min:-Math.PI,max:Math.PI*3,step:Math.PI/32},v:{min:0,max:Math.PI*2,step:Math.PI/20},x:function(xt,Nt){return xt<yt?Math.cos(yt)*(1+Math.cos(Nt)*ht):xt>Tt?Math.cos(Tt)*(1+Math.cos(Nt)*ht):Math.cos(xt)*(1+Math.cos(Nt)*ht)},y:function(xt,Nt){return xt<yt?Math.sin(yt)*(1+Math.cos(Nt)*ht):xt>Tt?Math.sin(Tt)*(1+Math.cos(Nt)*ht):Math.sin(xt)*(1+Math.cos(Nt)*ht)},z:function(xt,Nt){return xt<-Math.PI*.5?Math.sin(xt):xt>Math.PI*2.5?Math.sin(xt)*mt*.1:Math.sin(Nt)>0?1*mt*.1:-1}}}function lt({pieData:rt=[],internalDiameterRatio:ft=1/3}){var ht,mt,yt,Tt;const xt=[],Nt=rt==null?void 0:rt.reduce((oe,fe)=>(oe||0)+((fe==null?void 0:fe.value)||0),0);let bt=0,Lt=0;const Kt=[];for(let oe=0;oe<(rt==null?void 0:rt.length);oe++){Lt=bt+(Nt==0?1:((ht=rt==null?void 0:rt[oe])==null?void 0:ht.value)||0);const fe={itemStyle:((mt=rt==null?void 0:rt[oe])==null?void 0:mt.itemStyle)||{},name:((yt=rt==null?void 0:rt[oe])==null?void 0:yt.name)||`name${oe}`,type:"surface",parametric:!0,parametricEquation:$(bt/(Nt||(rt==null?void 0:rt.length)),Lt/(Nt||(rt==null?void 0:rt.length)),ft,((Tt=rt==null?void 0:rt[oe])==null?void 0:Tt.value)||(Nt==0?25:0)),wireframe:{show:!1},pieData:rt==null?void 0:rt[oe]};Kt.push(fe.name),xt.push(fe),bt=Lt}return xt.push({name:"pie2d",type:"pie",showEmptyCircle:!0,label:{show:!0,formatter:oe=>`${oe.value}
|
|
|
|
|
|
${oe.name}`},startAngle:-35,radius:["49%","50%"],center:["50%","40%"],data:[...rt||[]].reverse(),itemStyle:{opacity:0}}),{legend:{left:"50%",top:"center",textStyle:{fontSize:12},data:Kt},xAxis3D:{},yAxis3D:{},zAxis3D:{},grid3D:{viewControl:{alpha:45,rotateSensitivity:0,zoomSensitivity:0,panSensitivity:0,autoRotate:!1},left:"center",top:"-10%",show:!1,boxHeight:25},series:xt}}const At=({dataSource:rt=[{name:"\u638C\u63E1\u738780%~100%",value:0,itemStyle:{color:"rgb(223,209,38)"}},{name:"\u638C\u63D0\u738760%~79%",value:0,itemStyle:{color:"rgb(6,234,230)"}},{name:"\u638C\u63A8\u738759%\u4EE5\u4E0B",value:0,itemStyle:{color:"rgb(6,110,247)"}}],className:ft="",style:ht={},legend:mt={},internalDiameterRatio:yt=1/3})=>{const[Tt,xt]=(0,F.useState)([]),Nt=(0,F.useCallback)(Kt=>{const $t=Kt.selected||{},oe=rt.map(fe=>fe.name).filter(fe=>$t[fe]===!1);xt(oe)},[rt]),bt=(0,F.useMemo)(()=>rt.filter(Kt=>!Tt.includes(Kt.name)),[rt,Tt]),Lt=(0,F.useMemo)(()=>{const Kt=lt({pieData:bt,internalDiameterRatio:yt}),$t=rt.map(fe=>fe.name),oe=rt.reduce((fe,He)=>(fe[He.name]=!Tt.includes(He.name),fe),{});return Kt.legend=tt(Z(Z({},Kt.legend),mt),{data:$t,selected:oe}),Kt},[bt,mt,yt,rt,Tt]);return F.createElement(z.Z,{onEvents:{legendselectchanged:Nt},className:`w-full h-full ${ft}`,option:Lt,style:Z({height:"100%"},ht)})};nt.Z=At},69:function(X,nt,M){"use strict";var F,z=Object.defineProperty,D=q=>{throw TypeError(q)},N=Math.pow,O=(q,x,S)=>x in q?z(q,x,{enumerable:!0,configurable:!0,writable:!0,value:S}):q[x]=S,k=(q,x,S)=>O(q,typeof x!="symbol"?x+"":x,S),U=(q,x,S)=>x.has(q)||D("Cannot "+S),L=(q,x,S)=>(U(q,x,"read from private field"),S?S.call(q):x.get(q)),Q=(q,x,S)=>x.has(q)?D("Cannot add the same private member more than once"):x instanceof WeakSet?x.add(q):x.set(q,S),_=(q,x,S,m)=>(U(q,x,"write to private field"),m?m.call(q,S):x.set(q,S),S),P=(q,x,S)=>(U(q,x,"access private method"),S),Z,tt,$;F={value:!0};var lt=M(34634),At=M(34402);const rt=" ".repeat(2),ft=" ".repeat(4);function ht(){return mt(this)}function mt(q,x={}){const{maxRows:S=15,maxColumns:m=10,maxNumSize:T=8,padMinus:H="auto"}=x;return`${q.constructor.name} {
|
|
|
${rt}[
|
|
|
${ft}${yt(q,S,m,T,H)}
|
|
|
${rt}]
|
|
|
${rt}rows: ${q.rows}
|
|
|
${rt}columns: ${q.columns}
|
|
|
}`}function yt(q,x,S,m,T){const{rows:H,columns:st}=q,ot=Math.min(H,x),dt=Math.min(st,S),gt=[];if(T==="auto"){T=!1;t:for(let Ut=0;Ut<ot;Ut++)for(let Bt=0;Bt<dt;Bt++)if(q.get(Ut,Bt)<0){T=!0;break t}}for(let Ut=0;Ut<ot;Ut++){let Bt=[];for(let Xt=0;Xt<dt;Xt++)Bt.push(Tt(q.get(Ut,Xt),m,T));gt.push(`${Bt.join(" ")}`)}return dt!==st&&(gt[gt.length-1]+=` ... ${st-S} more columns`),ot!==H&>.push(`... ${H-x} more rows`),gt.join(`
|
|
|
${ft}`)}function Tt(q,x,S){return(q>=0&&S?` ${xt(q,x-1)}`:xt(q,x)).padEnd(x)}function xt(q,x){let S=q.toString();if(S.length<=x)return S;let m=q.toFixed(x);if(m.length>x&&(m=q.toFixed(Math.max(0,x-(m.length-x)))),m.length<=x&&!m.startsWith("0.000")&&!m.startsWith("-0.000"))return m;let T=q.toExponential(x);return T.length>x&&(T=q.toExponential(Math.max(0,x-(T.length-x)))),T.slice(0)}function Nt(q,x){q.prototype.add=function(m){return typeof m=="number"?this.addS(m):this.addM(m)},q.prototype.addS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)+m);return this},q.prototype.addM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)+m.get(T,H));return this},q.add=function(m,T){return new x(m).add(T)},q.prototype.sub=function(m){return typeof m=="number"?this.subS(m):this.subM(m)},q.prototype.subS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)-m);return this},q.prototype.subM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)-m.get(T,H));return this},q.sub=function(m,T){return new x(m).sub(T)},q.prototype.subtract=q.prototype.sub,q.prototype.subtractS=q.prototype.subS,q.prototype.subtractM=q.prototype.subM,q.subtract=q.sub,q.prototype.mul=function(m){return typeof m=="number"?this.mulS(m):this.mulM(m)},q.prototype.mulS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)*m);return this},q.prototype.mulM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)*m.get(T,H));return this},q.mul=function(m,T){return new x(m).mul(T)},q.prototype.multiply=q.prototype.mul,q.prototype.multiplyS=q.prototype.mulS,q.prototype.multiplyM=q.prototype.mulM,q.multiply=q.mul,q.prototype.div=function(m){return typeof m=="number"?this.divS(m):this.divM(m)},q.prototype.divS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)/m);return this},q.prototype.divM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)/m.get(T,H));return this},q.div=function(m,T){return new x(m).div(T)},q.prototype.divide=q.prototype.div,q.prototype.divideS=q.prototype.divS,q.prototype.divideM=q.prototype.divM,q.divide=q.div,q.prototype.mod=function(m){return typeof m=="number"?this.modS(m):this.modM(m)},q.prototype.modS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)%m);return this},q.prototype.modM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)%m.get(T,H));return this},q.mod=function(m,T){return new x(m).mod(T)},q.prototype.modulus=q.prototype.mod,q.prototype.modulusS=q.prototype.modS,q.prototype.modulusM=q.prototype.modM,q.modulus=q.mod,q.prototype.and=function(m){return typeof m=="number"?this.andS(m):this.andM(m)},q.prototype.andS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)&m);return this},q.prototype.andM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)&m.get(T,H));return this},q.and=function(m,T){return new x(m).and(T)},q.prototype.or=function(m){return typeof m=="number"?this.orS(m):this.orM(m)},q.prototype.orS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)|m);return this},q.prototype.orM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)|m.get(T,H));return this},q.or=function(m,T){return new x(m).or(T)},q.prototype.xor=function(m){return typeof m=="number"?this.xorS(m):this.xorM(m)},q.prototype.xorS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)^m);return this},q.prototype.xorM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)^m.get(T,H));return this},q.xor=function(m,T){return new x(m).xor(T)},q.prototype.leftShift=function(m){return typeof m=="number"?this.leftShiftS(m):this.leftShiftM(m)},q.prototype.leftShiftS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)<<m);return this},q.prototype.leftShiftM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)<<m.get(T,H));return this},q.leftShift=function(m,T){return new x(m).leftShift(T)},q.prototype.signPropagatingRightShift=function(m){return typeof m=="number"?this.signPropagatingRightShiftS(m):this.signPropagatingRightShiftM(m)},q.prototype.signPropagatingRightShiftS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)>>m);return this},q.prototype.signPropagatingRightShiftM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)>>m.get(T,H));return this},q.signPropagatingRightShift=function(m,T){return new x(m).signPropagatingRightShift(T)},q.prototype.rightShift=function(m){return typeof m=="number"?this.rightShiftS(m):this.rightShiftM(m)},q.prototype.rightShiftS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)>>>m);return this},q.prototype.rightShiftM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,this.get(T,H)>>>m.get(T,H));return this},q.rightShift=function(m,T){return new x(m).rightShift(T)},q.prototype.zeroFillRightShift=q.prototype.rightShift,q.prototype.zeroFillRightShiftS=q.prototype.rightShiftS,q.prototype.zeroFillRightShiftM=q.prototype.rightShiftM,q.zeroFillRightShift=q.rightShift,q.prototype.not=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,~this.get(m,T));return this},q.not=function(m){return new x(m).not()},q.prototype.abs=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.abs(this.get(m,T)));return this},q.abs=function(m){return new x(m).abs()},q.prototype.acos=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.acos(this.get(m,T)));return this},q.acos=function(m){return new x(m).acos()},q.prototype.acosh=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.acosh(this.get(m,T)));return this},q.acosh=function(m){return new x(m).acosh()},q.prototype.asin=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.asin(this.get(m,T)));return this},q.asin=function(m){return new x(m).asin()},q.prototype.asinh=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.asinh(this.get(m,T)));return this},q.asinh=function(m){return new x(m).asinh()},q.prototype.atan=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.atan(this.get(m,T)));return this},q.atan=function(m){return new x(m).atan()},q.prototype.atanh=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.atanh(this.get(m,T)));return this},q.atanh=function(m){return new x(m).atanh()},q.prototype.cbrt=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.cbrt(this.get(m,T)));return this},q.cbrt=function(m){return new x(m).cbrt()},q.prototype.ceil=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.ceil(this.get(m,T)));return this},q.ceil=function(m){return new x(m).ceil()},q.prototype.clz32=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.clz32(this.get(m,T)));return this},q.clz32=function(m){return new x(m).clz32()},q.prototype.cos=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.cos(this.get(m,T)));return this},q.cos=function(m){return new x(m).cos()},q.prototype.cosh=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.cosh(this.get(m,T)));return this},q.cosh=function(m){return new x(m).cosh()},q.prototype.exp=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.exp(this.get(m,T)));return this},q.exp=function(m){return new x(m).exp()},q.prototype.expm1=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.expm1(this.get(m,T)));return this},q.expm1=function(m){return new x(m).expm1()},q.prototype.floor=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.floor(this.get(m,T)));return this},q.floor=function(m){return new x(m).floor()},q.prototype.fround=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.fround(this.get(m,T)));return this},q.fround=function(m){return new x(m).fround()},q.prototype.log=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.log(this.get(m,T)));return this},q.log=function(m){return new x(m).log()},q.prototype.log1p=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.log1p(this.get(m,T)));return this},q.log1p=function(m){return new x(m).log1p()},q.prototype.log10=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.log10(this.get(m,T)));return this},q.log10=function(m){return new x(m).log10()},q.prototype.log2=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.log2(this.get(m,T)));return this},q.log2=function(m){return new x(m).log2()},q.prototype.round=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.round(this.get(m,T)));return this},q.round=function(m){return new x(m).round()},q.prototype.sign=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.sign(this.get(m,T)));return this},q.sign=function(m){return new x(m).sign()},q.prototype.sin=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.sin(this.get(m,T)));return this},q.sin=function(m){return new x(m).sin()},q.prototype.sinh=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.sinh(this.get(m,T)));return this},q.sinh=function(m){return new x(m).sinh()},q.prototype.sqrt=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.sqrt(this.get(m,T)));return this},q.sqrt=function(m){return new x(m).sqrt()},q.prototype.tan=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.tan(this.get(m,T)));return this},q.tan=function(m){return new x(m).tan()},q.prototype.tanh=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.tanh(this.get(m,T)));return this},q.tanh=function(m){return new x(m).tanh()},q.prototype.trunc=function(){for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.set(m,T,Math.trunc(this.get(m,T)));return this},q.trunc=function(m){return new x(m).trunc()},q.pow=function(m,T){return new x(m).pow(T)},q.prototype.pow=function(m){return typeof m=="number"?this.powS(m):this.powM(m)},q.prototype.powS=function(m){for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,N(this.get(T,H),m));return this},q.prototype.powM=function(m){if(m=x.checkMatrix(m),this.rows!==m.rows||this.columns!==m.columns)throw new RangeError("Matrices dimensions must be equal");for(let T=0;T<this.rows;T++)for(let H=0;H<this.columns;H++)this.set(T,H,N(this.get(T,H),m.get(T,H)));return this}}function bt(q,x,S){let m=S?q.rows:q.rows-1;if(x<0||x>m)throw new RangeError("Row index out of range")}function Lt(q,x,S){let m=S?q.columns:q.columns-1;if(x<0||x>m)throw new RangeError("Column index out of range")}function Kt(q,x){if(x.to1DArray&&(x=x.to1DArray()),x.length!==q.columns)throw new RangeError("vector size must be the same as the number of columns");return x}function $t(q,x){if(x.to1DArray&&(x=x.to1DArray()),x.length!==q.rows)throw new RangeError("vector size must be the same as the number of rows");return x}function oe(q,x){if(!lt.isAnyArray(x))throw new TypeError("row indices must be an array");for(let S=0;S<x.length;S++)if(x[S]<0||x[S]>=q.rows)throw new RangeError("row indices are out of range")}function fe(q,x){if(!lt.isAnyArray(x))throw new TypeError("column indices must be an array");for(let S=0;S<x.length;S++)if(x[S]<0||x[S]>=q.columns)throw new RangeError("column indices are out of range")}function He(q,x,S,m,T){if(arguments.length!==5)throw new RangeError("expected 4 arguments");if(Dn("startRow",x),Dn("endRow",S),Dn("startColumn",m),Dn("endColumn",T),x>S||m>T||x<0||x>=q.rows||S<0||S>=q.rows||m<0||m>=q.columns||T<0||T>=q.columns)throw new RangeError("Submatrix indices are out of range")}function rn(q,x=0){let S=[];for(let m=0;m<q;m++)S.push(x);return S}function Dn(q,x){if(typeof x!="number")throw new TypeError(`${q} must be a number`)}function Mr(q){if(q.isEmpty())throw new Error("Empty matrix has no elements to index")}function Vi(q){let x=rn(q.rows);for(let S=0;S<q.rows;++S)for(let m=0;m<q.columns;++m)x[S]+=q.get(S,m);return x}function is(q){let x=rn(q.columns);for(let S=0;S<q.rows;++S)for(let m=0;m<q.columns;++m)x[m]+=q.get(S,m);return x}function Ao(q){let x=0;for(let S=0;S<q.rows;S++)for(let m=0;m<q.columns;m++)x+=q.get(S,m);return x}function zt(q){let x=rn(q.rows,1);for(let S=0;S<q.rows;++S)for(let m=0;m<q.columns;++m)x[S]*=q.get(S,m);return x}function Wt(q){let x=rn(q.columns,1);for(let S=0;S<q.rows;++S)for(let m=0;m<q.columns;++m)x[m]*=q.get(S,m);return x}function Yt(q){let x=1;for(let S=0;S<q.rows;S++)for(let m=0;m<q.columns;m++)x*=q.get(S,m);return x}function Et(q,x,S){const m=q.rows,T=q.columns,H=[];for(let st=0;st<m;st++){let ot=0,dt=0,gt=0;for(let Ut=0;Ut<T;Ut++)gt=q.get(st,Ut)-S[st],ot+=gt,dt+=gt*gt;x?H.push((dt-ot*ot/T)/(T-1)):H.push((dt-ot*ot/T)/T)}return H}function kt(q,x,S){const m=q.rows,T=q.columns,H=[];for(let st=0;st<T;st++){let ot=0,dt=0,gt=0;for(let Ut=0;Ut<m;Ut++)gt=q.get(Ut,st)-S[st],ot+=gt,dt+=gt*gt;x?H.push((dt-ot*ot/m)/(m-1)):H.push((dt-ot*ot/m)/m)}return H}function Dt(q,x,S){const m=q.rows,T=q.columns,H=m*T;let st=0,ot=0,dt=0;for(let gt=0;gt<m;gt++)for(let Ut=0;Ut<T;Ut++)dt=q.get(gt,Ut)-S,st+=dt,ot+=dt*dt;return x?(ot-st*st/H)/(H-1):(ot-st*st/H)/H}function ie(q,x){for(let S=0;S<q.rows;S++)for(let m=0;m<q.columns;m++)q.set(S,m,q.get(S,m)-x[S])}function xe(q,x){for(let S=0;S<q.rows;S++)for(let m=0;m<q.columns;m++)q.set(S,m,q.get(S,m)-x[m])}function _e(q,x){for(let S=0;S<q.rows;S++)for(let m=0;m<q.columns;m++)q.set(S,m,q.get(S,m)-x)}function Te(q){const x=[];for(let S=0;S<q.rows;S++){let m=0;for(let T=0;T<q.columns;T++)m+=N(q.get(S,T),2)/(q.columns-1);x.push(Math.sqrt(m))}return x}function an(q,x){for(let S=0;S<q.rows;S++)for(let m=0;m<q.columns;m++)q.set(S,m,q.get(S,m)/x[S])}function rr(q){const x=[];for(let S=0;S<q.columns;S++){let m=0;for(let T=0;T<q.rows;T++)m+=N(q.get(T,S),2)/(q.rows-1);x.push(Math.sqrt(m))}return x}function sr(q,x){for(let S=0;S<q.rows;S++)for(let m=0;m<q.columns;m++)q.set(S,m,q.get(S,m)/x[m])}function Ke(q){const x=q.size-1;let S=0;for(let m=0;m<q.columns;m++)for(let T=0;T<q.rows;T++)S+=N(q.get(T,m),2)/x;return Math.sqrt(S)}function ze(q,x){for(let S=0;S<q.rows;S++)for(let m=0;m<q.columns;m++)q.set(S,m,q.get(S,m)/x)}class ye{static from1DArray(x,S,m){if(x*S!==m.length)throw new RangeError("data length does not match given dimensions");let H=new me(x,S);for(let st=0;st<x;st++)for(let ot=0;ot<S;ot++)H.set(st,ot,m[st*S+ot]);return H}static rowVector(x){let S=new me(1,x.length);for(let m=0;m<x.length;m++)S.set(0,m,x[m]);return S}static columnVector(x){let S=new me(x.length,1);for(let m=0;m<x.length;m++)S.set(m,0,x[m]);return S}static zeros(x,S){return new me(x,S)}static ones(x,S){return new me(x,S).fill(1)}static rand(x,S,m={}){if(typeof m!="object")throw new TypeError("options must be an object");const{random:T=Math.random}=m;let H=new me(x,S);for(let st=0;st<x;st++)for(let ot=0;ot<S;ot++)H.set(st,ot,T());return H}static randInt(x,S,m={}){if(typeof m!="object")throw new TypeError("options must be an object");const{min:T=0,max:H=1e3,random:st=Math.random}=m;if(!Number.isInteger(T))throw new TypeError("min must be an integer");if(!Number.isInteger(H))throw new TypeError("max must be an integer");if(T>=H)throw new RangeError("min must be smaller than max");let ot=H-T,dt=new me(x,S);for(let gt=0;gt<x;gt++)for(let Ut=0;Ut<S;Ut++){let Bt=T+Math.round(st()*ot);dt.set(gt,Ut,Bt)}return dt}static eye(x,S,m){S===void 0&&(S=x),m===void 0&&(m=1);let T=Math.min(x,S),H=this.zeros(x,S);for(let st=0;st<T;st++)H.set(st,st,m);return H}static diag(x,S,m){let T=x.length;S===void 0&&(S=T),m===void 0&&(m=S);let H=Math.min(T,S,m),st=this.zeros(S,m);for(let ot=0;ot<H;ot++)st.set(ot,ot,x[ot]);return st}static min(x,S){x=this.checkMatrix(x),S=this.checkMatrix(S);let m=x.rows,T=x.columns,H=new me(m,T);for(let st=0;st<m;st++)for(let ot=0;ot<T;ot++)H.set(st,ot,Math.min(x.get(st,ot),S.get(st,ot)));return H}static max(x,S){x=this.checkMatrix(x),S=this.checkMatrix(S);let m=x.rows,T=x.columns,H=new this(m,T);for(let st=0;st<m;st++)for(let ot=0;ot<T;ot++)H.set(st,ot,Math.max(x.get(st,ot),S.get(st,ot)));return H}static checkMatrix(x){return ye.isMatrix(x)?x:new me(x)}static isMatrix(x){return x!=null&&x.klass==="Matrix"}get size(){return this.rows*this.columns}apply(x){if(typeof x!="function")throw new TypeError("callback must be a function");for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)x.call(this,S,m);return this}to1DArray(){let x=[];for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)x.push(this.get(S,m));return x}to2DArray(){let x=[];for(let S=0;S<this.rows;S++){x.push([]);for(let m=0;m<this.columns;m++)x[S].push(this.get(S,m))}return x}toJSON(){return this.to2DArray()}isRowVector(){return this.rows===1}isColumnVector(){return this.columns===1}isVector(){return this.rows===1||this.columns===1}isSquare(){return this.rows===this.columns}isEmpty(){return this.rows===0||this.columns===0}isSymmetric(){if(this.isSquare()){for(let x=0;x<this.rows;x++)for(let S=0;S<=x;S++)if(this.get(x,S)!==this.get(S,x))return!1;return!0}return!1}isDistance(){if(!this.isSymmetric())return!1;for(let x=0;x<this.rows;x++)if(this.get(x,x)!==0)return!1;return!0}isEchelonForm(){let x=0,S=0,m=-1,T=!0,H=!1;for(;x<this.rows&&T;){for(S=0,H=!1;S<this.columns&&H===!1;)this.get(x,S)===0?S++:this.get(x,S)===1&&S>m?(H=!0,m=S):(T=!1,H=!0);x++}return T}isReducedEchelonForm(){let x=0,S=0,m=-1,T=!0,H=!1;for(;x<this.rows&&T;){for(S=0,H=!1;S<this.columns&&H===!1;)this.get(x,S)===0?S++:this.get(x,S)===1&&S>m?(H=!0,m=S):(T=!1,H=!0);for(let st=S+1;st<this.rows;st++)this.get(x,st)!==0&&(T=!1);x++}return T}echelonForm(){let x=this.clone(),S=0,m=0;for(;S<x.rows&&m<x.columns;){let T=S;for(let H=S;H<x.rows;H++)x.get(H,m)>x.get(T,m)&&(T=H);if(x.get(T,m)===0)m++;else{x.swapRows(S,T);let H=x.get(S,m);for(let st=m;st<x.columns;st++)x.set(S,st,x.get(S,st)/H);for(let st=S+1;st<x.rows;st++){let ot=x.get(st,m)/x.get(S,m);x.set(st,m,0);for(let dt=m+1;dt<x.columns;dt++)x.set(st,dt,x.get(st,dt)-x.get(S,dt)*ot)}S++,m++}}return x}reducedEchelonForm(){let x=this.echelonForm(),S=x.columns,m=x.rows,T=m-1;for(;T>=0;)if(x.maxRow(T)===0)T--;else{let H=0,st=!1;for(;H<m&&st===!1;)x.get(T,H)===1?st=!0:H++;for(let ot=0;ot<T;ot++){let dt=x.get(ot,H);for(let gt=H;gt<S;gt++){let Ut=x.get(ot,gt)-dt*x.get(T,gt);x.set(ot,gt,Ut)}}T--}return x}set(){throw new Error("set method is unimplemented")}get(){throw new Error("get method is unimplemented")}repeat(x={}){if(typeof x!="object")throw new TypeError("options must be an object");const{rows:S=1,columns:m=1}=x;if(!Number.isInteger(S)||S<=0)throw new TypeError("rows must be a positive integer");if(!Number.isInteger(m)||m<=0)throw new TypeError("columns must be a positive integer");let T=new me(this.rows*S,this.columns*m);for(let H=0;H<S;H++)for(let st=0;st<m;st++)T.setSubMatrix(this,this.rows*H,this.columns*st);return T}fill(x){for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)this.set(S,m,x);return this}neg(){return this.mulS(-1)}getRow(x){bt(this,x);let S=[];for(let m=0;m<this.columns;m++)S.push(this.get(x,m));return S}getRowVector(x){return me.rowVector(this.getRow(x))}setRow(x,S){bt(this,x),S=Kt(this,S);for(let m=0;m<this.columns;m++)this.set(x,m,S[m]);return this}swapRows(x,S){bt(this,x),bt(this,S);for(let m=0;m<this.columns;m++){let T=this.get(x,m);this.set(x,m,this.get(S,m)),this.set(S,m,T)}return this}getColumn(x){Lt(this,x);let S=[];for(let m=0;m<this.rows;m++)S.push(this.get(m,x));return S}getColumnVector(x){return me.columnVector(this.getColumn(x))}setColumn(x,S){Lt(this,x),S=$t(this,S);for(let m=0;m<this.rows;m++)this.set(m,x,S[m]);return this}swapColumns(x,S){Lt(this,x),Lt(this,S);for(let m=0;m<this.rows;m++){let T=this.get(m,x);this.set(m,x,this.get(m,S)),this.set(m,S,T)}return this}addRowVector(x){x=Kt(this,x);for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)this.set(S,m,this.get(S,m)+x[m]);return this}subRowVector(x){x=Kt(this,x);for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)this.set(S,m,this.get(S,m)-x[m]);return this}mulRowVector(x){x=Kt(this,x);for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)this.set(S,m,this.get(S,m)*x[m]);return this}divRowVector(x){x=Kt(this,x);for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)this.set(S,m,this.get(S,m)/x[m]);return this}addColumnVector(x){x=$t(this,x);for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)this.set(S,m,this.get(S,m)+x[S]);return this}subColumnVector(x){x=$t(this,x);for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)this.set(S,m,this.get(S,m)-x[S]);return this}mulColumnVector(x){x=$t(this,x);for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)this.set(S,m,this.get(S,m)*x[S]);return this}divColumnVector(x){x=$t(this,x);for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)this.set(S,m,this.get(S,m)/x[S]);return this}mulRow(x,S){bt(this,x);for(let m=0;m<this.columns;m++)this.set(x,m,this.get(x,m)*S);return this}mulColumn(x,S){Lt(this,x);for(let m=0;m<this.rows;m++)this.set(m,x,this.get(m,x)*S);return this}max(x){if(this.isEmpty())return NaN;switch(x){case"row":{const S=new Array(this.rows).fill(Number.NEGATIVE_INFINITY);for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.get(m,T)>S[m]&&(S[m]=this.get(m,T));return S}case"column":{const S=new Array(this.columns).fill(Number.NEGATIVE_INFINITY);for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.get(m,T)>S[T]&&(S[T]=this.get(m,T));return S}case void 0:{let S=this.get(0,0);for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.get(m,T)>S&&(S=this.get(m,T));return S}default:throw new Error(`invalid option: ${x}`)}}maxIndex(){Mr(this);let x=this.get(0,0),S=[0,0];for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.get(m,T)>x&&(x=this.get(m,T),S[0]=m,S[1]=T);return S}min(x){if(this.isEmpty())return NaN;switch(x){case"row":{const S=new Array(this.rows).fill(Number.POSITIVE_INFINITY);for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.get(m,T)<S[m]&&(S[m]=this.get(m,T));return S}case"column":{const S=new Array(this.columns).fill(Number.POSITIVE_INFINITY);for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.get(m,T)<S[T]&&(S[T]=this.get(m,T));return S}case void 0:{let S=this.get(0,0);for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.get(m,T)<S&&(S=this.get(m,T));return S}default:throw new Error(`invalid option: ${x}`)}}minIndex(){Mr(this);let x=this.get(0,0),S=[0,0];for(let m=0;m<this.rows;m++)for(let T=0;T<this.columns;T++)this.get(m,T)<x&&(x=this.get(m,T),S[0]=m,S[1]=T);return S}maxRow(x){if(bt(this,x),this.isEmpty())return NaN;let S=this.get(x,0);for(let m=1;m<this.columns;m++)this.get(x,m)>S&&(S=this.get(x,m));return S}maxRowIndex(x){bt(this,x),Mr(this);let S=this.get(x,0),m=[x,0];for(let T=1;T<this.columns;T++)this.get(x,T)>S&&(S=this.get(x,T),m[1]=T);return m}minRow(x){if(bt(this,x),this.isEmpty())return NaN;let S=this.get(x,0);for(let m=1;m<this.columns;m++)this.get(x,m)<S&&(S=this.get(x,m));return S}minRowIndex(x){bt(this,x),Mr(this);let S=this.get(x,0),m=[x,0];for(let T=1;T<this.columns;T++)this.get(x,T)<S&&(S=this.get(x,T),m[1]=T);return m}maxColumn(x){if(Lt(this,x),this.isEmpty())return NaN;let S=this.get(0,x);for(let m=1;m<this.rows;m++)this.get(m,x)>S&&(S=this.get(m,x));return S}maxColumnIndex(x){Lt(this,x),Mr(this);let S=this.get(0,x),m=[0,x];for(let T=1;T<this.rows;T++)this.get(T,x)>S&&(S=this.get(T,x),m[0]=T);return m}minColumn(x){if(Lt(this,x),this.isEmpty())return NaN;let S=this.get(0,x);for(let m=1;m<this.rows;m++)this.get(m,x)<S&&(S=this.get(m,x));return S}minColumnIndex(x){Lt(this,x),Mr(this);let S=this.get(0,x),m=[0,x];for(let T=1;T<this.rows;T++)this.get(T,x)<S&&(S=this.get(T,x),m[0]=T);return m}diag(){let x=Math.min(this.rows,this.columns),S=[];for(let m=0;m<x;m++)S.push(this.get(m,m));return S}norm(x="frobenius"){switch(x){case"max":return this.max();case"frobenius":return Math.sqrt(this.dot(this));default:throw new RangeError(`unknown norm type: ${x}`)}}cumulativeSum(){let x=0;for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)x+=this.get(S,m),this.set(S,m,x);return this}dot(x){ye.isMatrix(x)&&(x=x.to1DArray());let S=this.to1DArray();if(S.length!==x.length)throw new RangeError("vectors do not have the same size");let m=0;for(let T=0;T<S.length;T++)m+=S[T]*x[T];return m}mmul(x){x=me.checkMatrix(x);let S=this.rows,m=this.columns,T=x.columns,H=new me(S,T),st=new Float64Array(m);for(let ot=0;ot<T;ot++){for(let dt=0;dt<m;dt++)st[dt]=x.get(dt,ot);for(let dt=0;dt<S;dt++){let gt=0;for(let Ut=0;Ut<m;Ut++)gt+=this.get(dt,Ut)*st[Ut];H.set(dt,ot,gt)}}return H}mpow(x){if(!this.isSquare())throw new RangeError("Matrix must be square");if(!Number.isInteger(x)||x<0)throw new RangeError("Exponent must be a non-negative integer");let S=me.eye(this.rows),m=this;for(let T=x;T>=1;T/=2)T&1&&(S=S.mmul(m)),m=m.mmul(m);return S}strassen2x2(x){x=me.checkMatrix(x);let S=new me(2,2);const m=this.get(0,0),T=x.get(0,0),H=this.get(0,1),st=x.get(0,1),ot=this.get(1,0),dt=x.get(1,0),gt=this.get(1,1),Ut=x.get(1,1),Bt=(m+gt)*(T+Ut),Xt=(ot+gt)*T,he=m*(st-Ut),Vt=gt*(dt-T),ee=(m+H)*Ut,Se=(ot-m)*(T+st),Mt=(H-gt)*(dt+Ut),ne=Bt+Vt-ee+Mt,Be=he+ee,Ge=Xt+Vt,je=Bt-Xt+he+Se;return S.set(0,0,ne),S.set(0,1,Be),S.set(1,0,Ge),S.set(1,1,je),S}strassen3x3(x){x=me.checkMatrix(x);let S=new me(3,3);const m=this.get(0,0),T=this.get(0,1),H=this.get(0,2),st=this.get(1,0),ot=this.get(1,1),dt=this.get(1,2),gt=this.get(2,0),Ut=this.get(2,1),Bt=this.get(2,2),Xt=x.get(0,0),he=x.get(0,1),Vt=x.get(0,2),ee=x.get(1,0),Se=x.get(1,1),Mt=x.get(1,2),ne=x.get(2,0),Be=x.get(2,1),Ge=x.get(2,2),je=(m+T+H-st-ot-Ut-Bt)*Se,Zn=(m-st)*(-he+Se),Ie=ot*(-Xt+he+ee-Se-Mt-ne+Ge),De=(-m+st+ot)*(Xt-he+Se),An=(st+ot)*(-Xt+he),Qt=m*Xt,re=(-m+gt+Ut)*(Xt-Vt+Mt),de=(-m+gt)*(Vt-Mt),Ae=(gt+Ut)*(-Xt+Vt),Jn=(m+T+H-ot-dt-gt-Ut)*Mt,Qn=Ut*(-Xt+Vt+ee-Se-Mt-ne+Be),jn=(-H+Ut+Bt)*(Se+ne-Be),qn=(H-Bt)*(Se-Be),Qr=H*ne,Fr=(Ut+Bt)*(-ne+Be),Rn=(-H+ot+dt)*(Mt+ne-Ge),Xi=(H-dt)*(Mt-Ge),Ji=(ot+dt)*(-ne+Ge),dn=T*ee,wr=dt*Be,$r=st*Vt,ti=gt*he,_n=Bt*Ge,ks=Qt+Qr+dn,Wo=je+De+An+Qt+jn+Qr+Fr,nu=Qt+re+Ae+Jn+Qr+Rn+Ji,co=Zn+Ie+De+Qt+Qr+Rn+Xi,uo=Zn+De+An+Qt+wr,DA=Qr+Rn+Xi+Ji+$r,ru=Qt+re+de+Qn+jn+qn+Qr,Gl=jn+qn+Qr+Fr+ti,iu=Qt+re+de+Ae+_n;return S.set(0,0,ks),S.set(0,1,Wo),S.set(0,2,nu),S.set(1,0,co),S.set(1,1,uo),S.set(1,2,DA),S.set(2,0,ru),S.set(2,1,Gl),S.set(2,2,iu),S}mmulStrassen(x){x=me.checkMatrix(x);let S=this.clone(),m=S.rows,T=S.columns,H=x.rows,st=x.columns;T!==H&&console.warn(`Multiplying ${m} x ${T} and ${H} x ${st} matrix: dimensions do not match.`);function ot(Bt,Xt,he){let Vt=Bt.rows,ee=Bt.columns;if(Vt===Xt&&ee===he)return Bt;{let Se=ye.zeros(Xt,he);return Se=Se.setSubMatrix(Bt,0,0),Se}}let dt=Math.max(m,H),gt=Math.max(T,st);S=ot(S,dt,gt),x=ot(x,dt,gt);function Ut(Bt,Xt,he,Vt){if(he<=512||Vt<=512)return Bt.mmul(Xt);he%2===1&&Vt%2===1?(Bt=ot(Bt,he+1,Vt+1),Xt=ot(Xt,he+1,Vt+1)):he%2===1?(Bt=ot(Bt,he+1,Vt),Xt=ot(Xt,he+1,Vt)):Vt%2===1&&(Bt=ot(Bt,he,Vt+1),Xt=ot(Xt,he,Vt+1));let ee=parseInt(Bt.rows/2,10),Se=parseInt(Bt.columns/2,10),Mt=Bt.subMatrix(0,ee-1,0,Se-1),ne=Xt.subMatrix(0,ee-1,0,Se-1),Be=Bt.subMatrix(0,ee-1,Se,Bt.columns-1),Ge=Xt.subMatrix(0,ee-1,Se,Xt.columns-1),je=Bt.subMatrix(ee,Bt.rows-1,0,Se-1),Zn=Xt.subMatrix(ee,Xt.rows-1,0,Se-1),Ie=Bt.subMatrix(ee,Bt.rows-1,Se,Bt.columns-1),De=Xt.subMatrix(ee,Xt.rows-1,Se,Xt.columns-1),An=Ut(ye.add(Mt,Ie),ye.add(ne,De),ee,Se),Qt=Ut(ye.add(je,Ie),ne,ee,Se),re=Ut(Mt,ye.sub(Ge,De),ee,Se),de=Ut(Ie,ye.sub(Zn,ne),ee,Se),Ae=Ut(ye.add(Mt,Be),De,ee,Se),Jn=Ut(ye.sub(je,Mt),ye.add(ne,Ge),ee,Se),Qn=Ut(ye.sub(Be,Ie),ye.add(Zn,De),ee,Se),jn=ye.add(An,de);jn.sub(Ae),jn.add(Qn);let qn=ye.add(re,Ae),Qr=ye.add(Qt,de),Fr=ye.sub(An,Qt);Fr.add(re),Fr.add(Jn);let Rn=ye.zeros(2*jn.rows,2*jn.columns);return Rn=Rn.setSubMatrix(jn,0,0),Rn=Rn.setSubMatrix(qn,jn.rows,0),Rn=Rn.setSubMatrix(Qr,0,jn.columns),Rn=Rn.setSubMatrix(Fr,jn.rows,jn.columns),Rn.subMatrix(0,he-1,0,Vt-1)}return Ut(S,x,dt,gt)}scaleRows(x={}){if(typeof x!="object")throw new TypeError("options must be an object");const{min:S=0,max:m=1}=x;if(!Number.isFinite(S))throw new TypeError("min must be a number");if(!Number.isFinite(m))throw new TypeError("max must be a number");if(S>=m)throw new RangeError("min must be smaller than max");let T=new me(this.rows,this.columns);for(let H=0;H<this.rows;H++){const st=this.getRow(H);st.length>0&&At(st,{min:S,max:m,output:st}),T.setRow(H,st)}return T}scaleColumns(x={}){if(typeof x!="object")throw new TypeError("options must be an object");const{min:S=0,max:m=1}=x;if(!Number.isFinite(S))throw new TypeError("min must be a number");if(!Number.isFinite(m))throw new TypeError("max must be a number");if(S>=m)throw new RangeError("min must be smaller than max");let T=new me(this.rows,this.columns);for(let H=0;H<this.columns;H++){const st=this.getColumn(H);st.length&&At(st,{min:S,max:m,output:st}),T.setColumn(H,st)}return T}flipRows(){const x=Math.ceil(this.columns/2);for(let S=0;S<this.rows;S++)for(let m=0;m<x;m++){let T=this.get(S,m),H=this.get(S,this.columns-1-m);this.set(S,m,H),this.set(S,this.columns-1-m,T)}return this}flipColumns(){const x=Math.ceil(this.rows/2);for(let S=0;S<this.columns;S++)for(let m=0;m<x;m++){let T=this.get(m,S),H=this.get(this.rows-1-m,S);this.set(m,S,H),this.set(this.rows-1-m,S,T)}return this}kroneckerProduct(x){x=me.checkMatrix(x);let S=this.rows,m=this.columns,T=x.rows,H=x.columns,st=new me(S*T,m*H);for(let ot=0;ot<S;ot++)for(let dt=0;dt<m;dt++)for(let gt=0;gt<T;gt++)for(let Ut=0;Ut<H;Ut++)st.set(T*ot+gt,H*dt+Ut,this.get(ot,dt)*x.get(gt,Ut));return st}kroneckerSum(x){if(x=me.checkMatrix(x),!this.isSquare()||!x.isSquare())throw new Error("Kronecker Sum needs two Square Matrices");let S=this.rows,m=x.rows,T=this.kroneckerProduct(me.eye(m,m)),H=me.eye(S,S).kroneckerProduct(x);return T.add(H)}transpose(){let x=new me(this.columns,this.rows);for(let S=0;S<this.rows;S++)for(let m=0;m<this.columns;m++)x.set(m,S,this.get(S,m));return x}sortRows(x=We){for(let S=0;S<this.rows;S++)this.setRow(S,this.getRow(S).sort(x));return this}sortColumns(x=We){for(let S=0;S<this.columns;S++)this.setColumn(S,this.getColumn(S).sort(x));return this}subMatrix(x,S,m,T){He(this,x,S,m,T);let H=new me(S-x+1,T-m+1);for(let st=x;st<=S;st++)for(let ot=m;ot<=T;ot++)H.set(st-x,ot-m,this.get(st,ot));return H}subMatrixRow(x,S,m){if(S===void 0&&(S=0),m===void 0&&(m=this.columns-1),S>m||S<0||S>=this.columns||m<0||m>=this.columns)throw new RangeError("Argument out of range");let T=new me(x.length,m-S+1);for(let H=0;H<x.length;H++)for(let st=S;st<=m;st++){if(x[H]<0||x[H]>=this.rows)throw new RangeError(`Row index out of range: ${x[H]}`);T.set(H,st-S,this.get(x[H],st))}return T}subMatrixColumn(x,S,m){if(S===void 0&&(S=0),m===void 0&&(m=this.rows-1),S>m||S<0||S>=this.rows||m<0||m>=this.rows)throw new RangeError("Argument out of range");let T=new me(m-S+1,x.length);for(let H=0;H<x.length;H++)for(let st=S;st<=m;st++){if(x[H]<0||x[H]>=this.columns)throw new RangeError(`Column index out of range: ${x[H]}`);T.set(st-S,H,this.get(st,x[H]))}return T}setSubMatrix(x,S,m){if(x=me.checkMatrix(x),x.isEmpty())return this;let T=S+x.rows-1,H=m+x.columns-1;He(this,S,T,m,H);for(let st=0;st<x.rows;st++)for(let ot=0;ot<x.columns;ot++)this.set(S+st,m+ot,x.get(st,ot));return this}selection(x,S){oe(this,x),fe(this,S);let m=new me(x.length,S.length);for(let T=0;T<x.length;T++){let H=x[T];for(let st=0;st<S.length;st++){let ot=S[st];m.set(T,st,this.get(H,ot))}}return m}trace(){let x=Math.min(this.rows,this.columns),S=0;for(let m=0;m<x;m++)S+=this.get(m,m);return S}clone(){return this.constructor.copy(this,new me(this.rows,this.columns))}static copy(x,S){for(const[m,T,H]of x.entries())S.set(m,T,H);return S}sum(x){switch(x){case"row":return Vi(this);case"column":return is(this);case void 0:return Ao(this);default:throw new Error(`invalid option: ${x}`)}}product(x){switch(x){case"row":return zt(this);case"column":return Wt(this);case void 0:return Yt(this);default:throw new Error(`invalid option: ${x}`)}}mean(x){const S=this.sum(x);switch(x){case"row":{for(let m=0;m<this.rows;m++)S[m]/=this.columns;return S}case"column":{for(let m=0;m<this.columns;m++)S[m]/=this.rows;return S}case void 0:return S/this.size;default:throw new Error(`invalid option: ${x}`)}}variance(x,S={}){if(typeof x=="object"&&(S=x,x=void 0),typeof S!="object")throw new TypeError("options must be an object");const{unbiased:m=!0,mean:T=this.mean(x)}=S;if(typeof m!="boolean")throw new TypeError("unbiased must be a boolean");switch(x){case"row":{if(!lt.isAnyArray(T))throw new TypeError("mean must be an array");return Et(this,m,T)}case"column":{if(!lt.isAnyArray(T))throw new TypeError("mean must be an array");return kt(this,m,T)}case void 0:{if(typeof T!="number")throw new TypeError("mean must be a number");return Dt(this,m,T)}default:throw new Error(`invalid option: ${x}`)}}standardDeviation(x,S){typeof x=="object"&&(S=x,x=void 0);const m=this.variance(x,S);if(x===void 0)return Math.sqrt(m);for(let T=0;T<m.length;T++)m[T]=Math.sqrt(m[T]);return m}center(x,S={}){if(typeof x=="object"&&(S=x,x=void 0),typeof S!="object")throw new TypeError("options must be an object");const{center:m=this.mean(x)}=S;switch(x){case"row":{if(!lt.isAnyArray(m))throw new TypeError("center must be an array");return ie(this,m),this}case"column":{if(!lt.isAnyArray(m))throw new TypeError("center must be an array");return xe(this,m),this}case void 0:{if(typeof m!="number")throw new TypeError("center must be a number");return _e(this,m),this}default:throw new Error(`invalid option: ${x}`)}}scale(x,S={}){if(typeof x=="object"&&(S=x,x=void 0),typeof S!="object")throw new TypeError("options must be an object");let m=S.scale;switch(x){case"row":{if(m===void 0)m=Te(this);else if(!lt.isAnyArray(m))throw new TypeError("scale must be an array");return an(this,m),this}case"column":{if(m===void 0)m=rr(this);else if(!lt.isAnyArray(m))throw new TypeError("scale must be an array");return sr(this,m),this}case void 0:{if(m===void 0)m=Ke(this);else if(typeof m!="number")throw new TypeError("scale must be a number");return ze(this,m),this}default:throw new Error(`invalid option: ${x}`)}}toString(x){return mt(this,x)}[Symbol.iterator](){return this.entries()}*entries(){for(let x=0;x<this.rows;x++)for(let S=0;S<this.columns;S++)yield[x,S,this.get(x,S)]}*values(){for(let x=0;x<this.rows;x++)for(let S=0;S<this.columns;S++)yield this.get(x,S)}}ye.prototype.klass="Matrix",typeof Symbol!="undefined"&&(ye.prototype[Symbol.for("nodejs.util.inspect.custom")]=ht);function We(q,x){return q-x}function Kr(q){return q.every(x=>typeof x=="number")}ye.random=ye.rand,ye.randomInt=ye.randInt,ye.diagonal=ye.diag,ye.prototype.diagonal=ye.prototype.diag,ye.identity=ye.eye,ye.prototype.negate=ye.prototype.neg,ye.prototype.tensorProduct=ye.prototype.kroneckerProduct;const Wi=class G1 extends ye{constructor(x,S){if(super(),Q(this,Z),k(this,"data"),G1.isMatrix(x))P(this,Z,tt).call(this,x.rows,x.columns),G1.copy(x,this);else if(Number.isInteger(x)&&x>=0)P(this,Z,tt).call(this,x,S);else if(lt.isAnyArray(x)){const m=x;if(x=m.length,S=x?m[0].length:0,typeof S!="number")throw new TypeError("Data must be a 2D array with at least one element");this.data=[];for(let T=0;T<x;T++){if(m[T].length!==S)throw new RangeError("Inconsistent array dimensions");if(!Kr(m[T]))throw new TypeError("Input data contains non-numeric values");this.data.push(Float64Array.from(m[T]))}this.rows=x,this.columns=S}else throw new TypeError("First argument must be a positive number or an array")}set(x,S,m){return this.data[x][S]=m,this}get(x,S){return this.data[x][S]}removeRow(x){return bt(this,x),this.data.splice(x,1),this.rows-=1,this}addRow(x,S){return S===void 0&&(S=x,x=this.rows),bt(this,x,!0),S=Float64Array.from(Kt(this,S)),this.data.splice(x,0,S),this.rows+=1,this}removeColumn(x){Lt(this,x);for(let S=0;S<this.rows;S++){const m=new Float64Array(this.columns-1);for(let T=0;T<x;T++)m[T]=this.data[S][T];for(let T=x+1;T<this.columns;T++)m[T-1]=this.data[S][T];this.data[S]=m}return this.columns-=1,this}addColumn(x,S){typeof S=="undefined"&&(S=x,x=this.columns),Lt(this,x,!0),S=$t(this,S);for(let m=0;m<this.rows;m++){const T=new Float64Array(this.columns+1);let H=0;for(;H<x;H++)T[H]=this.data[m][H];for(T[H++]=S[m];H<this.columns+1;H++)T[H]=this.data[m][H-1];this.data[m]=T}return this.columns+=1,this}};Z=new WeakSet,tt=function(q,x){if(this.data=[],Number.isInteger(x)&&x>=0)for(let S=0;S<q;S++)this.data.push(new Float64Array(x));else throw new TypeError("nColumns must be a positive integer");this.rows=q,this.columns=x};let me=Wi;Nt(ye,me);const Ga=class K1 extends ye{constructor(x){if(super(),Q(this,$),me.isMatrix(x)){if(!x.isSymmetric())throw new TypeError("not symmetric data");_(this,$,me.copy(x,new me(x.rows,x.rows)))}else if(Number.isInteger(x)&&x>=0)_(this,$,new me(x,x));else if(_(this,$,new me(x)),!this.isSymmetric())throw new TypeError("not symmetric data")}get size(){return L(this,$).size}get rows(){return L(this,$).rows}get columns(){return L(this,$).columns}get diagonalSize(){return this.rows}static isSymmetricMatrix(x){return me.isMatrix(x)&&x.klassType==="SymmetricMatrix"}static zeros(x){return new this(x)}static ones(x){return new this(x).fill(1)}clone(){const x=new K1(this.diagonalSize);for(const[S,m,T]of this.upperRightEntries())x.set(S,m,T);return x}toMatrix(){return new me(this)}get(x,S){return L(this,$).get(x,S)}set(x,S,m){return L(this,$).set(x,S,m),L(this,$).set(S,x,m),this}removeCross(x){return L(this,$).removeRow(x),L(this,$).removeColumn(x),this}addCross(x,S){S===void 0&&(S=x,x=this.diagonalSize);const m=S.slice();return m.splice(x,1),L(this,$).addRow(x,m),L(this,$).addColumn(x,S),this}applyMask(x){if(x.length!==this.diagonalSize)throw new RangeError("Mask size do not match with matrix size");const S=[];for(const[m,T]of x.entries())T||S.push(m);S.reverse();for(const m of S)this.removeCross(m);return this}toCompact(){const{diagonalSize:x}=this,S=new Array(x*(x+1)/2);for(let m=0,T=0,H=0;H<S.length;H++)S[H]=this.get(T,m),++m>=x&&(m=++T);return S}static fromCompact(x){const S=x.length,m=(Math.sqrt(8*S+1)-1)/2;if(!Number.isInteger(m))throw new TypeError(`This array is not a compact representation of a Symmetric Matrix, ${JSON.stringify(x)}`);const T=new K1(m);for(let H=0,st=0,ot=0;ot<S;ot++)T.set(H,st,x[ot]),++H>=m&&(H=++st);return T}*upperRightEntries(){for(let x=0,S=0;x<this.diagonalSize;void 0){const m=this.get(x,S);yield[x,S,m],++S>=this.diagonalSize&&(S=++x)}}*upperRightValues(){for(let x=0,S=0;x<this.diagonalSize;void 0)yield this.get(x,S),++S>=this.diagonalSize&&(S=++x)}};$=new WeakMap;let kr=Ga;kr.prototype.klassType="SymmetricMatrix";class Tr extends kr{static isDistanceMatrix(x){return kr.isSymmetricMatrix(x)&&x.klassSubType==="DistanceMatrix"}constructor(x){if(super(x),!this.isDistance())throw new TypeError("Provided arguments do no produce a distance matrix")}set(x,S,m){return x===S&&(m=0),super.set(x,S,m)}addCross(x,S){return S===void 0&&(S=x,x=this.diagonalSize),S=S.slice(),S[x]=0,super.addCross(x,S)}toSymmetricMatrix(){return new kr(this)}clone(){const x=new Tr(this.diagonalSize);for(const[S,m,T]of this.upperRightEntries())S!==m&&x.set(S,m,T);return x}toCompact(){const{diagonalSize:x}=this,S=(x-1)*x/2,m=new Array(S);for(let T=1,H=0,st=0;st<m.length;st++)m[st]=this.get(H,T),++T>=x&&(T=++H+1);return m}static fromCompact(x){const S=x.length;if(S===0)return new this(0);const m=(Math.sqrt(8*S+1)+1)/2;if(!Number.isInteger(m))throw new TypeError(`This array is not a compact representation of a DistanceMatrix, ${JSON.stringify(x)}`);const T=new this(m);for(let H=1,st=0,ot=0;ot<S;ot++)T.set(H,st,x[ot]),++H>=m&&(H=++st+1);return T}}Tr.prototype.klassSubType="DistanceMatrix";class fi extends ye{constructor(x,S,m){super(),this.matrix=x,this.rows=S,this.columns=m}}class as extends fi{constructor(x,S){Lt(x,S),super(x,x.rows,1),this.column=S}set(x,S,m){return this.matrix.set(x,this.column,m),this}get(x){return this.matrix.get(x,this.column)}}class Zi extends fi{constructor(x,S){fe(x,S),super(x,x.rows,S.length),this.columnIndices=S}set(x,S,m){return this.matrix.set(x,this.columnIndices[S],m),this}get(x,S){return this.matrix.get(x,this.columnIndices[S])}}class ss extends fi{constructor(x){super(x,x.rows,x.columns)}set(x,S,m){return this.matrix.set(x,this.columns-S-1,m),this}get(x,S){return this.matrix.get(x,this.columns-S-1)}}class Ii extends fi{constructor(x){super(x,x.rows,x.columns)}set(x,S,m){return this.matrix.set(this.rows-x-1,S,m),this}get(x,S){return this.matrix.get(this.rows-x-1,S)}}class Jr extends fi{constructor(x,S){bt(x,S),super(x,1,x.columns),this.row=S}set(x,S,m){return this.matrix.set(this.row,S,m),this}get(x,S){return this.matrix.get(this.row,S)}}class ma extends fi{constructor(x,S){oe(x,S),super(x,S.length,x.columns),this.rowIndices=S}set(x,S,m){return this.matrix.set(this.rowIndices[x],S,m),this}get(x,S){return this.matrix.get(this.rowIndices[x],S)}}class ya extends fi{constructor(x,S,m){oe(x,S),fe(x,m),super(x,S.length,m.length),this.rowIndices=S,this.columnIndices=m}set(x,S,m){return this.matrix.set(this.rowIndices[x],this.columnIndices[S],m),this}get(x,S){return this.matrix.get(this.rowIndices[x],this.columnIndices[S])}}class aa extends fi{constructor(x,S,m,T,H){He(x,S,m,T,H),super(x,m-S+1,H-T+1),this.startRow=S,this.startColumn=T}set(x,S,m){return this.matrix.set(this.startRow+x,this.startColumn+S,m),this}get(x,S){return this.matrix.get(this.startRow+x,this.startColumn+S)}}class wa extends fi{constructor(x){super(x,x.columns,x.rows)}set(x,S,m){return this.matrix.set(S,x,m),this}get(x,S){return this.matrix.get(S,x)}}class qr extends ye{constructor(x,S={}){const{rows:m=1}=S;if(x.length%m!==0)throw new Error("the data length is not divisible by the number of rows");super(),this.rows=m,this.columns=x.length/m,this.data=x}set(x,S,m){let T=this._calculateIndex(x,S);return this.data[T]=m,this}get(x,S){let m=this._calculateIndex(x,S);return this.data[m]}_calculateIndex(x,S){return x*this.columns+S}}class or extends ye{constructor(x){super(),this.data=x,this.rows=x.length,this.columns=x[0].length}set(x,S,m){return this.data[x][S]=m,this}get(x,S){return this.data[x][S]}}function Ko(q,x){if(lt.isAnyArray(q))return q[0]&<.isAnyArray(q[0])?new or(q):new qr(q,x);throw new Error("the argument is not an array")}class ji{constructor(x){x=or.checkMatrix(x);let S=x.clone(),m=S.rows,T=S.columns,H=new Float64Array(m),st=1,ot,dt,gt,Ut,Bt,Xt,he,Vt,ee;for(ot=0;ot<m;ot++)H[ot]=ot;for(Vt=new Float64Array(m),dt=0;dt<T;dt++){for(ot=0;ot<m;ot++)Vt[ot]=S.get(ot,dt);for(ot=0;ot<m;ot++){for(ee=Math.min(ot,dt),Bt=0,gt=0;gt<ee;gt++)Bt+=S.get(ot,gt)*Vt[gt];Vt[ot]-=Bt,S.set(ot,dt,Vt[ot])}for(Ut=dt,ot=dt+1;ot<m;ot++)Math.abs(Vt[ot])>Math.abs(Vt[Ut])&&(Ut=ot);if(Ut!==dt){for(gt=0;gt<T;gt++)Xt=S.get(Ut,gt),S.set(Ut,gt,S.get(dt,gt)),S.set(dt,gt,Xt);he=H[Ut],H[Ut]=H[dt],H[dt]=he,st=-st}if(dt<m&&S.get(dt,dt)!==0)for(ot=dt+1;ot<m;ot++)S.set(ot,dt,S.get(ot,dt)/S.get(dt,dt))}this.LU=S,this.pivotVector=H,this.pivotSign=st}isSingular(){let x=this.LU,S=x.columns;for(let m=0;m<S;m++)if(x.get(m,m)===0)return!0;return!1}solve(x){x=me.checkMatrix(x);let S=this.LU;if(S.rows!==x.rows)throw new Error("Invalid matrix dimensions");if(this.isSingular())throw new Error("LU matrix is singular");let T=x.columns,H=x.subMatrixRow(this.pivotVector,0,T-1),st=S.columns,ot,dt,gt;for(gt=0;gt<st;gt++)for(ot=gt+1;ot<st;ot++)for(dt=0;dt<T;dt++)H.set(ot,dt,H.get(ot,dt)-H.get(gt,dt)*S.get(ot,gt));for(gt=st-1;gt>=0;gt--){for(dt=0;dt<T;dt++)H.set(gt,dt,H.get(gt,dt)/S.get(gt,gt));for(ot=0;ot<gt;ot++)for(dt=0;dt<T;dt++)H.set(ot,dt,H.get(ot,dt)-H.get(gt,dt)*S.get(ot,gt))}return H}get determinant(){let x=this.LU;if(!x.isSquare())throw new Error("Matrix must be square");let S=this.pivotSign,m=x.columns;for(let T=0;T<m;T++)S*=x.get(T,T);return S}get lowerTriangularMatrix(){let x=this.LU,S=x.rows,m=x.columns,T=new me(S,m);for(let H=0;H<S;H++)for(let st=0;st<m;st++)H>st?T.set(H,st,x.get(H,st)):H===st?T.set(H,st,1):T.set(H,st,0);return T}get upperTriangularMatrix(){let x=this.LU,S=x.rows,m=x.columns,T=new me(S,m);for(let H=0;H<S;H++)for(let st=0;st<m;st++)H<=st?T.set(H,st,x.get(H,st)):T.set(H,st,0);return T}get pivotPermutationVector(){return Array.from(this.pivotVector)}}function Yi(q,x){let S=0;return Math.abs(q)>Math.abs(x)?(S=x/q,Math.abs(q)*Math.sqrt(1+S*S)):x!==0?(S=q/x,Math.abs(x)*Math.sqrt(1+S*S)):0}class lo{constructor(x){x=or.checkMatrix(x);let S=x.clone(),m=x.rows,T=x.columns,H=new Float64Array(T),st,ot,dt,gt;for(dt=0;dt<T;dt++){let Ut=0;for(st=dt;st<m;st++)Ut=Yi(Ut,S.get(st,dt));if(Ut!==0){for(S.get(dt,dt)<0&&(Ut=-Ut),st=dt;st<m;st++)S.set(st,dt,S.get(st,dt)/Ut);for(S.set(dt,dt,S.get(dt,dt)+1),ot=dt+1;ot<T;ot++){for(gt=0,st=dt;st<m;st++)gt+=S.get(st,dt)*S.get(st,ot);for(gt=-gt/S.get(dt,dt),st=dt;st<m;st++)S.set(st,ot,S.get(st,ot)+gt*S.get(st,dt))}}H[dt]=-Ut}this.QR=S,this.Rdiag=H}solve(x){x=me.checkMatrix(x);let S=this.QR,m=S.rows;if(x.rows!==m)throw new Error("Matrix row dimensions must agree");if(!this.isFullRank())throw new Error("Matrix is rank deficient");let T=x.columns,H=x.clone(),st=S.columns,ot,dt,gt,Ut;for(gt=0;gt<st;gt++)for(dt=0;dt<T;dt++){for(Ut=0,ot=gt;ot<m;ot++)Ut+=S.get(ot,gt)*H.get(ot,dt);for(Ut=-Ut/S.get(gt,gt),ot=gt;ot<m;ot++)H.set(ot,dt,H.get(ot,dt)+Ut*S.get(ot,gt))}for(gt=st-1;gt>=0;gt--){for(dt=0;dt<T;dt++)H.set(gt,dt,H.get(gt,dt)/this.Rdiag[gt]);for(ot=0;ot<gt;ot++)for(dt=0;dt<T;dt++)H.set(ot,dt,H.get(ot,dt)-H.get(gt,dt)*S.get(ot,gt))}return H.subMatrix(0,st-1,0,T-1)}isFullRank(){let x=this.QR.columns;for(let S=0;S<x;S++)if(this.Rdiag[S]===0)return!1;return!0}get upperTriangularMatrix(){let x=this.QR,S=x.columns,m=new me(S,S),T,H;for(T=0;T<S;T++)for(H=0;H<S;H++)T<H?m.set(T,H,x.get(T,H)):T===H?m.set(T,H,this.Rdiag[T]):m.set(T,H,0);return m}get orthogonalMatrix(){let x=this.QR,S=x.rows,m=x.columns,T=new me(S,m),H,st,ot,dt;for(ot=m-1;ot>=0;ot--){for(H=0;H<S;H++)T.set(H,ot,0);for(T.set(ot,ot,1),st=ot;st<m;st++)if(x.get(ot,ot)!==0){for(dt=0,H=ot;H<S;H++)dt+=x.get(H,ot)*T.get(H,st);for(dt=-dt/x.get(ot,ot),H=ot;H<S;H++)T.set(H,st,T.get(H,st)+dt*x.get(H,ot))}}return T}}class Ka{constructor(x,S={}){if(x=or.checkMatrix(x),x.isEmpty())throw new Error("Matrix must be non-empty");let m=x.rows,T=x.columns;const{computeLeftSingularVectors:H=!0,computeRightSingularVectors:st=!0,autoTranspose:ot=!1}=S;let dt=!!H,gt=!!st,Ut=!1,Bt;if(m<T)if(!ot)Bt=x.clone(),console.warn("Computing SVD on a matrix with more columns than rows. Consider enabling autoTranspose");else{Bt=x.transpose(),m=Bt.rows,T=Bt.columns,Ut=!0;let Qt=dt;dt=gt,gt=Qt}else Bt=x.clone();let Xt=Math.min(m,T),he=Math.min(m+1,T),Vt=new Float64Array(he),ee=new me(m,Xt),Se=new me(T,T),Mt=new Float64Array(T),ne=new Float64Array(m),Be=new Float64Array(he);for(let Qt=0;Qt<he;Qt++)Be[Qt]=Qt;let Ge=Math.min(m-1,T),je=Math.max(0,Math.min(T-2,m)),Zn=Math.max(Ge,je);for(let Qt=0;Qt<Zn;Qt++){if(Qt<Ge){Vt[Qt]=0;for(let re=Qt;re<m;re++)Vt[Qt]=Yi(Vt[Qt],Bt.get(re,Qt));if(Vt[Qt]!==0){Bt.get(Qt,Qt)<0&&(Vt[Qt]=-Vt[Qt]);for(let re=Qt;re<m;re++)Bt.set(re,Qt,Bt.get(re,Qt)/Vt[Qt]);Bt.set(Qt,Qt,Bt.get(Qt,Qt)+1)}Vt[Qt]=-Vt[Qt]}for(let re=Qt+1;re<T;re++){if(Qt<Ge&&Vt[Qt]!==0){let de=0;for(let Ae=Qt;Ae<m;Ae++)de+=Bt.get(Ae,Qt)*Bt.get(Ae,re);de=-de/Bt.get(Qt,Qt);for(let Ae=Qt;Ae<m;Ae++)Bt.set(Ae,re,Bt.get(Ae,re)+de*Bt.get(Ae,Qt))}Mt[re]=Bt.get(Qt,re)}if(dt&&Qt<Ge)for(let re=Qt;re<m;re++)ee.set(re,Qt,Bt.get(re,Qt));if(Qt<je){Mt[Qt]=0;for(let re=Qt+1;re<T;re++)Mt[Qt]=Yi(Mt[Qt],Mt[re]);if(Mt[Qt]!==0){Mt[Qt+1]<0&&(Mt[Qt]=0-Mt[Qt]);for(let re=Qt+1;re<T;re++)Mt[re]/=Mt[Qt];Mt[Qt+1]+=1}if(Mt[Qt]=-Mt[Qt],Qt+1<m&&Mt[Qt]!==0){for(let re=Qt+1;re<m;re++)ne[re]=0;for(let re=Qt+1;re<m;re++)for(let de=Qt+1;de<T;de++)ne[re]+=Mt[de]*Bt.get(re,de);for(let re=Qt+1;re<T;re++){let de=-Mt[re]/Mt[Qt+1];for(let Ae=Qt+1;Ae<m;Ae++)Bt.set(Ae,re,Bt.get(Ae,re)+de*ne[Ae])}}if(gt)for(let re=Qt+1;re<T;re++)Se.set(re,Qt,Mt[re])}}let Ie=Math.min(T,m+1);if(Ge<T&&(Vt[Ge]=Bt.get(Ge,Ge)),m<Ie&&(Vt[Ie-1]=0),je+1<Ie&&(Mt[je]=Bt.get(je,Ie-1)),Mt[Ie-1]=0,dt){for(let Qt=Ge;Qt<Xt;Qt++){for(let re=0;re<m;re++)ee.set(re,Qt,0);ee.set(Qt,Qt,1)}for(let Qt=Ge-1;Qt>=0;Qt--)if(Vt[Qt]!==0){for(let re=Qt+1;re<Xt;re++){let de=0;for(let Ae=Qt;Ae<m;Ae++)de+=ee.get(Ae,Qt)*ee.get(Ae,re);de=-de/ee.get(Qt,Qt);for(let Ae=Qt;Ae<m;Ae++)ee.set(Ae,re,ee.get(Ae,re)+de*ee.get(Ae,Qt))}for(let re=Qt;re<m;re++)ee.set(re,Qt,-ee.get(re,Qt));ee.set(Qt,Qt,1+ee.get(Qt,Qt));for(let re=0;re<Qt-1;re++)ee.set(re,Qt,0)}else{for(let re=0;re<m;re++)ee.set(re,Qt,0);ee.set(Qt,Qt,1)}}if(gt)for(let Qt=T-1;Qt>=0;Qt--){if(Qt<je&&Mt[Qt]!==0)for(let re=Qt+1;re<T;re++){let de=0;for(let Ae=Qt+1;Ae<T;Ae++)de+=Se.get(Ae,Qt)*Se.get(Ae,re);de=-de/Se.get(Qt+1,Qt);for(let Ae=Qt+1;Ae<T;Ae++)Se.set(Ae,re,Se.get(Ae,re)+de*Se.get(Ae,Qt))}for(let re=0;re<T;re++)Se.set(re,Qt,0);Se.set(Qt,Qt,1)}let De=Ie-1,An=Number.EPSILON;for(;Ie>0;){let Qt,re;for(Qt=Ie-2;Qt>=-1&&Qt!==-1;Qt--){const de=Number.MIN_VALUE+An*Math.abs(Vt[Qt]+Math.abs(Vt[Qt+1]));if(Math.abs(Mt[Qt])<=de||Number.isNaN(Mt[Qt])){Mt[Qt]=0;break}}if(Qt===Ie-2)re=4;else{let de;for(de=Ie-1;de>=Qt&&de!==Qt;de--){let Ae=(de!==Ie?Math.abs(Mt[de]):0)+(de!==Qt+1?Math.abs(Mt[de-1]):0);if(Math.abs(Vt[de])<=An*Ae){Vt[de]=0;break}}de===Qt?re=3:de===Ie-1?re=1:(re=2,Qt=de)}switch(Qt++,re){case 1:{let de=Mt[Ie-2];Mt[Ie-2]=0;for(let Ae=Ie-2;Ae>=Qt;Ae--){let Jn=Yi(Vt[Ae],de),Qn=Vt[Ae]/Jn,jn=de/Jn;if(Vt[Ae]=Jn,Ae!==Qt&&(de=-jn*Mt[Ae-1],Mt[Ae-1]=Qn*Mt[Ae-1]),gt)for(let qn=0;qn<T;qn++)Jn=Qn*Se.get(qn,Ae)+jn*Se.get(qn,Ie-1),Se.set(qn,Ie-1,-jn*Se.get(qn,Ae)+Qn*Se.get(qn,Ie-1)),Se.set(qn,Ae,Jn)}break}case 2:{let de=Mt[Qt-1];Mt[Qt-1]=0;for(let Ae=Qt;Ae<Ie;Ae++){let Jn=Yi(Vt[Ae],de),Qn=Vt[Ae]/Jn,jn=de/Jn;if(Vt[Ae]=Jn,de=-jn*Mt[Ae],Mt[Ae]=Qn*Mt[Ae],dt)for(let qn=0;qn<m;qn++)Jn=Qn*ee.get(qn,Ae)+jn*ee.get(qn,Qt-1),ee.set(qn,Qt-1,-jn*ee.get(qn,Ae)+Qn*ee.get(qn,Qt-1)),ee.set(qn,Ae,Jn)}break}case 3:{const de=Math.max(Math.abs(Vt[Ie-1]),Math.abs(Vt[Ie-2]),Math.abs(Mt[Ie-2]),Math.abs(Vt[Qt]),Math.abs(Mt[Qt])),Ae=Vt[Ie-1]/de,Jn=Vt[Ie-2]/de,Qn=Mt[Ie-2]/de,jn=Vt[Qt]/de,qn=Mt[Qt]/de,Qr=((Jn+Ae)*(Jn-Ae)+Qn*Qn)/2,Fr=Ae*Qn*(Ae*Qn);let Rn=0;(Qr!==0||Fr!==0)&&(Qr<0?Rn=0-Math.sqrt(Qr*Qr+Fr):Rn=Math.sqrt(Qr*Qr+Fr),Rn=Fr/(Qr+Rn));let Xi=(jn+Ae)*(jn-Ae)+Rn,Ji=jn*qn;for(let dn=Qt;dn<Ie-1;dn++){let wr=Yi(Xi,Ji);wr===0&&(wr=Number.MIN_VALUE);let $r=Xi/wr,ti=Ji/wr;if(dn!==Qt&&(Mt[dn-1]=wr),Xi=$r*Vt[dn]+ti*Mt[dn],Mt[dn]=$r*Mt[dn]-ti*Vt[dn],Ji=ti*Vt[dn+1],Vt[dn+1]=$r*Vt[dn+1],gt)for(let _n=0;_n<T;_n++)wr=$r*Se.get(_n,dn)+ti*Se.get(_n,dn+1),Se.set(_n,dn+1,-ti*Se.get(_n,dn)+$r*Se.get(_n,dn+1)),Se.set(_n,dn,wr);if(wr=Yi(Xi,Ji),wr===0&&(wr=Number.MIN_VALUE),$r=Xi/wr,ti=Ji/wr,Vt[dn]=wr,Xi=$r*Mt[dn]+ti*Vt[dn+1],Vt[dn+1]=-ti*Mt[dn]+$r*Vt[dn+1],Ji=ti*Mt[dn+1],Mt[dn+1]=$r*Mt[dn+1],dt&&dn<m-1)for(let _n=0;_n<m;_n++)wr=$r*ee.get(_n,dn)+ti*ee.get(_n,dn+1),ee.set(_n,dn+1,-ti*ee.get(_n,dn)+$r*ee.get(_n,dn+1)),ee.set(_n,dn,wr)}Mt[Ie-2]=Xi;break}case 4:{if(Vt[Qt]<=0&&(Vt[Qt]=Vt[Qt]<0?-Vt[Qt]:0,gt))for(let de=0;de<=De;de++)Se.set(de,Qt,-Se.get(de,Qt));for(;Qt<De&&!(Vt[Qt]>=Vt[Qt+1]);){let de=Vt[Qt];if(Vt[Qt]=Vt[Qt+1],Vt[Qt+1]=de,gt&&Qt<T-1)for(let Ae=0;Ae<T;Ae++)de=Se.get(Ae,Qt+1),Se.set(Ae,Qt+1,Se.get(Ae,Qt)),Se.set(Ae,Qt,de);if(dt&&Qt<m-1)for(let Ae=0;Ae<m;Ae++)de=ee.get(Ae,Qt+1),ee.set(Ae,Qt+1,ee.get(Ae,Qt)),ee.set(Ae,Qt,de);Qt++}Ie--;break}}}if(Ut){let Qt=Se;Se=ee,ee=Qt}this.m=m,this.n=T,this.s=Vt,this.U=ee,this.V=Se}solve(x){let S=x,m=this.threshold,T=this.s.length,H=me.zeros(T,T);for(let Xt=0;Xt<T;Xt++)Math.abs(this.s[Xt])<=m?H.set(Xt,Xt,0):H.set(Xt,Xt,1/this.s[Xt]);let st=this.U,ot=this.rightSingularVectors,dt=ot.mmul(H),gt=ot.rows,Ut=st.rows,Bt=me.zeros(gt,Ut);for(let Xt=0;Xt<gt;Xt++)for(let he=0;he<Ut;he++){let Vt=0;for(let ee=0;ee<T;ee++)Vt+=dt.get(Xt,ee)*st.get(he,ee);Bt.set(Xt,he,Vt)}return Bt.mmul(S)}solveForDiagonal(x){return this.solve(me.diag(x))}inverse(){let x=this.V,S=this.threshold,m=x.rows,T=x.columns,H=new me(m,this.s.length);for(let Ut=0;Ut<m;Ut++)for(let Bt=0;Bt<T;Bt++)Math.abs(this.s[Bt])>S&&H.set(Ut,Bt,x.get(Ut,Bt)/this.s[Bt]);let st=this.U,ot=st.rows,dt=st.columns,gt=new me(m,ot);for(let Ut=0;Ut<m;Ut++)for(let Bt=0;Bt<ot;Bt++){let Xt=0;for(let he=0;he<dt;he++)Xt+=H.get(Ut,he)*st.get(Bt,he);gt.set(Ut,Bt,Xt)}return gt}get condition(){return this.s[0]/this.s[Math.min(this.m,this.n)-1]}get norm2(){return this.s[0]}get rank(){let x=Math.max(this.m,this.n)*this.s[0]*Number.EPSILON,S=0,m=this.s;for(let T=0,H=m.length;T<H;T++)m[T]>x&&S++;return S}get diagonal(){return Array.from(this.s)}get threshold(){return Number.EPSILON/2*Math.max(this.m,this.n)*this.s[0]}get leftSingularVectors(){return this.U}get rightSingularVectors(){return this.V}get diagonalMatrix(){return me.diag(this.s)}}function zo(q,x=!1){return q=or.checkMatrix(q),x?new Ka(q).inverse():kA(q,me.eye(q.rows))}function kA(q,x,S=!1){return q=or.checkMatrix(q),x=or.checkMatrix(x),S?new Ka(q).solve(x):q.isSquare()?new ji(q).solve(x):new lo(q).solve(x)}function Ns(q){if(q=me.checkMatrix(q),q.isSquare()){if(q.columns===0)return 1;let x,S,m,T;if(q.columns===2)return x=q.get(0,0),S=q.get(0,1),m=q.get(1,0),T=q.get(1,1),x*T-S*m;if(q.columns===3){let H,st,ot;return H=new ya(q,[1,2],[1,2]),st=new ya(q,[1,2],[0,2]),ot=new ya(q,[1,2],[0,1]),x=q.get(0,0),S=q.get(0,1),m=q.get(0,2),x*Ns(H)-S*Ns(st)+m*Ns(ot)}else return new ji(q).determinant}else throw Error("determinant can only be calculated for a square matrix")}function QA(q,x){let S=[];for(let m=0;m<q;m++)m!==x&&S.push(m);return S}function Pl(q,x,S,m=1e-9,T=1e-9){if(q>T)return new Array(x.rows+1).fill(0);{let H=x.addRow(S,[0]);for(let st=0;st<H.rows;st++)Math.abs(H.get(st,0))<m&&H.set(st,0,0);return H.to1DArray()}}function eu(q,x={}){const{thresholdValue:S=1e-9,thresholdError:m=1e-9}=x;q=me.checkMatrix(q);let T=q.rows,H=new me(T,T);for(let st=0;st<T;st++){let ot=me.columnVector(q.getRow(st)),dt=q.subMatrixRow(QA(T,st)).transpose(),Ut=new Ka(dt).solve(ot),Bt=me.sub(ot,dt.mmul(Ut)).abs().max();H.setRow(st,Pl(Bt,Ut,st,S,m))}return H}function Gh(q,x=Number.EPSILON){if(q=me.checkMatrix(q),q.isEmpty())return q.transpose();let S=new Ka(q,{autoTranspose:!0}),m=S.leftSingularVectors,T=S.rightSingularVectors,H=S.diagonal;for(let st=0;st<H.length;st++)Math.abs(H[st])>x?H[st]=1/H[st]:H[st]=0;return T.mmul(me.diag(H).mmul(m.transpose()))}function Kh(q,x=q,S={}){q=new me(q);let m=!1;if(typeof x=="object"&&!me.isMatrix(x)&&!lt.isAnyArray(x)?(S=x,x=q,m=!0):x=new me(x),q.rows!==x.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:T=!0}=S;T&&(q=q.center("column"),m||(x=x.center("column")));const H=q.transpose().mmul(x);for(let st=0;st<H.rows;st++)for(let ot=0;ot<H.columns;ot++)H.set(st,ot,H.get(st,ot)*(1/(q.rows-1)));return H}function Dl(q,x=q,S={}){q=new me(q);let m=!1;if(typeof x=="object"&&!me.isMatrix(x)&&!lt.isAnyArray(x)?(S=x,x=q,m=!0):x=new me(x),q.rows!==x.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:T=!0,scale:H=!0}=S;T&&(q.center("column"),m||x.center("column")),H&&(q.scale("column"),m||x.scale("column"));const st=q.standardDeviation("column",{unbiased:!0}),ot=m?st:x.standardDeviation("column",{unbiased:!0}),dt=q.transpose().mmul(x);for(let gt=0;gt<dt.rows;gt++)for(let Ut=0;Ut<dt.columns;Ut++)dt.set(gt,Ut,dt.get(gt,Ut)*(1/(st[gt]*ot[Ut]))*(1/(q.rows-1)));return dt}class pn{constructor(x,S={}){const{assumeSymmetric:m=!1}=S;if(x=or.checkMatrix(x),!x.isSquare())throw new Error("Matrix is not a square matrix");if(x.isEmpty())throw new Error("Matrix must be non-empty");let T=x.columns,H=new me(T,T),st=new Float64Array(T),ot=new Float64Array(T),dt=x,gt,Ut,Bt=!1;if(m?Bt=!0:Bt=x.isSymmetric(),Bt){for(gt=0;gt<T;gt++)for(Ut=0;Ut<T;Ut++)H.set(gt,Ut,dt.get(gt,Ut));UA(T,ot,st,H),Rl(T,ot,st,H)}else{let Xt=new me(T,T),he=new Float64Array(T);for(Ut=0;Ut<T;Ut++)for(gt=0;gt<T;gt++)Xt.set(gt,Ut,dt.get(gt,Ut));Ea(T,Xt,he,H),PA(T,ot,st,H,Xt)}this.n=T,this.e=ot,this.d=st,this.V=H}get realEigenvalues(){return Array.from(this.d)}get imaginaryEigenvalues(){return Array.from(this.e)}get eigenvectorMatrix(){return this.V}get diagonalMatrix(){let x=this.n,S=this.e,m=this.d,T=new me(x,x),H,st;for(H=0;H<x;H++){for(st=0;st<x;st++)T.set(H,st,0);T.set(H,H,m[H]),S[H]>0?T.set(H,H+1,S[H]):S[H]<0&&T.set(H,H-1,S[H])}return T}}function UA(q,x,S,m){let T,H,st,ot,dt,gt,Ut,Bt;for(dt=0;dt<q;dt++)S[dt]=m.get(q-1,dt);for(ot=q-1;ot>0;ot--){for(Bt=0,st=0,gt=0;gt<ot;gt++)Bt=Bt+Math.abs(S[gt]);if(Bt===0)for(x[ot]=S[ot-1],dt=0;dt<ot;dt++)S[dt]=m.get(ot-1,dt),m.set(ot,dt,0),m.set(dt,ot,0);else{for(gt=0;gt<ot;gt++)S[gt]/=Bt,st+=S[gt]*S[gt];for(T=S[ot-1],H=Math.sqrt(st),T>0&&(H=-H),x[ot]=Bt*H,st=st-T*H,S[ot-1]=T-H,dt=0;dt<ot;dt++)x[dt]=0;for(dt=0;dt<ot;dt++){for(T=S[dt],m.set(dt,ot,T),H=x[dt]+m.get(dt,dt)*T,gt=dt+1;gt<=ot-1;gt++)H+=m.get(gt,dt)*S[gt],x[gt]+=m.get(gt,dt)*T;x[dt]=H}for(T=0,dt=0;dt<ot;dt++)x[dt]/=st,T+=x[dt]*S[dt];for(Ut=T/(st+st),dt=0;dt<ot;dt++)x[dt]-=Ut*S[dt];for(dt=0;dt<ot;dt++){for(T=S[dt],H=x[dt],gt=dt;gt<=ot-1;gt++)m.set(gt,dt,m.get(gt,dt)-(T*x[gt]+H*S[gt]));S[dt]=m.get(ot-1,dt),m.set(ot,dt,0)}}S[ot]=st}for(ot=0;ot<q-1;ot++){if(m.set(q-1,ot,m.get(ot,ot)),m.set(ot,ot,1),st=S[ot+1],st!==0){for(gt=0;gt<=ot;gt++)S[gt]=m.get(gt,ot+1)/st;for(dt=0;dt<=ot;dt++){for(H=0,gt=0;gt<=ot;gt++)H+=m.get(gt,ot+1)*m.get(gt,dt);for(gt=0;gt<=ot;gt++)m.set(gt,dt,m.get(gt,dt)-H*S[gt])}}for(gt=0;gt<=ot;gt++)m.set(gt,ot+1,0)}for(dt=0;dt<q;dt++)S[dt]=m.get(q-1,dt),m.set(q-1,dt,0);m.set(q-1,q-1,1),x[0]=0}function Rl(q,x,S,m){let T,H,st,ot,dt,gt,Ut,Bt,Xt,he,Vt,ee,Se,Mt,ne,Be;for(st=1;st<q;st++)x[st-1]=x[st];x[q-1]=0;let Ge=0,je=0,Zn=Number.EPSILON;for(gt=0;gt<q;gt++){for(je=Math.max(je,Math.abs(S[gt])+Math.abs(x[gt])),Ut=gt;Ut<q&&!(Math.abs(x[Ut])<=Zn*je);)Ut++;if(Ut>gt)do{for(T=S[gt],Bt=(S[gt+1]-T)/(2*x[gt]),Xt=Yi(Bt,1),Bt<0&&(Xt=-Xt),S[gt]=x[gt]/(Bt+Xt),S[gt+1]=x[gt]*(Bt+Xt),he=S[gt+1],H=T-S[gt],st=gt+2;st<q;st++)S[st]-=H;for(Ge=Ge+H,Bt=S[Ut],Vt=1,ee=Vt,Se=Vt,Mt=x[gt+1],ne=0,Be=0,st=Ut-1;st>=gt;st--)for(Se=ee,ee=Vt,Be=ne,T=Vt*x[st],H=Vt*Bt,Xt=Yi(Bt,x[st]),x[st+1]=ne*Xt,ne=x[st]/Xt,Vt=Bt/Xt,Bt=Vt*S[st]-ne*T,S[st+1]=H+ne*(Vt*T+ne*S[st]),dt=0;dt<q;dt++)H=m.get(dt,st+1),m.set(dt,st+1,ne*m.get(dt,st)+Vt*H),m.set(dt,st,Vt*m.get(dt,st)-ne*H);Bt=-ne*Be*Se*Mt*x[gt]/he,x[gt]=ne*Bt,S[gt]=Vt*Bt}while(Math.abs(x[gt])>Zn*je);S[gt]=S[gt]+Ge,x[gt]=0}for(st=0;st<q-1;st++){for(dt=st,Bt=S[st],ot=st+1;ot<q;ot++)S[ot]<Bt&&(dt=ot,Bt=S[ot]);if(dt!==st)for(S[dt]=S[st],S[st]=Bt,ot=0;ot<q;ot++)Bt=m.get(ot,st),m.set(ot,st,m.get(ot,dt)),m.set(ot,dt,Bt)}}function Ea(q,x,S,m){let T=0,H=q-1,st,ot,dt,gt,Ut,Bt,Xt;for(Bt=T+1;Bt<=H-1;Bt++){for(Xt=0,gt=Bt;gt<=H;gt++)Xt=Xt+Math.abs(x.get(gt,Bt-1));if(Xt!==0){for(dt=0,gt=H;gt>=Bt;gt--)S[gt]=x.get(gt,Bt-1)/Xt,dt+=S[gt]*S[gt];for(ot=Math.sqrt(dt),S[Bt]>0&&(ot=-ot),dt=dt-S[Bt]*ot,S[Bt]=S[Bt]-ot,Ut=Bt;Ut<q;Ut++){for(st=0,gt=H;gt>=Bt;gt--)st+=S[gt]*x.get(gt,Ut);for(st=st/dt,gt=Bt;gt<=H;gt++)x.set(gt,Ut,x.get(gt,Ut)-st*S[gt])}for(gt=0;gt<=H;gt++){for(st=0,Ut=H;Ut>=Bt;Ut--)st+=S[Ut]*x.get(gt,Ut);for(st=st/dt,Ut=Bt;Ut<=H;Ut++)x.set(gt,Ut,x.get(gt,Ut)-st*S[Ut])}S[Bt]=Xt*S[Bt],x.set(Bt,Bt-1,Xt*ot)}}for(gt=0;gt<q;gt++)for(Ut=0;Ut<q;Ut++)m.set(gt,Ut,gt===Ut?1:0);for(Bt=H-1;Bt>=T+1;Bt--)if(x.get(Bt,Bt-1)!==0){for(gt=Bt+1;gt<=H;gt++)S[gt]=x.get(gt,Bt-1);for(Ut=Bt;Ut<=H;Ut++){for(ot=0,gt=Bt;gt<=H;gt++)ot+=S[gt]*m.get(gt,Ut);for(ot=ot/S[Bt]/x.get(Bt,Bt-1),gt=Bt;gt<=H;gt++)m.set(gt,Ut,m.get(gt,Ut)+ot*S[gt])}}}function PA(q,x,S,m,T){let H=q-1,st=0,ot=q-1,dt=Number.EPSILON,gt=0,Ut=0,Bt=0,Xt=0,he=0,Vt=0,ee=0,Se=0,Mt,ne,Be,Ge,je,Zn,Ie,De,An,Qt,re,de,Ae,Jn,Qn;for(Mt=0;Mt<q;Mt++)for((Mt<st||Mt>ot)&&(S[Mt]=T.get(Mt,Mt),x[Mt]=0),ne=Math.max(Mt-1,0);ne<q;ne++)Ut=Ut+Math.abs(T.get(Mt,ne));for(;H>=st;){for(Ge=H;Ge>st&&(Vt=Math.abs(T.get(Ge-1,Ge-1))+Math.abs(T.get(Ge,Ge)),Vt===0&&(Vt=Ut),!(Math.abs(T.get(Ge,Ge-1))<dt*Vt));)Ge--;if(Ge===H)T.set(H,H,T.get(H,H)+gt),S[H]=T.get(H,H),x[H]=0,H--,Se=0;else if(Ge===H-1){if(Ie=T.get(H,H-1)*T.get(H-1,H),Bt=(T.get(H-1,H-1)-T.get(H,H))/2,Xt=Bt*Bt+Ie,ee=Math.sqrt(Math.abs(Xt)),T.set(H,H,T.get(H,H)+gt),T.set(H-1,H-1,T.get(H-1,H-1)+gt),De=T.get(H,H),Xt>=0){for(ee=Bt>=0?Bt+ee:Bt-ee,S[H-1]=De+ee,S[H]=S[H-1],ee!==0&&(S[H]=De-Ie/ee),x[H-1]=0,x[H]=0,De=T.get(H,H-1),Vt=Math.abs(De)+Math.abs(ee),Bt=De/Vt,Xt=ee/Vt,he=Math.sqrt(Bt*Bt+Xt*Xt),Bt=Bt/he,Xt=Xt/he,ne=H-1;ne<q;ne++)ee=T.get(H-1,ne),T.set(H-1,ne,Xt*ee+Bt*T.get(H,ne)),T.set(H,ne,Xt*T.get(H,ne)-Bt*ee);for(Mt=0;Mt<=H;Mt++)ee=T.get(Mt,H-1),T.set(Mt,H-1,Xt*ee+Bt*T.get(Mt,H)),T.set(Mt,H,Xt*T.get(Mt,H)-Bt*ee);for(Mt=st;Mt<=ot;Mt++)ee=m.get(Mt,H-1),m.set(Mt,H-1,Xt*ee+Bt*m.get(Mt,H)),m.set(Mt,H,Xt*m.get(Mt,H)-Bt*ee)}else S[H-1]=De+Bt,S[H]=De+Bt,x[H-1]=ee,x[H]=-ee;H=H-2,Se=0}else{if(De=T.get(H,H),An=0,Ie=0,Ge<H&&(An=T.get(H-1,H-1),Ie=T.get(H,H-1)*T.get(H-1,H)),Se===10){for(gt+=De,Mt=st;Mt<=H;Mt++)T.set(Mt,Mt,T.get(Mt,Mt)-De);Vt=Math.abs(T.get(H,H-1))+Math.abs(T.get(H-1,H-2)),De=An=.75*Vt,Ie=-.4375*Vt*Vt}if(Se===30&&(Vt=(An-De)/2,Vt=Vt*Vt+Ie,Vt>0)){for(Vt=Math.sqrt(Vt),An<De&&(Vt=-Vt),Vt=De-Ie/((An-De)/2+Vt),Mt=st;Mt<=H;Mt++)T.set(Mt,Mt,T.get(Mt,Mt)-Vt);gt+=Vt,De=An=Ie=.964}for(Se=Se+1,je=H-2;je>=Ge&&(ee=T.get(je,je),he=De-ee,Vt=An-ee,Bt=(he*Vt-Ie)/T.get(je+1,je)+T.get(je,je+1),Xt=T.get(je+1,je+1)-ee-he-Vt,he=T.get(je+2,je+1),Vt=Math.abs(Bt)+Math.abs(Xt)+Math.abs(he),Bt=Bt/Vt,Xt=Xt/Vt,he=he/Vt,!(je===Ge||Math.abs(T.get(je,je-1))*(Math.abs(Xt)+Math.abs(he))<dt*(Math.abs(Bt)*(Math.abs(T.get(je-1,je-1))+Math.abs(ee)+Math.abs(T.get(je+1,je+1))))));)je--;for(Mt=je+2;Mt<=H;Mt++)T.set(Mt,Mt-2,0),Mt>je+2&&T.set(Mt,Mt-3,0);for(Be=je;Be<=H-1&&(Jn=Be!==H-1,Be!==je&&(Bt=T.get(Be,Be-1),Xt=T.get(Be+1,Be-1),he=Jn?T.get(Be+2,Be-1):0,De=Math.abs(Bt)+Math.abs(Xt)+Math.abs(he),De!==0&&(Bt=Bt/De,Xt=Xt/De,he=he/De)),De!==0);Be++)if(Vt=Math.sqrt(Bt*Bt+Xt*Xt+he*he),Bt<0&&(Vt=-Vt),Vt!==0){for(Be!==je?T.set(Be,Be-1,-Vt*De):Ge!==je&&T.set(Be,Be-1,-T.get(Be,Be-1)),Bt=Bt+Vt,De=Bt/Vt,An=Xt/Vt,ee=he/Vt,Xt=Xt/Bt,he=he/Bt,ne=Be;ne<q;ne++)Bt=T.get(Be,ne)+Xt*T.get(Be+1,ne),Jn&&(Bt=Bt+he*T.get(Be+2,ne),T.set(Be+2,ne,T.get(Be+2,ne)-Bt*ee)),T.set(Be,ne,T.get(Be,ne)-Bt*De),T.set(Be+1,ne,T.get(Be+1,ne)-Bt*An);for(Mt=0;Mt<=Math.min(H,Be+3);Mt++)Bt=De*T.get(Mt,Be)+An*T.get(Mt,Be+1),Jn&&(Bt=Bt+ee*T.get(Mt,Be+2),T.set(Mt,Be+2,T.get(Mt,Be+2)-Bt*he)),T.set(Mt,Be,T.get(Mt,Be)-Bt),T.set(Mt,Be+1,T.get(Mt,Be+1)-Bt*Xt);for(Mt=st;Mt<=ot;Mt++)Bt=De*m.get(Mt,Be)+An*m.get(Mt,Be+1),Jn&&(Bt=Bt+ee*m.get(Mt,Be+2),m.set(Mt,Be+2,m.get(Mt,Be+2)-Bt*he)),m.set(Mt,Be,m.get(Mt,Be)-Bt),m.set(Mt,Be+1,m.get(Mt,Be+1)-Bt*Xt)}}}if(Ut!==0){for(H=q-1;H>=0;H--)if(Bt=S[H],Xt=x[H],Xt===0)for(Ge=H,T.set(H,H,1),Mt=H-1;Mt>=0;Mt--){for(Ie=T.get(Mt,Mt)-Bt,he=0,ne=Ge;ne<=H;ne++)he=he+T.get(Mt,ne)*T.get(ne,H);if(x[Mt]<0)ee=Ie,Vt=he;else if(Ge=Mt,x[Mt]===0?T.set(Mt,H,Ie!==0?-he/Ie:-he/(dt*Ut)):(De=T.get(Mt,Mt+1),An=T.get(Mt+1,Mt),Xt=(S[Mt]-Bt)*(S[Mt]-Bt)+x[Mt]*x[Mt],Zn=(De*Vt-ee*he)/Xt,T.set(Mt,H,Zn),T.set(Mt+1,H,Math.abs(De)>Math.abs(ee)?(-he-Ie*Zn)/De:(-Vt-An*Zn)/ee)),Zn=Math.abs(T.get(Mt,H)),dt*Zn*Zn>1)for(ne=Mt;ne<=H;ne++)T.set(ne,H,T.get(ne,H)/Zn)}else if(Xt<0)for(Ge=H-1,Math.abs(T.get(H,H-1))>Math.abs(T.get(H-1,H))?(T.set(H-1,H-1,Xt/T.get(H,H-1)),T.set(H-1,H,-(T.get(H,H)-Bt)/T.get(H,H-1))):(Qn=Vo(0,-T.get(H-1,H),T.get(H-1,H-1)-Bt,Xt),T.set(H-1,H-1,Qn[0]),T.set(H-1,H,Qn[1])),T.set(H,H-1,0),T.set(H,H,1),Mt=H-2;Mt>=0;Mt--){for(Qt=0,re=0,ne=Ge;ne<=H;ne++)Qt=Qt+T.get(Mt,ne)*T.get(ne,H-1),re=re+T.get(Mt,ne)*T.get(ne,H);if(Ie=T.get(Mt,Mt)-Bt,x[Mt]<0)ee=Ie,he=Qt,Vt=re;else if(Ge=Mt,x[Mt]===0?(Qn=Vo(-Qt,-re,Ie,Xt),T.set(Mt,H-1,Qn[0]),T.set(Mt,H,Qn[1])):(De=T.get(Mt,Mt+1),An=T.get(Mt+1,Mt),de=(S[Mt]-Bt)*(S[Mt]-Bt)+x[Mt]*x[Mt]-Xt*Xt,Ae=(S[Mt]-Bt)*2*Xt,de===0&&Ae===0&&(de=dt*Ut*(Math.abs(Ie)+Math.abs(Xt)+Math.abs(De)+Math.abs(An)+Math.abs(ee))),Qn=Vo(De*he-ee*Qt+Xt*re,De*Vt-ee*re-Xt*Qt,de,Ae),T.set(Mt,H-1,Qn[0]),T.set(Mt,H,Qn[1]),Math.abs(De)>Math.abs(ee)+Math.abs(Xt)?(T.set(Mt+1,H-1,(-Qt-Ie*T.get(Mt,H-1)+Xt*T.get(Mt,H))/De),T.set(Mt+1,H,(-re-Ie*T.get(Mt,H)-Xt*T.get(Mt,H-1))/De)):(Qn=Vo(-he-An*T.get(Mt,H-1),-Vt-An*T.get(Mt,H),ee,Xt),T.set(Mt+1,H-1,Qn[0]),T.set(Mt+1,H,Qn[1]))),Zn=Math.max(Math.abs(T.get(Mt,H-1)),Math.abs(T.get(Mt,H))),dt*Zn*Zn>1)for(ne=Mt;ne<=H;ne++)T.set(ne,H-1,T.get(ne,H-1)/Zn),T.set(ne,H,T.get(ne,H)/Zn)}for(Mt=0;Mt<q;Mt++)if(Mt<st||Mt>ot)for(ne=Mt;ne<q;ne++)m.set(Mt,ne,T.get(Mt,ne));for(ne=q-1;ne>=st;ne--)for(Mt=st;Mt<=ot;Mt++){for(ee=0,Be=st;Be<=Math.min(ne,ot);Be++)ee=ee+m.get(Mt,Be)*T.get(Be,ne);m.set(Mt,ne,ee)}}}function Vo(q,x,S,m){let T,H;return Math.abs(S)>Math.abs(m)?(T=m/S,H=S+T*m,[(q+T*x)/H,(x-T*q)/H]):(T=S/m,H=m+T*S,[(T*q+x)/H,(T*x-q)/H])}class _l{constructor(x){if(x=or.checkMatrix(x),!x.isSymmetric())throw new Error("Matrix is not symmetric");let S=x,m=S.rows,T=new me(m,m),H=!0,st,ot,dt;for(ot=0;ot<m;ot++){let gt=0;for(dt=0;dt<ot;dt++){let Ut=0;for(st=0;st<dt;st++)Ut+=T.get(dt,st)*T.get(ot,st);Ut=(S.get(ot,dt)-Ut)/T.get(dt,dt),T.set(ot,dt,Ut),gt=gt+Ut*Ut}for(gt=S.get(ot,ot)-gt,H&&(H=gt>0),T.set(ot,ot,Math.sqrt(Math.max(gt,0))),dt=ot+1;dt<m;dt++)T.set(ot,dt,0)}this.L=T,this.positiveDefinite=H}isPositiveDefinite(){return this.positiveDefinite}solve(x){x=or.checkMatrix(x);let S=this.L,m=S.rows;if(x.rows!==m)throw new Error("Matrix dimensions do not match");if(this.isPositiveDefinite()===!1)throw new Error("Matrix is not positive definite");let T=x.columns,H=x.clone(),st,ot,dt;for(dt=0;dt<m;dt++)for(ot=0;ot<T;ot++){for(st=0;st<dt;st++)H.set(dt,ot,H.get(dt,ot)-H.get(st,ot)*S.get(dt,st));H.set(dt,ot,H.get(dt,ot)/S.get(dt,dt))}for(dt=m-1;dt>=0;dt--)for(ot=0;ot<T;ot++){for(st=dt+1;st<m;st++)H.set(dt,ot,H.get(dt,ot)-H.get(st,ot)*S.get(st,dt));H.set(dt,ot,H.get(dt,ot)/S.get(dt,dt))}return H}get lowerTriangularMatrix(){return this.L}}class Hl{constructor(x,S={}){x=or.checkMatrix(x);let{Y:m}=S;const{scaleScores:T=!1,maxIterations:H=1e3,terminationCriteria:st=1e-10}=S;let ot;if(m){if(lt.isAnyArray(m)&&typeof m[0]=="number"?m=me.columnVector(m):m=or.checkMatrix(m),m.rows!==x.rows)throw new Error("Y should have the same number of rows as X");ot=m.getColumnVector(0)}else ot=x.getColumnVector(0);let dt=1,gt,Ut,Bt,Xt;for(let he=0;he<H&&dt>st;he++)Bt=x.transpose().mmul(ot).div(ot.transpose().mmul(ot).get(0,0)),Bt=Bt.div(Bt.norm()),gt=x.mmul(Bt).div(Bt.transpose().mmul(Bt).get(0,0)),he>0&&(dt=gt.clone().sub(Xt).pow(2).sum()),Xt=gt.clone(),m?(Ut=m.transpose().mmul(gt).div(gt.transpose().mmul(gt).get(0,0)),Ut=Ut.div(Ut.norm()),ot=m.mmul(Ut).div(Ut.transpose().mmul(Ut).get(0,0))):ot=gt;if(m){let he=x.transpose().mmul(gt).div(gt.transpose().mmul(gt).get(0,0));he=he.div(he.norm());let Vt=x.clone().sub(gt.clone().mmul(he.transpose())),ee=ot.transpose().mmul(gt).div(gt.transpose().mmul(gt).get(0,0)),Se=m.clone().sub(gt.clone().mulS(ee.get(0,0)).mmul(Ut.transpose()));this.t=gt,this.p=he.transpose(),this.w=Bt.transpose(),this.q=Ut,this.u=ot,this.s=gt.transpose().mmul(gt),this.xResidual=Vt,this.yResidual=Se,this.betas=ee}else this.w=Bt.transpose(),this.s=gt.transpose().mmul(gt).sqrt(),T?this.t=gt.clone().div(this.s.get(0,0)):this.t=gt,this.xResidual=x.sub(gt.mmul(Bt.transpose()))}}nt.XA=ye,nt.a_=_l,nt.yQ=_l,nt.Hs=Tr,nt.Ec=pn,nt.dx=pn,nt.LU=ji,nt.Rm=ji,nt.y3=me,nt.qK=Zi,nt.pb=as,nt.j=ss,nt.sO=Ii,nt.BZ=ma,nt.EK=Jr,nt.Db=ya,nt.Fx=aa,nt.tU=wa,nt.Ym=Hl,nt.rs=Hl,nt.QR=lo,nt.TB=lo,nt.oH=Ka,nt.Sc=Ka,nt.BN=kr,nt.it=qr,nt.$r=or,nt.QM=Dl,nt.AV=Kh,F=me,nt.GH=Ns,nt.SO=zo,nt.uZ=eu,nt.yU=Gh,nt.F1=kA,nt.re=Ko},45411:function(X){"use strict";X.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}},75196:function(X,nt,M){var F=M(45411),z=M(81683),D=Object.hasOwnProperty,N=Object.create(null);for(var O in F)D.call(F,O)&&(N[F[O]]=O);var k=X.exports={to:{},get:{}};k.get=function(Q){var _=Q.substring(0,3).toLowerCase(),P,Z;switch(_){case"hsl":P=k.get.hsl(Q),Z="hsl";break;case"hwb":P=k.get.hwb(Q),Z="hwb";break;default:P=k.get.rgb(Q),Z="rgb";break}return P?{model:Z,value:P}:null},k.get.rgb=function(Q){if(!Q)return null;var _=/^#([a-f0-9]{3,4})$/i,P=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,Z=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,tt=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,$=/^(\w+)$/,lt=[0,0,0,1],At,rt,ft;if(At=Q.match(P)){for(ft=At[2],At=At[1],rt=0;rt<3;rt++){var ht=rt*2;lt[rt]=parseInt(At.slice(ht,ht+2),16)}ft&&(lt[3]=parseInt(ft,16)/255)}else if(At=Q.match(_)){for(At=At[1],ft=At[3],rt=0;rt<3;rt++)lt[rt]=parseInt(At[rt]+At[rt],16);ft&&(lt[3]=parseInt(ft+ft,16)/255)}else if(At=Q.match(Z)){for(rt=0;rt<3;rt++)lt[rt]=parseInt(At[rt+1],0);At[4]&&(At[5]?lt[3]=parseFloat(At[4])*.01:lt[3]=parseFloat(At[4]))}else if(At=Q.match(tt)){for(rt=0;rt<3;rt++)lt[rt]=Math.round(parseFloat(At[rt+1])*2.55);At[4]&&(At[5]?lt[3]=parseFloat(At[4])*.01:lt[3]=parseFloat(At[4]))}else return(At=Q.match($))?At[1]==="transparent"?[0,0,0,0]:D.call(F,At[1])?(lt=F[At[1]],lt[3]=1,lt):null:null;for(rt=0;rt<3;rt++)lt[rt]=U(lt[rt],0,255);return lt[3]=U(lt[3],0,1),lt},k.get.hsl=function(Q){if(!Q)return null;var _=/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,P=Q.match(_);if(P){var Z=parseFloat(P[4]),tt=(parseFloat(P[1])%360+360)%360,$=U(parseFloat(P[2]),0,100),lt=U(parseFloat(P[3]),0,100),At=U(isNaN(Z)?1:Z,0,1);return[tt,$,lt,At]}return null},k.get.hwb=function(Q){if(!Q)return null;var _=/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/,P=Q.match(_);if(P){var Z=parseFloat(P[4]),tt=(parseFloat(P[1])%360+360)%360,$=U(parseFloat(P[2]),0,100),lt=U(parseFloat(P[3]),0,100),At=U(isNaN(Z)?1:Z,0,1);return[tt,$,lt,At]}return null},k.to.hex=function(){var Q=z(arguments);return"#"+L(Q[0])+L(Q[1])+L(Q[2])+(Q[3]<1?L(Math.round(Q[3]*255)):"")},k.to.rgb=function(){var Q=z(arguments);return Q.length<4||Q[3]===1?"rgb("+Math.round(Q[0])+", "+Math.round(Q[1])+", "+Math.round(Q[2])+")":"rgba("+Math.round(Q[0])+", "+Math.round(Q[1])+", "+Math.round(Q[2])+", "+Q[3]+")"},k.to.rgb.percent=function(){var Q=z(arguments),_=Math.round(Q[0]/255*100),P=Math.round(Q[1]/255*100),Z=Math.round(Q[2]/255*100);return Q.length<4||Q[3]===1?"rgb("+_+"%, "+P+"%, "+Z+"%)":"rgba("+_+"%, "+P+"%, "+Z+"%, "+Q[3]+")"},k.to.hsl=function(){var Q=z(arguments);return Q.length<4||Q[3]===1?"hsl("+Q[0]+", "+Q[1]+"%, "+Q[2]+"%)":"hsla("+Q[0]+", "+Q[1]+"%, "+Q[2]+"%, "+Q[3]+")"},k.to.hwb=function(){var Q=z(arguments),_="";return Q.length>=4&&Q[3]!==1&&(_=", "+Q[3]),"hwb("+Q[0]+", "+Q[1]+"%, "+Q[2]+"%"+_+")"},k.to.keyword=function(Q){return N[Q.slice(0,3)]};function U(Q,_,P){return Math.min(Math.max(_,Q),P)}function L(Q){var _=Math.round(Q).toString(16).toUpperCase();return _.length<2?"0"+_:_}},92546:function(X,nt,M){X.exports={graphlib:M(76626),layout:M(47194),debug:M(11303),util:{time:M(53063).time,notime:M(53063).notime},version:M(11897)}},81255:function(X,nt,M){"use strict";var F=M(72361),z=M(39240);X.exports={run:D,undo:O};function D(k){var U=k.graph().acyclicer==="greedy"?z(k,L(k)):N(k);F.forEach(U,function(Q){var _=k.edge(Q);k.removeEdge(Q),_.forwardName=Q.name,_.reversed=!0,k.setEdge(Q.w,Q.v,_,F.uniqueId("rev"))});function L(Q){return function(_){return Q.edge(_).weight}}}function N(k){var U=[],L={},Q={};function _(P){F.has(Q,P)||(Q[P]=!0,L[P]=!0,F.forEach(k.outEdges(P),function(Z){F.has(L,Z.w)?U.push(Z):_(Z.w)}),delete L[P])}return F.forEach(k.nodes(),_),U}function O(k){F.forEach(k.edges(),function(U){var L=k.edge(U);if(L.reversed){k.removeEdge(U);var Q=L.forwardName;delete L.reversed,delete L.forwardName,k.setEdge(U.w,U.v,L,Q)}})}},60765:function(X,nt,M){var F=M(72361),z=M(53063);X.exports=D;function D(O){function k(U){var L=O.children(U),Q=O.node(U);if(L.length&&F.forEach(L,k),F.has(Q,"minRank")){Q.borderLeft=[],Q.borderRight=[];for(var _=Q.minRank,P=Q.maxRank+1;_<P;++_)N(O,"borderLeft","_bl",U,Q,_),N(O,"borderRight","_br",U,Q,_)}}F.forEach(O.children(),k)}function N(O,k,U,L,Q,_){var P={width:0,height:0,rank:_,borderType:k},Z=Q[k][_-1],tt=z.addDummyNode(O,"border",P,U);Q[k][_]=tt,O.setParent(tt,L),Z&&O.setEdge(Z,tt,{weight:1})}},13257:function(X,nt,M){"use strict";var F=M(72361);X.exports={adjust:z,undo:D};function z(_){var P=_.graph().rankdir.toLowerCase();(P==="lr"||P==="rl")&&N(_)}function D(_){var P=_.graph().rankdir.toLowerCase();(P==="bt"||P==="rl")&&k(_),(P==="lr"||P==="rl")&&(L(_),N(_))}function N(_){F.forEach(_.nodes(),function(P){O(_.node(P))}),F.forEach(_.edges(),function(P){O(_.edge(P))})}function O(_){var P=_.width;_.width=_.height,_.height=P}function k(_){F.forEach(_.nodes(),function(P){U(_.node(P))}),F.forEach(_.edges(),function(P){var Z=_.edge(P);F.forEach(Z.points,U),F.has(Z,"y")&&U(Z)})}function U(_){_.y=-_.y}function L(_){F.forEach(_.nodes(),function(P){Q(_.node(P))}),F.forEach(_.edges(),function(P){var Z=_.edge(P);F.forEach(Z.points,Q),F.has(Z,"x")&&Q(Z)})}function Q(_){var P=_.x;_.x=_.y,_.y=P}},21135:function(X){X.exports=nt;function nt(){var z={};z._next=z._prev=z,this._sentinel=z}nt.prototype.dequeue=function(){var z=this._sentinel,D=z._prev;if(D!==z)return M(D),D},nt.prototype.enqueue=function(z){var D=this._sentinel;z._prev&&z._next&&M(z),z._next=D._next,D._next._prev=z,D._next=z,z._prev=D},nt.prototype.toString=function(){for(var z=[],D=this._sentinel,N=D._prev;N!==D;)z.push(JSON.stringify(N,F)),N=N._prev;return"["+z.join(", ")+"]"};function M(z){z._prev._next=z._next,z._next._prev=z._prev,delete z._next,delete z._prev}function F(z,D){if(z!=="_next"&&z!=="_prev")return D}},11303:function(X,nt,M){var F=M(72361),z=M(53063),D=M(76626).Graph;X.exports={debugOrdering:N};function N(O){var k=z.buildLayerMatrix(O),U=new D({compound:!0,multigraph:!0}).setGraph({});return F.forEach(O.nodes(),function(L){U.setNode(L,{label:L}),U.setParent(L,"layer"+O.node(L).rank)}),F.forEach(O.edges(),function(L){U.setEdge(L.v,L.w,{},L.name)}),F.forEach(k,function(L,Q){var _="layer"+Q;U.setNode(_,{rank:"same"}),F.reduce(L,function(P,Z){return U.setEdge(P,Z,{style:"invis"}),Z})}),U}},76626:function(X,nt,M){var F;try{F=M(75172)}catch(z){}F||(F=window.graphlib),X.exports=F},39240:function(X,nt,M){var F=M(72361),z=M(76626).Graph,D=M(21135);X.exports=O;var N=F.constant(1);function O(_,P){if(_.nodeCount()<=1)return[];var Z=L(_,P||N),tt=k(Z.graph,Z.buckets,Z.zeroIdx);return F.flatten(F.map(tt,function($){return _.outEdges($.v,$.w)}),!0)}function k(_,P,Z){for(var tt=[],$=P[P.length-1],lt=P[0],At;_.nodeCount();){for(;At=lt.dequeue();)U(_,P,Z,At);for(;At=$.dequeue();)U(_,P,Z,At);if(_.nodeCount()){for(var rt=P.length-2;rt>0;--rt)if(At=P[rt].dequeue(),At){tt=tt.concat(U(_,P,Z,At,!0));break}}}return tt}function U(_,P,Z,tt,$){var lt=$?[]:void 0;return F.forEach(_.inEdges(tt.v),function(At){var rt=_.edge(At),ft=_.node(At.v);$&<.push({v:At.v,w:At.w}),ft.out-=rt,Q(P,Z,ft)}),F.forEach(_.outEdges(tt.v),function(At){var rt=_.edge(At),ft=At.w,ht=_.node(ft);ht.in-=rt,Q(P,Z,ht)}),_.removeNode(tt.v),lt}function L(_,P){var Z=new z,tt=0,$=0;F.forEach(_.nodes(),function(rt){Z.setNode(rt,{v:rt,in:0,out:0})}),F.forEach(_.edges(),function(rt){var ft=Z.edge(rt.v,rt.w)||0,ht=P(rt),mt=ft+ht;Z.setEdge(rt.v,rt.w,mt),$=Math.max($,Z.node(rt.v).out+=ht),tt=Math.max(tt,Z.node(rt.w).in+=ht)});var lt=F.range($+tt+3).map(function(){return new D}),At=tt+1;return F.forEach(Z.nodes(),function(rt){Q(lt,At,Z.node(rt))}),{graph:Z,buckets:lt,zeroIdx:At}}function Q(_,P,Z){Z.out?Z.in?_[Z.out-Z.in+P].enqueue(Z):_[_.length-1].enqueue(Z):_[0].enqueue(Z)}},47194:function(X,nt,M){"use strict";var F=M(72361),z=M(81255),D=M(27163),N=M(64505),O=M(53063).normalizeRanks,k=M(71970),U=M(53063).removeEmptyRanks,L=M(31733),Q=M(60765),_=M(13257),P=M(62852),Z=M(93021),tt=M(53063),$=M(76626).Graph;X.exports=lt;function lt(Et,kt){var Dt=kt&&kt.debugTiming?tt.time:tt.notime;Dt("layout",function(){var ie=Dt(" buildLayoutGraph",function(){return Lt(Et)});Dt(" runLayout",function(){At(ie,Dt)}),Dt(" updateInputGraph",function(){rt(Et,ie)})})}function At(Et,kt){kt(" makeSpaceForEdgeLabels",function(){Kt(Et)}),kt(" removeSelfEdges",function(){is(Et)}),kt(" acyclic",function(){z.run(Et)}),kt(" nestingGraph.run",function(){L.run(Et)}),kt(" rank",function(){N(tt.asNonCompoundGraph(Et))}),kt(" injectEdgeLabelProxies",function(){$t(Et)}),kt(" removeEmptyRanks",function(){U(Et)}),kt(" nestingGraph.cleanup",function(){L.cleanup(Et)}),kt(" normalizeRanks",function(){O(Et)}),kt(" assignRankMinMax",function(){oe(Et)}),kt(" removeEdgeLabelProxies",function(){fe(Et)}),kt(" normalize.run",function(){D.run(Et)}),kt(" parentDummyChains",function(){k(Et)}),kt(" addBorderSegments",function(){Q(Et)}),kt(" order",function(){P(Et)}),kt(" insertSelfEdges",function(){Ao(Et)}),kt(" adjustCoordinateSystem",function(){_.adjust(Et)}),kt(" position",function(){Z(Et)}),kt(" positionSelfEdges",function(){zt(Et)}),kt(" removeBorderNodes",function(){Vi(Et)}),kt(" normalize.undo",function(){D.undo(Et)}),kt(" fixupEdgeLabelCoords",function(){Dn(Et)}),kt(" undoCoordinateSystem",function(){_.undo(Et)}),kt(" translateGraph",function(){He(Et)}),kt(" assignNodeIntersects",function(){rn(Et)}),kt(" reversePoints",function(){Mr(Et)}),kt(" acyclic.undo",function(){z.undo(Et)})}function rt(Et,kt){F.forEach(Et.nodes(),function(Dt){var ie=Et.node(Dt),xe=kt.node(Dt);ie&&(ie.x=xe.x,ie.y=xe.y,kt.children(Dt).length&&(ie.width=xe.width,ie.height=xe.height))}),F.forEach(Et.edges(),function(Dt){var ie=Et.edge(Dt),xe=kt.edge(Dt);ie.points=xe.points,F.has(xe,"x")&&(ie.x=xe.x,ie.y=xe.y)}),Et.graph().width=kt.graph().width,Et.graph().height=kt.graph().height}var ft=["nodesep","edgesep","ranksep","marginx","marginy"],ht={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},mt=["acyclicer","ranker","rankdir","align"],yt=["width","height"],Tt={width:0,height:0},xt=["minlen","weight","width","height","labeloffset"],Nt={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},bt=["labelpos"];function Lt(Et){var kt=new $({multigraph:!0,compound:!0}),Dt=Yt(Et.graph());return kt.setGraph(F.merge({},ht,Wt(Dt,ft),F.pick(Dt,mt))),F.forEach(Et.nodes(),function(ie){var xe=Yt(Et.node(ie));kt.setNode(ie,F.defaults(Wt(xe,yt),Tt)),kt.setParent(ie,Et.parent(ie))}),F.forEach(Et.edges(),function(ie){var xe=Yt(Et.edge(ie));kt.setEdge(ie,F.merge({},Nt,Wt(xe,xt),F.pick(xe,bt)))}),kt}function Kt(Et){var kt=Et.graph();kt.ranksep/=2,F.forEach(Et.edges(),function(Dt){var ie=Et.edge(Dt);ie.minlen*=2,ie.labelpos.toLowerCase()!=="c"&&(kt.rankdir==="TB"||kt.rankdir==="BT"?ie.width+=ie.labeloffset:ie.height+=ie.labeloffset)})}function $t(Et){F.forEach(Et.edges(),function(kt){var Dt=Et.edge(kt);if(Dt.width&&Dt.height){var ie=Et.node(kt.v),xe=Et.node(kt.w),_e={rank:(xe.rank-ie.rank)/2+ie.rank,e:kt};tt.addDummyNode(Et,"edge-proxy",_e,"_ep")}})}function oe(Et){var kt=0;F.forEach(Et.nodes(),function(Dt){var ie=Et.node(Dt);ie.borderTop&&(ie.minRank=Et.node(ie.borderTop).rank,ie.maxRank=Et.node(ie.borderBottom).rank,kt=F.max(kt,ie.maxRank))}),Et.graph().maxRank=kt}function fe(Et){F.forEach(Et.nodes(),function(kt){var Dt=Et.node(kt);Dt.dummy==="edge-proxy"&&(Et.edge(Dt.e).labelRank=Dt.rank,Et.removeNode(kt))})}function He(Et){var kt=Number.POSITIVE_INFINITY,Dt=0,ie=Number.POSITIVE_INFINITY,xe=0,_e=Et.graph(),Te=_e.marginx||0,an=_e.marginy||0;function rr(sr){var Ke=sr.x,ze=sr.y,ye=sr.width,We=sr.height;kt=Math.min(kt,Ke-ye/2),Dt=Math.max(Dt,Ke+ye/2),ie=Math.min(ie,ze-We/2),xe=Math.max(xe,ze+We/2)}F.forEach(Et.nodes(),function(sr){rr(Et.node(sr))}),F.forEach(Et.edges(),function(sr){var Ke=Et.edge(sr);F.has(Ke,"x")&&rr(Ke)}),kt-=Te,ie-=an,F.forEach(Et.nodes(),function(sr){var Ke=Et.node(sr);Ke.x-=kt,Ke.y-=ie}),F.forEach(Et.edges(),function(sr){var Ke=Et.edge(sr);F.forEach(Ke.points,function(ze){ze.x-=kt,ze.y-=ie}),F.has(Ke,"x")&&(Ke.x-=kt),F.has(Ke,"y")&&(Ke.y-=ie)}),_e.width=Dt-kt+Te,_e.height=xe-ie+an}function rn(Et){F.forEach(Et.edges(),function(kt){var Dt=Et.edge(kt),ie=Et.node(kt.v),xe=Et.node(kt.w),_e,Te;Dt.points?(_e=Dt.points[0],Te=Dt.points[Dt.points.length-1]):(Dt.points=[],_e=xe,Te=ie),Dt.points.unshift(tt.intersectRect(ie,_e)),Dt.points.push(tt.intersectRect(xe,Te))})}function Dn(Et){F.forEach(Et.edges(),function(kt){var Dt=Et.edge(kt);if(F.has(Dt,"x"))switch((Dt.labelpos==="l"||Dt.labelpos==="r")&&(Dt.width-=Dt.labeloffset),Dt.labelpos){case"l":Dt.x-=Dt.width/2+Dt.labeloffset;break;case"r":Dt.x+=Dt.width/2+Dt.labeloffset;break}})}function Mr(Et){F.forEach(Et.edges(),function(kt){var Dt=Et.edge(kt);Dt.reversed&&Dt.points.reverse()})}function Vi(Et){F.forEach(Et.nodes(),function(kt){if(Et.children(kt).length){var Dt=Et.node(kt),ie=Et.node(Dt.borderTop),xe=Et.node(Dt.borderBottom),_e=Et.node(F.last(Dt.borderLeft)),Te=Et.node(F.last(Dt.borderRight));Dt.width=Math.abs(Te.x-_e.x),Dt.height=Math.abs(xe.y-ie.y),Dt.x=_e.x+Dt.width/2,Dt.y=ie.y+Dt.height/2}}),F.forEach(Et.nodes(),function(kt){Et.node(kt).dummy==="border"&&Et.removeNode(kt)})}function is(Et){F.forEach(Et.edges(),function(kt){if(kt.v===kt.w){var Dt=Et.node(kt.v);Dt.selfEdges||(Dt.selfEdges=[]),Dt.selfEdges.push({e:kt,label:Et.edge(kt)}),Et.removeEdge(kt)}})}function Ao(Et){var kt=tt.buildLayerMatrix(Et);F.forEach(kt,function(Dt){var ie=0;F.forEach(Dt,function(xe,_e){var Te=Et.node(xe);Te.order=_e+ie,F.forEach(Te.selfEdges,function(an){tt.addDummyNode(Et,"selfedge",{width:an.label.width,height:an.label.height,rank:Te.rank,order:_e+ ++ie,e:an.e,label:an.label},"_se")}),delete Te.selfEdges})})}function zt(Et){F.forEach(Et.nodes(),function(kt){var Dt=Et.node(kt);if(Dt.dummy==="selfedge"){var ie=Et.node(Dt.e.v),xe=ie.x+ie.width/2,_e=ie.y,Te=Dt.x-xe,an=ie.height/2;Et.setEdge(Dt.e,Dt.label),Et.removeNode(kt),Dt.label.points=[{x:xe+2*Te/3,y:_e-an},{x:xe+5*Te/6,y:_e-an},{x:xe+Te,y:_e},{x:xe+5*Te/6,y:_e+an},{x:xe+2*Te/3,y:_e+an}],Dt.label.x=Dt.x,Dt.label.y=Dt.y}})}function Wt(Et,kt){return F.mapValues(F.pick(Et,kt),Number)}function Yt(Et){var kt={};return F.forEach(Et,function(Dt,ie){kt[ie.toLowerCase()]=Dt}),kt}},72361:function(X,nt,M){var F;try{F={cloneDeep:M(20250),constant:M(13503),defaults:M(28548),each:M(76934),filter:M(64725),find:M(79785),flatten:M(40151),forEach:M(99204),forIn:M(23190),has:M(99946),isUndefined:M(16513),last:M(10611),map:M(9924),mapValues:M(70642),max:M(95987),merge:M(28440),min:M(73376),minBy:M(83296),now:M(5795),pick:M(89409),range:M(60859),reduce:M(93410),sortBy:M(351),uniqueId:M(95708),values:M(81229),zipObject:M(65441)}}catch(z){}F||(F=window._),X.exports=F},31733:function(X,nt,M){var F=M(72361),z=M(53063);X.exports={run:D,cleanup:U};function D(L){var Q=z.addDummyNode(L,"root",{},"_root"),_=O(L),P=F.max(F.values(_))-1,Z=2*P+1;L.graph().nestingRoot=Q,F.forEach(L.edges(),function($){L.edge($).minlen*=Z});var tt=k(L)+1;F.forEach(L.children(),function($){N(L,Q,Z,tt,P,_,$)}),L.graph().nodeRankFactor=Z}function N(L,Q,_,P,Z,tt,$){var lt=L.children($);if(!lt.length){$!==Q&&L.setEdge(Q,$,{weight:0,minlen:_});return}var At=z.addBorderNode(L,"_bt"),rt=z.addBorderNode(L,"_bb"),ft=L.node($);L.setParent(At,$),ft.borderTop=At,L.setParent(rt,$),ft.borderBottom=rt,F.forEach(lt,function(ht){N(L,Q,_,P,Z,tt,ht);var mt=L.node(ht),yt=mt.borderTop?mt.borderTop:ht,Tt=mt.borderBottom?mt.borderBottom:ht,xt=mt.borderTop?P:2*P,Nt=yt!==Tt?1:Z-tt[$]+1;L.setEdge(At,yt,{weight:xt,minlen:Nt,nestingEdge:!0}),L.setEdge(Tt,rt,{weight:xt,minlen:Nt,nestingEdge:!0})}),L.parent($)||L.setEdge(Q,At,{weight:0,minlen:Z+tt[$]})}function O(L){var Q={};function _(P,Z){var tt=L.children(P);tt&&tt.length&&F.forEach(tt,function($){_($,Z+1)}),Q[P]=Z}return F.forEach(L.children(),function(P){_(P,1)}),Q}function k(L){return F.reduce(L.edges(),function(Q,_){return Q+L.edge(_).weight},0)}function U(L){var Q=L.graph();L.removeNode(Q.nestingRoot),delete Q.nestingRoot,F.forEach(L.edges(),function(_){var P=L.edge(_);P.nestingEdge&&L.removeEdge(_)})}},27163:function(X,nt,M){"use strict";var F=M(72361),z=M(53063);X.exports={run:D,undo:O};function D(k){k.graph().dummyChains=[],F.forEach(k.edges(),function(U){N(k,U)})}function N(k,U){var L=U.v,Q=k.node(L).rank,_=U.w,P=k.node(_).rank,Z=U.name,tt=k.edge(U),$=tt.labelRank;if(P!==Q+1){k.removeEdge(U);var lt,At,rt;for(rt=0,++Q;Q<P;++rt,++Q)tt.points=[],At={width:0,height:0,edgeLabel:tt,edgeObj:U,rank:Q},lt=z.addDummyNode(k,"edge",At,"_d"),Q===$&&(At.width=tt.width,At.height=tt.height,At.dummy="edge-label",At.labelpos=tt.labelpos),k.setEdge(L,lt,{weight:tt.weight},Z),rt===0&&k.graph().dummyChains.push(lt),L=lt;k.setEdge(L,_,{weight:tt.weight},Z)}}function O(k){F.forEach(k.graph().dummyChains,function(U){var L=k.node(U),Q=L.edgeLabel,_;for(k.setEdge(L.edgeObj,Q);L.dummy;)_=k.successors(U)[0],k.removeNode(U),Q.points.push({x:L.x,y:L.y}),L.dummy==="edge-label"&&(Q.x=L.x,Q.y=L.y,Q.width=L.width,Q.height=L.height),U=_,L=k.node(U)})}},52205:function(X,nt,M){var F=M(72361);X.exports=z;function z(D,N,O){var k={},U;F.forEach(O,function(L){for(var Q=D.parent(L),_,P;Q;){if(_=D.parent(Q),_?(P=k[_],k[_]=Q):(P=U,U=Q),P&&P!==Q){N.setEdge(P,Q);return}Q=_}})}},99506:function(X,nt,M){var F=M(72361);X.exports=z;function z(D,N){return F.map(N,function(O){var k=D.inEdges(O);if(k.length){var U=F.reduce(k,function(L,Q){var _=D.edge(Q),P=D.node(Q.v);return{sum:L.sum+_.weight*P.order,weight:L.weight+_.weight}},{sum:0,weight:0});return{v:O,barycenter:U.sum/U.weight,weight:U.weight}}else return{v:O}})}},59105:function(X,nt,M){var F=M(72361),z=M(76626).Graph;X.exports=D;function D(O,k,U){var L=N(O),Q=new z({compound:!0}).setGraph({root:L}).setDefaultNodeLabel(function(_){return O.node(_)});return F.forEach(O.nodes(),function(_){var P=O.node(_),Z=O.parent(_);(P.rank===k||P.minRank<=k&&k<=P.maxRank)&&(Q.setNode(_),Q.setParent(_,Z||L),F.forEach(O[U](_),function(tt){var $=tt.v===_?tt.w:tt.v,lt=Q.edge($,_),At=F.isUndefined(lt)?0:lt.weight;Q.setEdge($,_,{weight:O.edge(tt).weight+At})}),F.has(P,"minRank")&&Q.setNode(_,{borderLeft:P.borderLeft[k],borderRight:P.borderRight[k]}))}),Q}function N(O){for(var k;O.hasNode(k=F.uniqueId("_root")););return k}},45456:function(X,nt,M){"use strict";var F=M(72361);X.exports=z;function z(N,O){for(var k=0,U=1;U<O.length;++U)k+=D(N,O[U-1],O[U]);return k}function D(N,O,k){for(var U=F.zipObject(k,F.map(k,function(tt,$){return $})),L=F.flatten(F.map(O,function(tt){return F.sortBy(F.map(N.outEdges(tt),function($){return{pos:U[$.w],weight:N.edge($).weight}}),"pos")}),!0),Q=1;Q<k.length;)Q<<=1;var _=2*Q-1;Q-=1;var P=F.map(new Array(_),function(){return 0}),Z=0;return F.forEach(L.forEach(function(tt){var $=tt.pos+Q;P[$]+=tt.weight;for(var lt=0;$>0;)$%2&&(lt+=P[$+1]),$=$-1>>1,P[$]+=tt.weight;Z+=tt.weight*lt})),Z}},62852:function(X,nt,M){"use strict";var F=M(72361),z=M(18043),D=M(45456),N=M(86490),O=M(59105),k=M(52205),U=M(76626).Graph,L=M(53063);X.exports=Q;function Q(tt){var $=L.maxRank(tt),lt=_(tt,F.range(1,$+1),"inEdges"),At=_(tt,F.range($-1,-1,-1),"outEdges"),rt=z(tt);Z(tt,rt);for(var ft=Number.POSITIVE_INFINITY,ht,mt=0,yt=0;yt<4;++mt,++yt){P(mt%2?lt:At,mt%4>=2),rt=L.buildLayerMatrix(tt);var Tt=D(tt,rt);Tt<ft&&(yt=0,ht=F.cloneDeep(rt),ft=Tt)}Z(tt,ht)}function _(tt,$,lt){return F.map($,function(At){return O(tt,At,lt)})}function P(tt,$){var lt=new U;F.forEach(tt,function(At){var rt=At.graph().root,ft=N(At,rt,lt,$);F.forEach(ft.vs,function(ht,mt){At.node(ht).order=mt}),k(At,lt,ft.vs)})}function Z(tt,$){F.forEach($,function(lt){F.forEach(lt,function(At,rt){tt.node(At).order=rt})})}},18043:function(X,nt,M){"use strict";var F=M(72361);X.exports=z;function z(D){var N={},O=F.filter(D.nodes(),function(_){return!D.children(_).length}),k=F.max(F.map(O,function(_){return D.node(_).rank})),U=F.map(F.range(k+1),function(){return[]});function L(_){if(!F.has(N,_)){N[_]=!0;var P=D.node(_);U[P.rank].push(_),F.forEach(D.successors(_),L)}}var Q=F.sortBy(O,function(_){return D.node(_).rank});return F.forEach(Q,L),U}},45926:function(X,nt,M){"use strict";var F=M(72361);X.exports=z;function z(O,k){var U={};F.forEach(O,function(Q,_){var P=U[Q.v]={indegree:0,in:[],out:[],vs:[Q.v],i:_};F.isUndefined(Q.barycenter)||(P.barycenter=Q.barycenter,P.weight=Q.weight)}),F.forEach(k.edges(),function(Q){var _=U[Q.v],P=U[Q.w];!F.isUndefined(_)&&!F.isUndefined(P)&&(P.indegree++,_.out.push(U[Q.w]))});var L=F.filter(U,function(Q){return!Q.indegree});return D(L)}function D(O){var k=[];function U(_){return function(P){P.merged||(F.isUndefined(P.barycenter)||F.isUndefined(_.barycenter)||P.barycenter>=_.barycenter)&&N(_,P)}}function L(_){return function(P){P.in.push(_),--P.indegree===0&&O.push(P)}}for(;O.length;){var Q=O.pop();k.push(Q),F.forEach(Q.in.reverse(),U(Q)),F.forEach(Q.out,L(Q))}return F.map(F.filter(k,function(_){return!_.merged}),function(_){return F.pick(_,["vs","i","barycenter","weight"])})}function N(O,k){var U=0,L=0;O.weight&&(U+=O.barycenter*O.weight,L+=O.weight),k.weight&&(U+=k.barycenter*k.weight,L+=k.weight),O.vs=k.vs.concat(O.vs),O.barycenter=U/L,O.weight=L,O.i=Math.min(k.i,O.i),k.merged=!0}},86490:function(X,nt,M){var F=M(72361),z=M(99506),D=M(45926),N=M(1349);X.exports=O;function O(L,Q,_,P){var Z=L.children(Q),tt=L.node(Q),$=tt?tt.borderLeft:void 0,lt=tt?tt.borderRight:void 0,At={};$&&(Z=F.filter(Z,function(Tt){return Tt!==$&&Tt!==lt}));var rt=z(L,Z);F.forEach(rt,function(Tt){if(L.children(Tt.v).length){var xt=O(L,Tt.v,_,P);At[Tt.v]=xt,F.has(xt,"barycenter")&&U(Tt,xt)}});var ft=D(rt,_);k(ft,At);var ht=N(ft,P);if($&&(ht.vs=F.flatten([$,ht.vs,lt],!0),L.predecessors($).length)){var mt=L.node(L.predecessors($)[0]),yt=L.node(L.predecessors(lt)[0]);F.has(ht,"barycenter")||(ht.barycenter=0,ht.weight=0),ht.barycenter=(ht.barycenter*ht.weight+mt.order+yt.order)/(ht.weight+2),ht.weight+=2}return ht}function k(L,Q){F.forEach(L,function(_){_.vs=F.flatten(_.vs.map(function(P){return Q[P]?Q[P].vs:P}),!0)})}function U(L,Q){F.isUndefined(L.barycenter)?(L.barycenter=Q.barycenter,L.weight=Q.weight):(L.barycenter=(L.barycenter*L.weight+Q.barycenter*Q.weight)/(L.weight+Q.weight),L.weight+=Q.weight)}},1349:function(X,nt,M){var F=M(72361),z=M(53063);X.exports=D;function D(k,U){var L=z.partition(k,function(At){return F.has(At,"barycenter")}),Q=L.lhs,_=F.sortBy(L.rhs,function(At){return-At.i}),P=[],Z=0,tt=0,$=0;Q.sort(O(!!U)),$=N(P,_,$),F.forEach(Q,function(At){$+=At.vs.length,P.push(At.vs),Z+=At.barycenter*At.weight,tt+=At.weight,$=N(P,_,$)});var lt={vs:F.flatten(P,!0)};return tt&&(lt.barycenter=Z/tt,lt.weight=tt),lt}function N(k,U,L){for(var Q;U.length&&(Q=F.last(U)).i<=L;)U.pop(),k.push(Q.vs),L++;return L}function O(k){return function(U,L){return U.barycenter<L.barycenter?-1:U.barycenter>L.barycenter?1:k?L.i-U.i:U.i-L.i}}},71970:function(X,nt,M){var F=M(72361);X.exports=z;function z(O){var k=N(O);F.forEach(O.graph().dummyChains,function(U){for(var L=O.node(U),Q=L.edgeObj,_=D(O,k,Q.v,Q.w),P=_.path,Z=_.lca,tt=0,$=P[tt],lt=!0;U!==Q.w;){if(L=O.node(U),lt){for(;($=P[tt])!==Z&&O.node($).maxRank<L.rank;)tt++;$===Z&&(lt=!1)}if(!lt){for(;tt<P.length-1&&O.node($=P[tt+1]).minRank<=L.rank;)tt++;$=P[tt]}O.setParent(U,$),U=O.successors(U)[0]}})}function D(O,k,U,L){var Q=[],_=[],P=Math.min(k[U].low,k[L].low),Z=Math.max(k[U].lim,k[L].lim),tt,$;tt=U;do tt=O.parent(tt),Q.push(tt);while(tt&&(k[tt].low>P||Z>k[tt].lim));for($=tt,tt=L;(tt=O.parent(tt))!==$;)_.push(tt);return{path:Q.concat(_.reverse()),lca:$}}function N(O){var k={},U=0;function L(Q){var _=U;F.forEach(O.children(Q),L),k[Q]={low:_,lim:U++}}return F.forEach(O.children(),L),k}},92080:function(X,nt,M){"use strict";var F=M(72361),z=M(76626).Graph,D=M(53063);X.exports={positionX:lt,findType1Conflicts:N,findType2Conflicts:O,addConflict:U,hasConflict:L,verticalAlignment:Q,horizontalCompaction:_,alignCoordinates:tt,findSmallestWidthAlignment:Z,balance:$};function N(ft,ht){var mt={};function yt(Tt,xt){var Nt=0,bt=0,Lt=Tt.length,Kt=F.last(xt);return F.forEach(xt,function($t,oe){var fe=k(ft,$t),He=fe?ft.node(fe).order:Lt;(fe||$t===Kt)&&(F.forEach(xt.slice(bt,oe+1),function(rn){F.forEach(ft.predecessors(rn),function(Dn){var Mr=ft.node(Dn),Vi=Mr.order;(Vi<Nt||He<Vi)&&!(Mr.dummy&&ft.node(rn).dummy)&&U(mt,Dn,rn)})}),bt=oe+1,Nt=He)}),xt}return F.reduce(ht,yt),mt}function O(ft,ht){var mt={};function yt(xt,Nt,bt,Lt,Kt){var $t;F.forEach(F.range(Nt,bt),function(oe){$t=xt[oe],ft.node($t).dummy&&F.forEach(ft.predecessors($t),function(fe){var He=ft.node(fe);He.dummy&&(He.order<Lt||He.order>Kt)&&U(mt,fe,$t)})})}function Tt(xt,Nt){var bt=-1,Lt,Kt=0;return F.forEach(Nt,function($t,oe){if(ft.node($t).dummy==="border"){var fe=ft.predecessors($t);fe.length&&(Lt=ft.node(fe[0]).order,yt(Nt,Kt,oe,bt,Lt),Kt=oe,bt=Lt)}yt(Nt,Kt,Nt.length,Lt,xt.length)}),Nt}return F.reduce(ht,Tt),mt}function k(ft,ht){if(ft.node(ht).dummy)return F.find(ft.predecessors(ht),function(mt){return ft.node(mt).dummy})}function U(ft,ht,mt){if(ht>mt){var yt=ht;ht=mt,mt=yt}var Tt=ft[ht];Tt||(ft[ht]=Tt={}),Tt[mt]=!0}function L(ft,ht,mt){if(ht>mt){var yt=ht;ht=mt,mt=yt}return F.has(ft[ht],mt)}function Q(ft,ht,mt,yt){var Tt={},xt={},Nt={};return F.forEach(ht,function(bt){F.forEach(bt,function(Lt,Kt){Tt[Lt]=Lt,xt[Lt]=Lt,Nt[Lt]=Kt})}),F.forEach(ht,function(bt){var Lt=-1;F.forEach(bt,function(Kt){var $t=yt(Kt);if($t.length){$t=F.sortBy($t,function(Dn){return Nt[Dn]});for(var oe=($t.length-1)/2,fe=Math.floor(oe),He=Math.ceil(oe);fe<=He;++fe){var rn=$t[fe];xt[Kt]===Kt&&Lt<Nt[rn]&&!L(mt,Kt,rn)&&(xt[rn]=Kt,xt[Kt]=Tt[Kt]=Tt[rn],Lt=Nt[rn])}}})}),{root:Tt,align:xt}}function _(ft,ht,mt,yt,Tt){var xt={},Nt=P(ft,ht,mt,Tt),bt=Tt?"borderLeft":"borderRight";function Lt(oe,fe){for(var He=Nt.nodes(),rn=He.pop(),Dn={};rn;)Dn[rn]?oe(rn):(Dn[rn]=!0,He.push(rn),He=He.concat(fe(rn))),rn=He.pop()}function Kt(oe){xt[oe]=Nt.inEdges(oe).reduce(function(fe,He){return Math.max(fe,xt[He.v]+Nt.edge(He))},0)}function $t(oe){var fe=Nt.outEdges(oe).reduce(function(rn,Dn){return Math.min(rn,xt[Dn.w]-Nt.edge(Dn))},Number.POSITIVE_INFINITY),He=ft.node(oe);fe!==Number.POSITIVE_INFINITY&&He.borderType!==bt&&(xt[oe]=Math.max(xt[oe],fe))}return Lt(Kt,Nt.predecessors.bind(Nt)),Lt($t,Nt.successors.bind(Nt)),F.forEach(yt,function(oe){xt[oe]=xt[mt[oe]]}),xt}function P(ft,ht,mt,yt){var Tt=new z,xt=ft.graph(),Nt=At(xt.nodesep,xt.edgesep,yt);return F.forEach(ht,function(bt){var Lt;F.forEach(bt,function(Kt){var $t=mt[Kt];if(Tt.setNode($t),Lt){var oe=mt[Lt],fe=Tt.edge(oe,$t);Tt.setEdge(oe,$t,Math.max(Nt(ft,Kt,Lt),fe||0))}Lt=Kt})}),Tt}function Z(ft,ht){return F.minBy(F.values(ht),function(mt){var yt=Number.NEGATIVE_INFINITY,Tt=Number.POSITIVE_INFINITY;return F.forIn(mt,function(xt,Nt){var bt=rt(ft,Nt)/2;yt=Math.max(xt+bt,yt),Tt=Math.min(xt-bt,Tt)}),yt-Tt})}function tt(ft,ht){var mt=F.values(ht),yt=F.min(mt),Tt=F.max(mt);F.forEach(["u","d"],function(xt){F.forEach(["l","r"],function(Nt){var bt=xt+Nt,Lt=ft[bt],Kt;if(Lt!==ht){var $t=F.values(Lt);Kt=Nt==="l"?yt-F.min($t):Tt-F.max($t),Kt&&(ft[bt]=F.mapValues(Lt,function(oe){return oe+Kt}))}})})}function $(ft,ht){return F.mapValues(ft.ul,function(mt,yt){if(ht)return ft[ht.toLowerCase()][yt];var Tt=F.sortBy(F.map(ft,yt));return(Tt[1]+Tt[2])/2})}function lt(ft){var ht=D.buildLayerMatrix(ft),mt=F.merge(N(ft,ht),O(ft,ht)),yt={},Tt;F.forEach(["u","d"],function(Nt){Tt=Nt==="u"?ht:F.values(ht).reverse(),F.forEach(["l","r"],function(bt){bt==="r"&&(Tt=F.map(Tt,function(oe){return F.values(oe).reverse()}));var Lt=(Nt==="u"?ft.predecessors:ft.successors).bind(ft),Kt=Q(ft,Tt,mt,Lt),$t=_(ft,Tt,Kt.root,Kt.align,bt==="r");bt==="r"&&($t=F.mapValues($t,function(oe){return-oe})),yt[Nt+bt]=$t})});var xt=Z(ft,yt);return tt(yt,xt),$(yt,ft.graph().align)}function At(ft,ht,mt){return function(yt,Tt,xt){var Nt=yt.node(Tt),bt=yt.node(xt),Lt=0,Kt;if(Lt+=Nt.width/2,F.has(Nt,"labelpos"))switch(Nt.labelpos.toLowerCase()){case"l":Kt=-Nt.width/2;break;case"r":Kt=Nt.width/2;break}if(Kt&&(Lt+=mt?Kt:-Kt),Kt=0,Lt+=(Nt.dummy?ht:ft)/2,Lt+=(bt.dummy?ht:ft)/2,Lt+=bt.width/2,F.has(bt,"labelpos"))switch(bt.labelpos.toLowerCase()){case"l":Kt=bt.width/2;break;case"r":Kt=-bt.width/2;break}return Kt&&(Lt+=mt?Kt:-Kt),Kt=0,Lt}}function rt(ft,ht){return ft.node(ht).width}},93021:function(X,nt,M){"use strict";var F=M(72361),z=M(53063),D=M(92080).positionX;X.exports=N;function N(k){k=z.asNonCompoundGraph(k),O(k),F.forEach(D(k),function(U,L){k.node(L).x=U})}function O(k){var U=z.buildLayerMatrix(k),L=k.graph().ranksep,Q=0;F.forEach(U,function(_){var P=F.max(F.map(_,function(Z){return k.node(Z).height}));F.forEach(_,function(Z){k.node(Z).y=Q+P/2}),Q+=P+L})}},61031:function(X,nt,M){"use strict";var F=M(72361),z=M(76626).Graph,D=M(2416).slack;X.exports=N;function N(L){var Q=new z({directed:!1}),_=L.nodes()[0],P=L.nodeCount();Q.setNode(_,{});for(var Z,tt;O(Q,L)<P;)Z=k(Q,L),tt=Q.hasNode(Z.v)?D(L,Z):-D(L,Z),U(Q,L,tt);return Q}function O(L,Q){function _(P){F.forEach(Q.nodeEdges(P),function(Z){var tt=Z.v,$=P===tt?Z.w:tt;!L.hasNode($)&&!D(Q,Z)&&(L.setNode($,{}),L.setEdge(P,$,{}),_($))})}return F.forEach(L.nodes(),_),L.nodeCount()}function k(L,Q){return F.minBy(Q.edges(),function(_){if(L.hasNode(_.v)!==L.hasNode(_.w))return D(Q,_)})}function U(L,Q,_){F.forEach(L.nodes(),function(P){Q.node(P).rank+=_})}},64505:function(X,nt,M){"use strict";var F=M(2416),z=F.longestPath,D=M(61031),N=M(77076);X.exports=O;function O(Q){switch(Q.graph().ranker){case"network-simplex":L(Q);break;case"tight-tree":U(Q);break;case"longest-path":k(Q);break;default:L(Q)}}var k=z;function U(Q){z(Q),D(Q)}function L(Q){N(Q)}},77076:function(X,nt,M){"use strict";var F=M(72361),z=M(61031),D=M(2416).slack,N=M(2416).longestPath,O=M(76626).alg.preorder,k=M(76626).alg.postorder,U=M(53063).simplify;X.exports=L,L.initLowLimValues=Z,L.initCutValues=Q,L.calcCutValue=P,L.leaveEdge=$,L.enterEdge=lt,L.exchangeEdges=At;function L(mt){mt=U(mt),N(mt);var yt=z(mt);Z(yt),Q(yt,mt);for(var Tt,xt;Tt=$(yt);)xt=lt(yt,mt,Tt),At(yt,mt,Tt,xt)}function Q(mt,yt){var Tt=k(mt,mt.nodes());Tt=Tt.slice(0,Tt.length-1),F.forEach(Tt,function(xt){_(mt,yt,xt)})}function _(mt,yt,Tt){var xt=mt.node(Tt),Nt=xt.parent;mt.edge(Tt,Nt).cutvalue=P(mt,yt,Tt)}function P(mt,yt,Tt){var xt=mt.node(Tt),Nt=xt.parent,bt=!0,Lt=yt.edge(Tt,Nt),Kt=0;return Lt||(bt=!1,Lt=yt.edge(Nt,Tt)),Kt=Lt.weight,F.forEach(yt.nodeEdges(Tt),function($t){var oe=$t.v===Tt,fe=oe?$t.w:$t.v;if(fe!==Nt){var He=oe===bt,rn=yt.edge($t).weight;if(Kt+=He?rn:-rn,ft(mt,Tt,fe)){var Dn=mt.edge(Tt,fe).cutvalue;Kt+=He?-Dn:Dn}}}),Kt}function Z(mt,yt){arguments.length<2&&(yt=mt.nodes()[0]),tt(mt,{},1,yt)}function tt(mt,yt,Tt,xt,Nt){var bt=Tt,Lt=mt.node(xt);return yt[xt]=!0,F.forEach(mt.neighbors(xt),function(Kt){F.has(yt,Kt)||(Tt=tt(mt,yt,Tt,Kt,xt))}),Lt.low=bt,Lt.lim=Tt++,Nt?Lt.parent=Nt:delete Lt.parent,Tt}function $(mt){return F.find(mt.edges(),function(yt){return mt.edge(yt).cutvalue<0})}function lt(mt,yt,Tt){var xt=Tt.v,Nt=Tt.w;yt.hasEdge(xt,Nt)||(xt=Tt.w,Nt=Tt.v);var bt=mt.node(xt),Lt=mt.node(Nt),Kt=bt,$t=!1;bt.lim>Lt.lim&&(Kt=Lt,$t=!0);var oe=F.filter(yt.edges(),function(fe){return $t===ht(mt,mt.node(fe.v),Kt)&&$t!==ht(mt,mt.node(fe.w),Kt)});return F.minBy(oe,function(fe){return D(yt,fe)})}function At(mt,yt,Tt,xt){var Nt=Tt.v,bt=Tt.w;mt.removeEdge(Nt,bt),mt.setEdge(xt.v,xt.w,{}),Z(mt),Q(mt,yt),rt(mt,yt)}function rt(mt,yt){var Tt=F.find(mt.nodes(),function(Nt){return!yt.node(Nt).parent}),xt=O(mt,Tt);xt=xt.slice(1),F.forEach(xt,function(Nt){var bt=mt.node(Nt).parent,Lt=yt.edge(Nt,bt),Kt=!1;Lt||(Lt=yt.edge(bt,Nt),Kt=!0),yt.node(Nt).rank=yt.node(bt).rank+(Kt?Lt.minlen:-Lt.minlen)})}function ft(mt,yt,Tt){return mt.hasEdge(yt,Tt)}function ht(mt,yt,Tt){return Tt.low<=yt.lim&&yt.lim<=Tt.lim}},2416:function(X,nt,M){"use strict";var F=M(72361);X.exports={longestPath:z,slack:D};function z(N){var O={};function k(U){var L=N.node(U);if(F.has(O,U))return L.rank;O[U]=!0;var Q=F.min(F.map(N.outEdges(U),function(_){return k(_.w)-N.edge(_).minlen}));return(Q===Number.POSITIVE_INFINITY||Q===void 0||Q===null)&&(Q=0),L.rank=Q}F.forEach(N.sources(),k)}function D(N,O){return N.node(O.w).rank-N.node(O.v).rank-N.edge(O).minlen}},53063:function(X,nt,M){"use strict";var F=M(72361),z=M(76626).Graph;X.exports={addDummyNode:D,simplify:N,asNonCompoundGraph:O,successorWeights:k,predecessorWeights:U,intersectRect:L,buildLayerMatrix:Q,normalizeRanks:_,removeEmptyRanks:P,addBorderNode:Z,maxRank:tt,partition:$,time:lt,notime:At};function D(rt,ft,ht,mt){var yt;do yt=F.uniqueId(mt);while(rt.hasNode(yt));return ht.dummy=ft,rt.setNode(yt,ht),yt}function N(rt){var ft=new z().setGraph(rt.graph());return F.forEach(rt.nodes(),function(ht){ft.setNode(ht,rt.node(ht))}),F.forEach(rt.edges(),function(ht){var mt=ft.edge(ht.v,ht.w)||{weight:0,minlen:1},yt=rt.edge(ht);ft.setEdge(ht.v,ht.w,{weight:mt.weight+yt.weight,minlen:Math.max(mt.minlen,yt.minlen)})}),ft}function O(rt){var ft=new z({multigraph:rt.isMultigraph()}).setGraph(rt.graph());return F.forEach(rt.nodes(),function(ht){rt.children(ht).length||ft.setNode(ht,rt.node(ht))}),F.forEach(rt.edges(),function(ht){ft.setEdge(ht,rt.edge(ht))}),ft}function k(rt){var ft=F.map(rt.nodes(),function(ht){var mt={};return F.forEach(rt.outEdges(ht),function(yt){mt[yt.w]=(mt[yt.w]||0)+rt.edge(yt).weight}),mt});return F.zipObject(rt.nodes(),ft)}function U(rt){var ft=F.map(rt.nodes(),function(ht){var mt={};return F.forEach(rt.inEdges(ht),function(yt){mt[yt.v]=(mt[yt.v]||0)+rt.edge(yt).weight}),mt});return F.zipObject(rt.nodes(),ft)}function L(rt,ft){var ht=rt.x,mt=rt.y,yt=ft.x-ht,Tt=ft.y-mt,xt=rt.width/2,Nt=rt.height/2;if(!yt&&!Tt)throw new Error("Not possible to find intersection inside of the rectangle");var bt,Lt;return Math.abs(Tt)*xt>Math.abs(yt)*Nt?(Tt<0&&(Nt=-Nt),bt=Nt*yt/Tt,Lt=Nt):(yt<0&&(xt=-xt),bt=xt,Lt=xt*Tt/yt),{x:ht+bt,y:mt+Lt}}function Q(rt){var ft=F.map(F.range(tt(rt)+1),function(){return[]});return F.forEach(rt.nodes(),function(ht){var mt=rt.node(ht),yt=mt.rank;F.isUndefined(yt)||(ft[yt][mt.order]=ht)}),ft}function _(rt){var ft=F.min(F.map(rt.nodes(),function(ht){return rt.node(ht).rank}));F.forEach(rt.nodes(),function(ht){var mt=rt.node(ht);F.has(mt,"rank")&&(mt.rank-=ft)})}function P(rt){var ft=F.min(F.map(rt.nodes(),function(Tt){return rt.node(Tt).rank})),ht=[];F.forEach(rt.nodes(),function(Tt){var xt=rt.node(Tt).rank-ft;ht[xt]||(ht[xt]=[]),ht[xt].push(Tt)});var mt=0,yt=rt.graph().nodeRankFactor;F.forEach(ht,function(Tt,xt){F.isUndefined(Tt)&&xt%yt!==0?--mt:mt&&F.forEach(Tt,function(Nt){rt.node(Nt).rank+=mt})})}function Z(rt,ft,ht,mt){var yt={width:0,height:0};return arguments.length>=4&&(yt.rank=ht,yt.order=mt),D(rt,"border",yt,ft)}function tt(rt){return F.max(F.map(rt.nodes(),function(ft){var ht=rt.node(ft).rank;if(!F.isUndefined(ht))return ht}))}function $(rt,ft){var ht={lhs:[],rhs:[]};return F.forEach(rt,function(mt){ft(mt)?ht.lhs.push(mt):ht.rhs.push(mt)}),ht}function lt(rt,ft){var ht=F.now();try{return ft()}finally{console.log(rt+" time: "+(F.now()-ht)+"ms")}}function At(rt,ft){return ft()}},11897:function(X){X.exports="0.8.5"},37271:function(X){"use strict";var nt=Object.prototype.hasOwnProperty,M="~";function F(){}Object.create&&(F.prototype=Object.create(null),new F().__proto__||(M=!1));function z(k,U,L){this.fn=k,this.context=U,this.once=L||!1}function D(k,U,L,Q,_){if(typeof L!="function")throw new TypeError("The listener must be a function");var P=new z(L,Q||k,_),Z=M?M+U:U;return k._events[Z]?k._events[Z].fn?k._events[Z]=[k._events[Z],P]:k._events[Z].push(P):(k._events[Z]=P,k._eventsCount++),k}function N(k,U){--k._eventsCount===0?k._events=new F:delete k._events[U]}function O(){this._events=new F,this._eventsCount=0}O.prototype.eventNames=function(){var U=[],L,Q;if(this._eventsCount===0)return U;for(Q in L=this._events)nt.call(L,Q)&&U.push(M?Q.slice(1):Q);return Object.getOwnPropertySymbols?U.concat(Object.getOwnPropertySymbols(L)):U},O.prototype.listeners=function(U){var L=M?M+U:U,Q=this._events[L];if(!Q)return[];if(Q.fn)return[Q.fn];for(var _=0,P=Q.length,Z=new Array(P);_<P;_++)Z[_]=Q[_].fn;return Z},O.prototype.listenerCount=function(U){var L=M?M+U:U,Q=this._events[L];return Q?Q.fn?1:Q.length:0},O.prototype.emit=function(U,L,Q,_,P,Z){var tt=M?M+U:U;if(!this._events[tt])return!1;var $=this._events[tt],lt=arguments.length,At,rt;if($.fn){switch($.once&&this.removeListener(U,$.fn,void 0,!0),lt){case 1:return $.fn.call($.context),!0;case 2:return $.fn.call($.context,L),!0;case 3:return $.fn.call($.context,L,Q),!0;case 4:return $.fn.call($.context,L,Q,_),!0;case 5:return $.fn.call($.context,L,Q,_,P),!0;case 6:return $.fn.call($.context,L,Q,_,P,Z),!0}for(rt=1,At=new Array(lt-1);rt<lt;rt++)At[rt-1]=arguments[rt];$.fn.apply($.context,At)}else{var ft=$.length,ht;for(rt=0;rt<ft;rt++)switch($[rt].once&&this.removeListener(U,$[rt].fn,void 0,!0),lt){case 1:$[rt].fn.call($[rt].context);break;case 2:$[rt].fn.call($[rt].context,L);break;case 3:$[rt].fn.call($[rt].context,L,Q);break;case 4:$[rt].fn.call($[rt].context,L,Q,_);break;default:if(!At)for(ht=1,At=new Array(lt-1);ht<lt;ht++)At[ht-1]=arguments[ht];$[rt].fn.apply($[rt].context,At)}}return!0},O.prototype.on=function(U,L,Q){return D(this,U,L,Q,!1)},O.prototype.once=function(U,L,Q){return D(this,U,L,Q,!0)},O.prototype.removeListener=function(U,L,Q,_){var P=M?M+U:U;if(!this._events[P])return this;if(!L)return N(this,P),this;var Z=this._events[P];if(Z.fn)Z.fn===L&&(!_||Z.once)&&(!Q||Z.context===Q)&&N(this,P);else{for(var tt=0,$=[],lt=Z.length;tt<lt;tt++)(Z[tt].fn!==L||_&&!Z[tt].once||Q&&Z[tt].context!==Q)&&$.push(Z[tt]);$.length?this._events[P]=$.length===1?$[0]:$:N(this,P)}return this},O.prototype.removeAllListeners=function(U){var L;return U?(L=M?M+U:U,this._events[L]&&N(this,L)):(this._events=new F,this._eventsCount=0),this},O.prototype.off=O.prototype.removeListener,O.prototype.addListener=O.prototype.on,O.prefixed=M,O.EventEmitter=O,X.exports=O},75172:function(X,nt,M){var F=M(89224);X.exports={Graph:F.Graph,json:M(17401),alg:M(54613),version:F.version}},91606:function(X,nt,M){var F=M(95329);X.exports=z;function z(D){var N={},O=[],k;function U(L){F.has(N,L)||(N[L]=!0,k.push(L),F.each(D.successors(L),U),F.each(D.predecessors(L),U))}return F.each(D.nodes(),function(L){k=[],U(L),k.length&&O.push(k)}),O}},21482:function(X,nt,M){var F=M(95329);X.exports=z;function z(N,O,k){F.isArray(O)||(O=[O]);var U=(N.isDirected()?N.successors:N.neighbors).bind(N),L=[],Q={};return F.each(O,function(_){if(!N.hasNode(_))throw new Error("Graph does not have node: "+_);D(N,_,k==="post",Q,U,L)}),L}function D(N,O,k,U,L,Q){F.has(U,O)||(U[O]=!0,k||Q.push(O),F.each(L(O),function(_){D(N,_,k,U,L,Q)}),k&&Q.push(O))}},40845:function(X,nt,M){var F=M(13746),z=M(95329);X.exports=D;function D(N,O,k){return z.transform(N.nodes(),function(U,L){U[L]=F(N,L,O,k)},{})}},13746:function(X,nt,M){var F=M(95329),z=M(36614);X.exports=N;var D=F.constant(1);function N(k,U,L,Q){return O(k,String(U),L||D,Q||function(_){return k.outEdges(_)})}function O(k,U,L,Q){var _={},P=new z,Z,tt,$=function(lt){var At=lt.v!==Z?lt.v:lt.w,rt=_[At],ft=L(lt),ht=tt.distance+ft;if(ft<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+lt+" Weight: "+ft);ht<rt.distance&&(rt.distance=ht,rt.predecessor=Z,P.decrease(At,ht))};for(k.nodes().forEach(function(lt){var At=lt===U?0:Number.POSITIVE_INFINITY;_[lt]={distance:At},P.add(lt,At)});P.size()>0&&(Z=P.removeMin(),tt=_[Z],tt.distance!==Number.POSITIVE_INFINITY);)Q(Z).forEach($);return _}},59324:function(X,nt,M){var F=M(95329),z=M(94558);X.exports=D;function D(N){return F.filter(z(N),function(O){return O.length>1||O.length===1&&N.hasEdge(O[0],O[0])})}},22893:function(X,nt,M){var F=M(95329);X.exports=D;var z=F.constant(1);function D(O,k,U){return N(O,k||z,U||function(L){return O.outEdges(L)})}function N(O,k,U){var L={},Q=O.nodes();return Q.forEach(function(_){L[_]={},L[_][_]={distance:0},Q.forEach(function(P){_!==P&&(L[_][P]={distance:Number.POSITIVE_INFINITY})}),U(_).forEach(function(P){var Z=P.v===_?P.w:P.v,tt=k(P);L[_][Z]={distance:tt,predecessor:_}})}),Q.forEach(function(_){var P=L[_];Q.forEach(function(Z){var tt=L[Z];Q.forEach(function($){var lt=tt[_],At=P[$],rt=tt[$],ft=lt.distance+At.distance;ft<rt.distance&&(rt.distance=ft,rt.predecessor=At.predecessor)})})}),L}},54613:function(X,nt,M){X.exports={components:M(91606),dijkstra:M(13746),dijkstraAll:M(40845),findCycles:M(59324),floydWarshall:M(22893),isAcyclic:M(588),postorder:M(99390),preorder:M(67158),prim:M(66058),tarjan:M(94558),topsort:M(7793)}},588:function(X,nt,M){var F=M(7793);X.exports=z;function z(D){try{F(D)}catch(N){if(N instanceof F.CycleException)return!1;throw N}return!0}},99390:function(X,nt,M){var F=M(21482);X.exports=z;function z(D,N){return F(D,N,"post")}},67158:function(X,nt,M){var F=M(21482);X.exports=z;function z(D,N){return F(D,N,"pre")}},66058:function(X,nt,M){var F=M(95329),z=M(6349),D=M(36614);X.exports=N;function N(O,k){var U=new z,L={},Q=new D,_;function P(tt){var $=tt.v===_?tt.w:tt.v,lt=Q.priority($);if(lt!==void 0){var At=k(tt);At<lt&&(L[$]=_,Q.decrease($,At))}}if(O.nodeCount()===0)return U;F.each(O.nodes(),function(tt){Q.add(tt,Number.POSITIVE_INFINITY),U.setNode(tt)}),Q.decrease(O.nodes()[0],0);for(var Z=!1;Q.size()>0;){if(_=Q.removeMin(),F.has(L,_))U.setEdge(_,L[_]);else{if(Z)throw new Error("Input graph is not connected: "+O);Z=!0}O.nodeEdges(_).forEach(P)}return U}},94558:function(X,nt,M){var F=M(95329);X.exports=z;function z(D){var N=0,O=[],k={},U=[];function L(Q){var _=k[Q]={onStack:!0,lowlink:N,index:N++};if(O.push(Q),D.successors(Q).forEach(function(tt){F.has(k,tt)?k[tt].onStack&&(_.lowlink=Math.min(_.lowlink,k[tt].index)):(L(tt),_.lowlink=Math.min(_.lowlink,k[tt].lowlink))}),_.lowlink===_.index){var P=[],Z;do Z=O.pop(),k[Z].onStack=!1,P.push(Z);while(Q!==Z);U.push(P)}}return D.nodes().forEach(function(Q){F.has(k,Q)||L(Q)}),U}},7793:function(X,nt,M){var F=M(95329);X.exports=z,z.CycleException=D;function z(N){var O={},k={},U=[];function L(Q){if(F.has(k,Q))throw new D;F.has(O,Q)||(k[Q]=!0,O[Q]=!0,F.each(N.predecessors(Q),L),delete k[Q],U.push(Q))}if(F.each(N.sinks(),L),F.size(O)!==N.nodeCount())throw new D;return U}function D(){}D.prototype=new Error},36614:function(X,nt,M){var F=M(95329);X.exports=z;function z(){this._arr=[],this._keyIndices={}}z.prototype.size=function(){return this._arr.length},z.prototype.keys=function(){return this._arr.map(function(D){return D.key})},z.prototype.has=function(D){return F.has(this._keyIndices,D)},z.prototype.priority=function(D){var N=this._keyIndices[D];if(N!==void 0)return this._arr[N].priority},z.prototype.min=function(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key},z.prototype.add=function(D,N){var O=this._keyIndices;if(D=String(D),!F.has(O,D)){var k=this._arr,U=k.length;return O[D]=U,k.push({key:D,priority:N}),this._decrease(U),!0}return!1},z.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var D=this._arr.pop();return delete this._keyIndices[D.key],this._heapify(0),D.key},z.prototype.decrease=function(D,N){var O=this._keyIndices[D];if(N>this._arr[O].priority)throw new Error("New priority is greater than current priority. Key: "+D+" Old: "+this._arr[O].priority+" New: "+N);this._arr[O].priority=N,this._decrease(O)},z.prototype._heapify=function(D){var N=this._arr,O=2*D,k=O+1,U=D;O<N.length&&(U=N[O].priority<N[U].priority?O:U,k<N.length&&(U=N[k].priority<N[U].priority?k:U),U!==D&&(this._swap(D,U),this._heapify(U)))},z.prototype._decrease=function(D){for(var N=this._arr,O=N[D].priority,k;D!==0&&(k=D>>1,!(N[k].priority<O));)this._swap(D,k),D=k},z.prototype._swap=function(D,N){var O=this._arr,k=this._keyIndices,U=O[D],L=O[N];O[D]=L,O[N]=U,k[L.key]=D,k[U.key]=N}},6349:function(X,nt,M){"use strict";var F=M(95329);X.exports=O;var z="\0",D="\0",N="";function O(P){this._isDirected=F.has(P,"directed")?P.directed:!0,this._isMultigraph=F.has(P,"multigraph")?P.multigraph:!1,this._isCompound=F.has(P,"compound")?P.compound:!1,this._label=void 0,this._defaultNodeLabelFn=F.constant(void 0),this._defaultEdgeLabelFn=F.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[D]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}O.prototype._nodeCount=0,O.prototype._edgeCount=0,O.prototype.isDirected=function(){return this._isDirected},O.prototype.isMultigraph=function(){return this._isMultigraph},O.prototype.isCompound=function(){return this._isCompound},O.prototype.setGraph=function(P){return this._label=P,this},O.prototype.graph=function(){return this._label},O.prototype.setDefaultNodeLabel=function(P){return F.isFunction(P)||(P=F.constant(P)),this._defaultNodeLabelFn=P,this},O.prototype.nodeCount=function(){return this._nodeCount},O.prototype.nodes=function(){return F.keys(this._nodes)},O.prototype.sources=function(){var P=this;return F.filter(this.nodes(),function(Z){return F.isEmpty(P._in[Z])})},O.prototype.sinks=function(){var P=this;return F.filter(this.nodes(),function(Z){return F.isEmpty(P._out[Z])})},O.prototype.setNodes=function(P,Z){var tt=arguments,$=this;return F.each(P,function(lt){tt.length>1?$.setNode(lt,Z):$.setNode(lt)}),this},O.prototype.setNode=function(P,Z){return F.has(this._nodes,P)?(arguments.length>1&&(this._nodes[P]=Z),this):(this._nodes[P]=arguments.length>1?Z:this._defaultNodeLabelFn(P),this._isCompound&&(this._parent[P]=D,this._children[P]={},this._children[D][P]=!0),this._in[P]={},this._preds[P]={},this._out[P]={},this._sucs[P]={},++this._nodeCount,this)},O.prototype.node=function(P){return this._nodes[P]},O.prototype.hasNode=function(P){return F.has(this._nodes,P)},O.prototype.removeNode=function(P){var Z=this;if(F.has(this._nodes,P)){var tt=function($){Z.removeEdge(Z._edgeObjs[$])};delete this._nodes[P],this._isCompound&&(this._removeFromParentsChildList(P),delete this._parent[P],F.each(this.children(P),function($){Z.setParent($)}),delete this._children[P]),F.each(F.keys(this._in[P]),tt),delete this._in[P],delete this._preds[P],F.each(F.keys(this._out[P]),tt),delete this._out[P],delete this._sucs[P],--this._nodeCount}return this},O.prototype.setParent=function(P,Z){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(F.isUndefined(Z))Z=D;else{Z+="";for(var tt=Z;!F.isUndefined(tt);tt=this.parent(tt))if(tt===P)throw new Error("Setting "+Z+" as parent of "+P+" would create a cycle");this.setNode(Z)}return this.setNode(P),this._removeFromParentsChildList(P),this._parent[P]=Z,this._children[Z][P]=!0,this},O.prototype._removeFromParentsChildList=function(P){delete this._children[this._parent[P]][P]},O.prototype.parent=function(P){if(this._isCompound){var Z=this._parent[P];if(Z!==D)return Z}},O.prototype.children=function(P){if(F.isUndefined(P)&&(P=D),this._isCompound){var Z=this._children[P];if(Z)return F.keys(Z)}else{if(P===D)return this.nodes();if(this.hasNode(P))return[]}},O.prototype.predecessors=function(P){var Z=this._preds[P];if(Z)return F.keys(Z)},O.prototype.successors=function(P){var Z=this._sucs[P];if(Z)return F.keys(Z)},O.prototype.neighbors=function(P){var Z=this.predecessors(P);if(Z)return F.union(Z,this.successors(P))},O.prototype.isLeaf=function(P){var Z;return this.isDirected()?Z=this.successors(P):Z=this.neighbors(P),Z.length===0},O.prototype.filterNodes=function(P){var Z=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});Z.setGraph(this.graph());var tt=this;F.each(this._nodes,function(At,rt){P(rt)&&Z.setNode(rt,At)}),F.each(this._edgeObjs,function(At){Z.hasNode(At.v)&&Z.hasNode(At.w)&&Z.setEdge(At,tt.edge(At))});var $={};function lt(At){var rt=tt.parent(At);return rt===void 0||Z.hasNode(rt)?($[At]=rt,rt):rt in $?$[rt]:lt(rt)}return this._isCompound&&F.each(Z.nodes(),function(At){Z.setParent(At,lt(At))}),Z},O.prototype.setDefaultEdgeLabel=function(P){return F.isFunction(P)||(P=F.constant(P)),this._defaultEdgeLabelFn=P,this},O.prototype.edgeCount=function(){return this._edgeCount},O.prototype.edges=function(){return F.values(this._edgeObjs)},O.prototype.setPath=function(P,Z){var tt=this,$=arguments;return F.reduce(P,function(lt,At){return $.length>1?tt.setEdge(lt,At,Z):tt.setEdge(lt,At),At}),this},O.prototype.setEdge=function(){var P,Z,tt,$,lt=!1,At=arguments[0];typeof At=="object"&&At!==null&&"v"in At?(P=At.v,Z=At.w,tt=At.name,arguments.length===2&&($=arguments[1],lt=!0)):(P=At,Z=arguments[1],tt=arguments[3],arguments.length>2&&($=arguments[2],lt=!0)),P=""+P,Z=""+Z,F.isUndefined(tt)||(tt=""+tt);var rt=L(this._isDirected,P,Z,tt);if(F.has(this._edgeLabels,rt))return lt&&(this._edgeLabels[rt]=$),this;if(!F.isUndefined(tt)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(P),this.setNode(Z),this._edgeLabels[rt]=lt?$:this._defaultEdgeLabelFn(P,Z,tt);var ft=Q(this._isDirected,P,Z,tt);return P=ft.v,Z=ft.w,Object.freeze(ft),this._edgeObjs[rt]=ft,k(this._preds[Z],P),k(this._sucs[P],Z),this._in[Z][rt]=ft,this._out[P][rt]=ft,this._edgeCount++,this},O.prototype.edge=function(P,Z,tt){var $=arguments.length===1?_(this._isDirected,arguments[0]):L(this._isDirected,P,Z,tt);return this._edgeLabels[$]},O.prototype.hasEdge=function(P,Z,tt){var $=arguments.length===1?_(this._isDirected,arguments[0]):L(this._isDirected,P,Z,tt);return F.has(this._edgeLabels,$)},O.prototype.removeEdge=function(P,Z,tt){var $=arguments.length===1?_(this._isDirected,arguments[0]):L(this._isDirected,P,Z,tt),lt=this._edgeObjs[$];return lt&&(P=lt.v,Z=lt.w,delete this._edgeLabels[$],delete this._edgeObjs[$],U(this._preds[Z],P),U(this._sucs[P],Z),delete this._in[Z][$],delete this._out[P][$],this._edgeCount--),this},O.prototype.inEdges=function(P,Z){var tt=this._in[P];if(tt){var $=F.values(tt);return Z?F.filter($,function(lt){return lt.v===Z}):$}},O.prototype.outEdges=function(P,Z){var tt=this._out[P];if(tt){var $=F.values(tt);return Z?F.filter($,function(lt){return lt.w===Z}):$}},O.prototype.nodeEdges=function(P,Z){var tt=this.inEdges(P,Z);if(tt)return tt.concat(this.outEdges(P,Z))};function k(P,Z){P[Z]?P[Z]++:P[Z]=1}function U(P,Z){--P[Z]||delete P[Z]}function L(P,Z,tt,$){var lt=""+Z,At=""+tt;if(!P&<>At){var rt=lt;lt=At,At=rt}return lt+N+At+N+(F.isUndefined($)?z:$)}function Q(P,Z,tt,$){var lt=""+Z,At=""+tt;if(!P&<>At){var rt=lt;lt=At,At=rt}var ft={v:lt,w:At};return $&&(ft.name=$),ft}function _(P,Z){return L(P,Z.v,Z.w,Z.name)}},89224:function(X,nt,M){X.exports={Graph:M(6349),version:M(16544)}},17401:function(X,nt,M){var F=M(95329),z=M(6349);X.exports={write:D,read:k};function D(U){var L={options:{directed:U.isDirected(),multigraph:U.isMultigraph(),compound:U.isCompound()},nodes:N(U),edges:O(U)};return F.isUndefined(U.graph())||(L.value=F.clone(U.graph())),L}function N(U){return F.map(U.nodes(),function(L){var Q=U.node(L),_=U.parent(L),P={v:L};return F.isUndefined(Q)||(P.value=Q),F.isUndefined(_)||(P.parent=_),P})}function O(U){return F.map(U.edges(),function(L){var Q=U.edge(L),_={v:L.v,w:L.w};return F.isUndefined(L.name)||(_.name=L.name),F.isUndefined(Q)||(_.value=Q),_})}function k(U){var L=new z(U.options).setGraph(U.value);return F.each(U.nodes,function(Q){L.setNode(Q.v,Q.value),Q.parent&&L.setParent(Q.v,Q.parent)}),F.each(U.edges,function(Q){L.setEdge({v:Q.v,w:Q.w,name:Q.name},Q.value)}),L}},95329:function(X,nt,M){var F;try{F={clone:M(76833),constant:M(13503),each:M(76934),filter:M(64725),has:M(99946),isArray:M(80744),isEmpty:M(61627),isFunction:M(9363),isUndefined:M(16513),keys:M(55451),map:M(9924),reduce:M(93410),size:M(40617),transform:M(91116),union:M(44065),values:M(81229)}}catch(z){}F||(F=window._),X.exports=F},16544:function(X){X.exports="2.1.8"},64270:function(X){(function(nt,M){X.exports=M()})(this,function(){"use strict";var nt=function(w,p){return nt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,B){b.__proto__=B}||function(b,B){for(var G in B)Object.prototype.hasOwnProperty.call(B,G)&&(b[G]=B[G])},nt(w,p)};function M(w,p){if(typeof p!="function"&&p!==null)throw new TypeError("Class extends value "+String(p)+" is not a constructor or null");nt(w,p);function b(){this.constructor=w}w.prototype=p===null?Object.create(p):(b.prototype=p.prototype,new b)}var F=function(){return F=Object.assign||function(p){for(var b,B=1,G=arguments.length;B<G;B++){b=arguments[B];for(var Y in b)Object.prototype.hasOwnProperty.call(b,Y)&&(p[Y]=b[Y])}return p},F.apply(this,arguments)};function z(w,p,b,B){function G(Y){return Y instanceof b?Y:new b(function(it){it(Y)})}return new(b||(b=Promise))(function(Y,it){function vt(It){try{Ft(B.next(It))}catch(_t){it(_t)}}function ut(It){try{Ft(B.throw(It))}catch(_t){it(_t)}}function Ft(It){It.done?Y(It.value):G(It.value).then(vt,ut)}Ft((B=B.apply(w,p||[])).next())})}function D(w,p){var b={label:0,sent:function(){if(Y[0]&1)throw Y[1];return Y[1]},trys:[],ops:[]},B,G,Y,it;return it={next:vt(0),throw:vt(1),return:vt(2)},typeof Symbol=="function"&&(it[Symbol.iterator]=function(){return this}),it;function vt(Ft){return function(It){return ut([Ft,It])}}function ut(Ft){if(B)throw new TypeError("Generator is already executing.");for(;b;)try{if(B=1,G&&(Y=Ft[0]&2?G.return:Ft[0]?G.throw||((Y=G.return)&&Y.call(G),0):G.next)&&!(Y=Y.call(G,Ft[1])).done)return Y;switch(G=0,Y&&(Ft=[Ft[0]&2,Y.value]),Ft[0]){case 0:case 1:Y=Ft;break;case 4:return b.label++,{value:Ft[1],done:!1};case 5:b.label++,G=Ft[1],Ft=[0];continue;case 7:Ft=b.ops.pop(),b.trys.pop();continue;default:if(Y=b.trys,!(Y=Y.length>0&&Y[Y.length-1])&&(Ft[0]===6||Ft[0]===2)){b=0;continue}if(Ft[0]===3&&(!Y||Ft[1]>Y[0]&&Ft[1]<Y[3])){b.label=Ft[1];break}if(Ft[0]===6&&b.label<Y[1]){b.label=Y[1],Y=Ft;break}if(Y&&b.label<Y[2]){b.label=Y[2],b.ops.push(Ft);break}Y[2]&&b.ops.pop(),b.trys.pop();continue}Ft=p.call(w,b)}catch(It){Ft=[6,It],G=0}finally{B=Y=0}if(Ft[0]&5)throw Ft[1];return{value:Ft[0]?Ft[1]:void 0,done:!0}}}function N(w,p,b){if(b||arguments.length===2)for(var B=0,G=p.length,Y;B<G;B++)(Y||!(B in p))&&(Y||(Y=Array.prototype.slice.call(p,0,B)),Y[B]=p[B]);return w.concat(Y||p)}for(var O=function(){function w(p,b,B,G){this.left=p,this.top=b,this.width=B,this.height=G}return w.prototype.add=function(p,b,B,G){return new w(this.left+p,this.top+b,this.width+B,this.height+G)},w.fromClientRect=function(p,b){return new w(b.left+p.windowBounds.left,b.top+p.windowBounds.top,b.width,b.height)},w.fromDOMRectList=function(p,b){var B=Array.from(b).find(function(G){return G.width!==0});return B?new w(B.left+p.windowBounds.left,B.top+p.windowBounds.top,B.width,B.height):w.EMPTY},w.EMPTY=new w(0,0,0,0),w}(),k=function(w,p){return O.fromClientRect(w,p.getBoundingClientRect())},U=function(w){var p=w.body,b=w.documentElement;if(!p||!b)throw new Error("Unable to get document size");var B=Math.max(Math.max(p.scrollWidth,b.scrollWidth),Math.max(p.offsetWidth,b.offsetWidth),Math.max(p.clientWidth,b.clientWidth)),G=Math.max(Math.max(p.scrollHeight,b.scrollHeight),Math.max(p.offsetHeight,b.offsetHeight),Math.max(p.clientHeight,b.clientHeight));return new O(0,0,B,G)},L=function(w){for(var p=[],b=0,B=w.length;b<B;){var G=w.charCodeAt(b++);if(G>=55296&&G<=56319&&b<B){var Y=w.charCodeAt(b++);(Y&64512)===56320?p.push(((G&1023)<<10)+(Y&1023)+65536):(p.push(G),b--)}else p.push(G)}return p},Q=function(){for(var w=[],p=0;p<arguments.length;p++)w[p]=arguments[p];if(String.fromCodePoint)return String.fromCodePoint.apply(String,w);var b=w.length;if(!b)return"";for(var B=[],G=-1,Y="";++G<b;){var it=w[G];it<=65535?B.push(it):(it-=65536,B.push((it>>10)+55296,it%1024+56320)),(G+1===b||B.length>16384)&&(Y+=String.fromCharCode.apply(String,B),B.length=0)}return Y},_="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",P=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),Z=0;Z<_.length;Z++)P[_.charCodeAt(Z)]=Z;for(var tt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",$=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),lt=0;lt<tt.length;lt++)$[tt.charCodeAt(lt)]=lt;for(var At=function(w){var p=w.length*.75,b=w.length,B,G=0,Y,it,vt,ut;w[w.length-1]==="="&&(p--,w[w.length-2]==="="&&p--);var Ft=typeof ArrayBuffer!="undefined"&&typeof Uint8Array!="undefined"&&typeof Uint8Array.prototype.slice!="undefined"?new ArrayBuffer(p):new Array(p),It=Array.isArray(Ft)?Ft:new Uint8Array(Ft);for(B=0;B<b;B+=4)Y=$[w.charCodeAt(B)],it=$[w.charCodeAt(B+1)],vt=$[w.charCodeAt(B+2)],ut=$[w.charCodeAt(B+3)],It[G++]=Y<<2|it>>4,It[G++]=(it&15)<<4|vt>>2,It[G++]=(vt&3)<<6|ut&63;return Ft},rt=function(w){for(var p=w.length,b=[],B=0;B<p;B+=2)b.push(w[B+1]<<8|w[B]);return b},ft=function(w){for(var p=w.length,b=[],B=0;B<p;B+=4)b.push(w[B+3]<<24|w[B+2]<<16|w[B+1]<<8|w[B]);return b},ht=5,mt=11,yt=2,Tt=mt-ht,xt=65536>>ht,Nt=1<<ht,bt=Nt-1,Lt=1024>>ht,Kt=xt+Lt,$t=Kt,oe=32,fe=$t+oe,He=65536>>mt,rn=1<<Tt,Dn=rn-1,Mr=function(w,p,b){return w.slice?w.slice(p,b):new Uint16Array(Array.prototype.slice.call(w,p,b))},Vi=function(w,p,b){return w.slice?w.slice(p,b):new Uint32Array(Array.prototype.slice.call(w,p,b))},is=function(w,p){var b=At(w),B=Array.isArray(b)?ft(b):new Uint32Array(b),G=Array.isArray(b)?rt(b):new Uint16Array(b),Y=24,it=Mr(G,Y/2,B[4]/2),vt=B[5]===2?Mr(G,(Y+B[4])/2):Vi(B,Math.ceil((Y+B[4])/4));return new Ao(B[0],B[1],B[2],B[3],it,vt)},Ao=function(){function w(p,b,B,G,Y,it){this.initialValue=p,this.errorValue=b,this.highStart=B,this.highValueIndex=G,this.index=Y,this.data=it}return w.prototype.get=function(p){var b;if(p>=0){if(p<55296||p>56319&&p<=65535)return b=this.index[p>>ht],b=(b<<yt)+(p&bt),this.data[b];if(p<=65535)return b=this.index[xt+(p-55296>>ht)],b=(b<<yt)+(p&bt),this.data[b];if(p<this.highStart)return b=fe-He+(p>>mt),b=this.index[b],b+=p>>ht&Dn,b=this.index[b],b=(b<<yt)+(p&bt),this.data[b];if(p<=1114111)return this.data[this.highValueIndex]}return this.errorValue},w}(),zt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",Wt=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),Yt=0;Yt<zt.length;Yt++)Wt[zt.charCodeAt(Yt)]=Yt;var Et="KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA==",kt=50,Dt=1,ie=2,xe=3,_e=4,Te=5,an=7,rr=8,sr=9,Ke=10,ze=11,ye=12,We=13,Kr=14,Wi=15,me=16,Ga=17,kr=18,Tr=19,fi=20,as=21,Zi=22,ss=23,Ii=24,Jr=25,ma=26,ya=27,aa=28,wa=29,qr=30,or=31,Ko=32,ji=33,Yi=34,lo=35,Ka=36,zo=37,kA=38,Ns=39,QA=40,Pl=41,eu=42,Gh=43,Kh=[9001,65288],Dl="!",pn="\xD7",UA="\xF7",Rl=is(Et),Ea=[qr,Ka],PA=[Dt,ie,xe,Te],Vo=[Ke,rr],_l=[ya,ma],Hl=PA.concat(Vo),q=[kA,Ns,QA,Yi,lo],x=[Wi,We],S=function(w,p){p===void 0&&(p="strict");var b=[],B=[],G=[];return w.forEach(function(Y,it){var vt=Rl.get(Y);if(vt>kt?(G.push(!0),vt-=kt):G.push(!1),["normal","auto","loose"].indexOf(p)!==-1&&[8208,8211,12316,12448].indexOf(Y)!==-1)return B.push(it),b.push(me);if(vt===_e||vt===ze){if(it===0)return B.push(it),b.push(qr);var ut=b[it-1];return Hl.indexOf(ut)===-1?(B.push(B[it-1]),b.push(ut)):(B.push(it),b.push(qr))}if(B.push(it),vt===or)return b.push(p==="strict"?as:zo);if(vt===eu||vt===wa)return b.push(qr);if(vt===Gh)return Y>=131072&&Y<=196605||Y>=196608&&Y<=262141?b.push(zo):b.push(qr);b.push(vt)}),[B,b,G]},m=function(w,p,b,B){var G=B[b];if(Array.isArray(w)?w.indexOf(G)!==-1:w===G)for(var Y=b;Y<=B.length;){Y++;var it=B[Y];if(it===p)return!0;if(it!==Ke)break}if(G===Ke)for(var Y=b;Y>0;){Y--;var vt=B[Y];if(Array.isArray(w)?w.indexOf(vt)!==-1:w===vt)for(var ut=b;ut<=B.length;){ut++;var it=B[ut];if(it===p)return!0;if(it!==Ke)break}if(vt!==Ke)break}return!1},T=function(w,p){for(var b=w;b>=0;){var B=p[b];if(B===Ke)b--;else return B}return 0},H=function(w,p,b,B,G){if(b[B]===0)return pn;var Y=B-1;if(Array.isArray(G)&&G[Y]===!0)return pn;var it=Y-1,vt=Y+1,ut=p[Y],Ft=it>=0?p[it]:0,It=p[vt];if(ut===ie&&It===xe)return pn;if(PA.indexOf(ut)!==-1)return Dl;if(PA.indexOf(It)!==-1||Vo.indexOf(It)!==-1)return pn;if(T(Y,p)===rr)return UA;if(Rl.get(w[Y])===ze||(ut===Ko||ut===ji)&&Rl.get(w[vt])===ze||ut===an||It===an||ut===sr||[Ke,We,Wi].indexOf(ut)===-1&&It===sr||[Ga,kr,Tr,Ii,aa].indexOf(It)!==-1||T(Y,p)===Zi||m(ss,Zi,Y,p)||m([Ga,kr],as,Y,p)||m(ye,ye,Y,p))return pn;if(ut===Ke)return UA;if(ut===ss||It===ss)return pn;if(It===me||ut===me)return UA;if([We,Wi,as].indexOf(It)!==-1||ut===Kr||Ft===Ka&&x.indexOf(ut)!==-1||ut===aa&&It===Ka||It===fi||Ea.indexOf(It)!==-1&&ut===Jr||Ea.indexOf(ut)!==-1&&It===Jr||ut===ya&&[zo,Ko,ji].indexOf(It)!==-1||[zo,Ko,ji].indexOf(ut)!==-1&&It===ma||Ea.indexOf(ut)!==-1&&_l.indexOf(It)!==-1||_l.indexOf(ut)!==-1&&Ea.indexOf(It)!==-1||[ya,ma].indexOf(ut)!==-1&&(It===Jr||[Zi,Wi].indexOf(It)!==-1&&p[vt+1]===Jr)||[Zi,Wi].indexOf(ut)!==-1&&It===Jr||ut===Jr&&[Jr,aa,Ii].indexOf(It)!==-1)return pn;if([Jr,aa,Ii,Ga,kr].indexOf(It)!==-1)for(var _t=Y;_t>=0;){var te=p[_t];if(te===Jr)return pn;if([aa,Ii].indexOf(te)!==-1)_t--;else break}if([ya,ma].indexOf(It)!==-1)for(var _t=[Ga,kr].indexOf(ut)!==-1?it:Y;_t>=0;){var te=p[_t];if(te===Jr)return pn;if([aa,Ii].indexOf(te)!==-1)_t--;else break}if(kA===ut&&[kA,Ns,Yi,lo].indexOf(It)!==-1||[Ns,Yi].indexOf(ut)!==-1&&[Ns,QA].indexOf(It)!==-1||[QA,lo].indexOf(ut)!==-1&&It===QA||q.indexOf(ut)!==-1&&[fi,ma].indexOf(It)!==-1||q.indexOf(It)!==-1&&ut===ya||Ea.indexOf(ut)!==-1&&Ea.indexOf(It)!==-1||ut===Ii&&Ea.indexOf(It)!==-1||Ea.concat(Jr).indexOf(ut)!==-1&&It===Zi&&Kh.indexOf(w[vt])===-1||Ea.concat(Jr).indexOf(It)!==-1&&ut===kr)return pn;if(ut===Pl&&It===Pl){for(var Oe=b[Y],ge=1;Oe>0&&(Oe--,p[Oe]===Pl);)ge++;if(ge%2!==0)return pn}return ut===Ko&&It===ji?pn:UA},st=function(w,p){p||(p={lineBreak:"normal",wordBreak:"normal"});var b=S(w,p.lineBreak),B=b[0],G=b[1],Y=b[2];(p.wordBreak==="break-all"||p.wordBreak==="break-word")&&(G=G.map(function(vt){return[Jr,qr,eu].indexOf(vt)!==-1?zo:vt}));var it=p.wordBreak==="keep-all"?Y.map(function(vt,ut){return vt&&w[ut]>=19968&&w[ut]<=40959}):void 0;return[B,G,it]},ot=function(){function w(p,b,B,G){this.codePoints=p,this.required=b===Dl,this.start=B,this.end=G}return w.prototype.slice=function(){return Q.apply(void 0,this.codePoints.slice(this.start,this.end))},w}(),dt=function(w,p){var b=L(w),B=st(b,p),G=B[0],Y=B[1],it=B[2],vt=b.length,ut=0,Ft=0;return{next:function(){if(Ft>=vt)return{done:!0,value:null};for(var It=pn;Ft<vt&&(It=H(b,Y,G,++Ft,it))===pn;);if(It!==pn||Ft===vt){var _t=new ot(b,It,ut,Ft);return ut=Ft,{value:_t,done:!1}}return{done:!0,value:null}}}},gt=1,Ut=2,Bt=4,Xt=8,he=10,Vt=47,ee=92,Se=9,Mt=32,ne=34,Be=61,Ge=35,je=36,Zn=37,Ie=39,De=40,An=41,Qt=95,re=45,de=33,Ae=60,Jn=62,Qn=64,jn=91,qn=93,Qr=61,Fr=123,Rn=63,Xi=125,Ji=124,dn=126,wr=128,$r=65533,ti=42,_n=43,ks=44,Wo=58,nu=59,co=46,uo=0,DA=8,ru=11,Gl=14,iu=31,Kv=127,za=-1,au=48,su=97,ou=101,zh=102,zv=117,Vv=122,Vh=65,Wh=69,Au=70,Wv=85,Zv=90,zr=function(w){return w>=au&&w<=57},jv=function(w){return w>=55296&&w<=57343},ho=function(w){return zr(w)||w>=Vh&&w<=Au||w>=su&&w<=zh},Yv=function(w){return w>=su&&w<=Vv},Zh=function(w){return w>=Vh&&w<=Zv},Xv=function(w){return Yv(w)||Zh(w)},z1=function(w){return w>=wr},lu=function(w){return w===he||w===Se||w===Mt},Kl=function(w){return Xv(w)||z1(w)||w===Qt},Jv=function(w){return Kl(w)||zr(w)||w===re},V1=function(w){return w>=uo&&w<=DA||w===ru||w>=Gl&&w<=iu||w===Kv},fo=function(w,p){return w!==ee?!1:p!==he},cu=function(w,p,b){return w===re?Kl(p)||fo(p,b):Kl(w)?!0:!!(w===ee&&fo(w,p))},jh=function(w,p,b){return w===_n||w===re?zr(p)?!0:p===co&&zr(b):zr(w===co?p:w)},W1=function(w){var p=0,b=1;(w[p]===_n||w[p]===re)&&(w[p]===re&&(b=-1),p++);for(var B=[];zr(w[p]);)B.push(w[p++]);var G=B.length?parseInt(Q.apply(void 0,B),10):0;w[p]===co&&p++;for(var Y=[];zr(w[p]);)Y.push(w[p++]);var it=Y.length,vt=it?parseInt(Q.apply(void 0,Y),10):0;(w[p]===Wh||w[p]===ou)&&p++;var ut=1;(w[p]===_n||w[p]===re)&&(w[p]===re&&(ut=-1),p++);for(var Ft=[];zr(w[p]);)Ft.push(w[p++]);var It=Ft.length?parseInt(Q.apply(void 0,Ft),10):0;return b*(G+vt*Math.pow(10,-it))*Math.pow(10,ut*It)},Z1={type:2},j1={type:3},Y1={type:4},X1={type:13},J1={type:8},q1={type:21},$1={type:9},tw={type:10},ew={type:11},nw={type:12},rw={type:14},uu={type:23},iw={type:1},aw={type:25},sw={type:24},ow={type:26},Aw={type:27},lw={type:28},cw={type:29},uw={type:31},Yh={type:32},Er=function(){function w(){this._value=[]}return w.prototype.write=function(p){this._value=this._value.concat(L(p))},w.prototype.read=function(){for(var p=[],b=this.consumeToken();b!==Yh;)p.push(b),b=this.consumeToken();return p},w.prototype.consumeToken=function(){var p=this.consumeCodePoint();switch(p){case ne:return this.consumeStringToken(ne);case Ge:var b=this.peekCodePoint(0),B=this.peekCodePoint(1),G=this.peekCodePoint(2);if(Jv(b)||fo(B,G)){var Y=cu(b,B,G)?Ut:gt,it=this.consumeName();return{type:5,value:it,flags:Y}}break;case je:if(this.peekCodePoint(0)===Be)return this.consumeCodePoint(),X1;break;case Ie:return this.consumeStringToken(Ie);case De:return Z1;case An:return j1;case ti:if(this.peekCodePoint(0)===Be)return this.consumeCodePoint(),rw;break;case _n:if(jh(p,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(p),this.consumeNumericToken();break;case ks:return Y1;case re:var vt=p,ut=this.peekCodePoint(0),Ft=this.peekCodePoint(1);if(jh(vt,ut,Ft))return this.reconsumeCodePoint(p),this.consumeNumericToken();if(cu(vt,ut,Ft))return this.reconsumeCodePoint(p),this.consumeIdentLikeToken();if(ut===re&&Ft===Jn)return this.consumeCodePoint(),this.consumeCodePoint(),sw;break;case co:if(jh(p,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(p),this.consumeNumericToken();break;case Vt:if(this.peekCodePoint(0)===ti)for(this.consumeCodePoint();;){var It=this.consumeCodePoint();if(It===ti&&(It=this.consumeCodePoint(),It===Vt))return this.consumeToken();if(It===za)return this.consumeToken()}break;case Wo:return ow;case nu:return Aw;case Ae:if(this.peekCodePoint(0)===de&&this.peekCodePoint(1)===re&&this.peekCodePoint(2)===re)return this.consumeCodePoint(),this.consumeCodePoint(),aw;break;case Qn:var _t=this.peekCodePoint(0),te=this.peekCodePoint(1),Oe=this.peekCodePoint(2);if(cu(_t,te,Oe)){var it=this.consumeName();return{type:7,value:it}}break;case jn:return lw;case ee:if(fo(p,this.peekCodePoint(0)))return this.reconsumeCodePoint(p),this.consumeIdentLikeToken();break;case qn:return cw;case Qr:if(this.peekCodePoint(0)===Be)return this.consumeCodePoint(),J1;break;case Fr:return ew;case Xi:return nw;case zv:case Wv:var ge=this.peekCodePoint(0),be=this.peekCodePoint(1);return ge===_n&&(ho(be)||be===Rn)&&(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(p),this.consumeIdentLikeToken();case Ji:if(this.peekCodePoint(0)===Be)return this.consumeCodePoint(),$1;if(this.peekCodePoint(0)===Ji)return this.consumeCodePoint(),q1;break;case dn:if(this.peekCodePoint(0)===Be)return this.consumeCodePoint(),tw;break;case za:return Yh}return lu(p)?(this.consumeWhiteSpace(),uw):zr(p)?(this.reconsumeCodePoint(p),this.consumeNumericToken()):Kl(p)?(this.reconsumeCodePoint(p),this.consumeIdentLikeToken()):{type:6,value:Q(p)}},w.prototype.consumeCodePoint=function(){var p=this._value.shift();return typeof p=="undefined"?-1:p},w.prototype.reconsumeCodePoint=function(p){this._value.unshift(p)},w.prototype.peekCodePoint=function(p){return p>=this._value.length?-1:this._value[p]},w.prototype.consumeUnicodeRangeToken=function(){for(var p=[],b=this.consumeCodePoint();ho(b)&&p.length<6;)p.push(b),b=this.consumeCodePoint();for(var B=!1;b===Rn&&p.length<6;)p.push(b),b=this.consumeCodePoint(),B=!0;if(B){var G=parseInt(Q.apply(void 0,p.map(function(ut){return ut===Rn?au:ut})),16),Y=parseInt(Q.apply(void 0,p.map(function(ut){return ut===Rn?Au:ut})),16);return{type:30,start:G,end:Y}}var it=parseInt(Q.apply(void 0,p),16);if(this.peekCodePoint(0)===re&&ho(this.peekCodePoint(1))){this.consumeCodePoint(),b=this.consumeCodePoint();for(var vt=[];ho(b)&&vt.length<6;)vt.push(b),b=this.consumeCodePoint();var Y=parseInt(Q.apply(void 0,vt),16);return{type:30,start:it,end:Y}}else return{type:30,start:it,end:it}},w.prototype.consumeIdentLikeToken=function(){var p=this.consumeName();return p.toLowerCase()==="url"&&this.peekCodePoint(0)===De?(this.consumeCodePoint(),this.consumeUrlToken()):this.peekCodePoint(0)===De?(this.consumeCodePoint(),{type:19,value:p}):{type:20,value:p}},w.prototype.consumeUrlToken=function(){var p=[];if(this.consumeWhiteSpace(),this.peekCodePoint(0)===za)return{type:22,value:""};var b=this.peekCodePoint(0);if(b===Ie||b===ne){var B=this.consumeStringToken(this.consumeCodePoint());return B.type===0&&(this.consumeWhiteSpace(),this.peekCodePoint(0)===za||this.peekCodePoint(0)===An)?(this.consumeCodePoint(),{type:22,value:B.value}):(this.consumeBadUrlRemnants(),uu)}for(;;){var G=this.consumeCodePoint();if(G===za||G===An)return{type:22,value:Q.apply(void 0,p)};if(lu(G))return this.consumeWhiteSpace(),this.peekCodePoint(0)===za||this.peekCodePoint(0)===An?(this.consumeCodePoint(),{type:22,value:Q.apply(void 0,p)}):(this.consumeBadUrlRemnants(),uu);if(G===ne||G===Ie||G===De||V1(G))return this.consumeBadUrlRemnants(),uu;if(G===ee)if(fo(G,this.peekCodePoint(0)))p.push(this.consumeEscapedCodePoint());else return this.consumeBadUrlRemnants(),uu;else p.push(G)}},w.prototype.consumeWhiteSpace=function(){for(;lu(this.peekCodePoint(0));)this.consumeCodePoint()},w.prototype.consumeBadUrlRemnants=function(){for(;;){var p=this.consumeCodePoint();if(p===An||p===za)return;fo(p,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},w.prototype.consumeStringSlice=function(p){for(var b=5e4,B="";p>0;){var G=Math.min(b,p);B+=Q.apply(void 0,this._value.splice(0,G)),p-=G}return this._value.shift(),B},w.prototype.consumeStringToken=function(p){var b="",B=0;do{var G=this._value[B];if(G===za||G===void 0||G===p)return b+=this.consumeStringSlice(B),{type:0,value:b};if(G===he)return this._value.splice(0,B),iw;if(G===ee){var Y=this._value[B+1];Y!==za&&Y!==void 0&&(Y===he?(b+=this.consumeStringSlice(B),B=-1,this._value.shift()):fo(G,Y)&&(b+=this.consumeStringSlice(B),b+=Q(this.consumeEscapedCodePoint()),B=-1))}B++}while(!0)},w.prototype.consumeNumber=function(){var p=[],b=Bt,B=this.peekCodePoint(0);for((B===_n||B===re)&&p.push(this.consumeCodePoint());zr(this.peekCodePoint(0));)p.push(this.consumeCodePoint());B=this.peekCodePoint(0);var G=this.peekCodePoint(1);if(B===co&&zr(G))for(p.push(this.consumeCodePoint(),this.consumeCodePoint()),b=Xt;zr(this.peekCodePoint(0));)p.push(this.consumeCodePoint());B=this.peekCodePoint(0),G=this.peekCodePoint(1);var Y=this.peekCodePoint(2);if((B===Wh||B===ou)&&((G===_n||G===re)&&zr(Y)||zr(G)))for(p.push(this.consumeCodePoint(),this.consumeCodePoint()),b=Xt;zr(this.peekCodePoint(0));)p.push(this.consumeCodePoint());return[W1(p),b]},w.prototype.consumeNumericToken=function(){var p=this.consumeNumber(),b=p[0],B=p[1],G=this.peekCodePoint(0),Y=this.peekCodePoint(1),it=this.peekCodePoint(2);if(cu(G,Y,it)){var vt=this.consumeName();return{type:15,number:b,flags:B,unit:vt}}return G===Zn?(this.consumeCodePoint(),{type:16,number:b,flags:B}):{type:17,number:b,flags:B}},w.prototype.consumeEscapedCodePoint=function(){var p=this.consumeCodePoint();if(ho(p)){for(var b=Q(p);ho(this.peekCodePoint(0))&&b.length<6;)b+=Q(this.consumeCodePoint());lu(this.peekCodePoint(0))&&this.consumeCodePoint();var B=parseInt(b,16);return B===0||jv(B)||B>1114111?$r:B}return p===za?$r:p},w.prototype.consumeName=function(){for(var p="";;){var b=this.consumeCodePoint();if(Jv(b))p+=Q(b);else if(fo(b,this.peekCodePoint(0)))p+=Q(this.consumeEscapedCodePoint());else return this.reconsumeCodePoint(b),p}},w}(),qv=function(){function w(p){this._tokens=p}return w.create=function(p){var b=new Er;return b.write(p),new w(b.read())},w.parseValue=function(p){return w.create(p).parseComponentValue()},w.parseValues=function(p){return w.create(p).parseComponentValues()},w.prototype.parseComponentValue=function(){for(var p=this.consumeToken();p.type===31;)p=this.consumeToken();if(p.type===32)throw new SyntaxError("Error parsing CSS component value, unexpected EOF");this.reconsumeToken(p);var b=this.consumeComponentValue();do p=this.consumeToken();while(p.type===31);if(p.type===32)return b;throw new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")},w.prototype.parseComponentValues=function(){for(var p=[];;){var b=this.consumeComponentValue();if(b.type===32)return p;p.push(b),p.push()}},w.prototype.consumeComponentValue=function(){var p=this.consumeToken();switch(p.type){case 11:case 28:case 2:return this.consumeSimpleBlock(p.type);case 19:return this.consumeFunction(p)}return p},w.prototype.consumeSimpleBlock=function(p){for(var b={type:p,values:[]},B=this.consumeToken();;){if(B.type===32||t0(B,p))return b;this.reconsumeToken(B),b.values.push(this.consumeComponentValue()),B=this.consumeToken()}},w.prototype.consumeFunction=function(p){for(var b={name:p.value,values:[],type:18};;){var B=this.consumeToken();if(B.type===32||B.type===3)return b;this.reconsumeToken(B),b.values.push(this.consumeComponentValue())}},w.prototype.consumeToken=function(){var p=this._tokens.shift();return typeof p=="undefined"?Yh:p},w.prototype.reconsumeToken=function(p){this._tokens.unshift(p)},w}(),sa=function(w){return w.type===15},RA=function(w){return w.type===17},$n=function(w){return w.type===20},Qs=function(w){return w.type===0},Xh=function(w,p){return $n(w)&&w.value===p},$v=function(w){return w.type!==31},_A=function(w){return w.type!==31&&w.type!==4},os=function(w){var p=[],b=[];return w.forEach(function(B){if(B.type===4){if(b.length===0)throw new Error("Error parsing function args, zero tokens for arg");p.push(b),b=[];return}B.type!==31&&b.push(B)}),b.length&&p.push(b),p},t0=function(w,p){return p===11&&w.type===12||p===28&&w.type===29?!0:p===2&&w.type===3},Us=function(w){return w.type===17||w.type===15},Ur=function(w){return w.type===16||Us(w)},zl=function(w){return w.length>1?[w[0],w[1]]:[w[0]]},di={type:17,number:0,flags:Bt},HA={type:16,number:50,flags:Bt},go={type:16,number:100,flags:Bt},GA=function(w,p,b){var B=w[0],G=w[1];return[Kn(B,p),Kn(typeof G!="undefined"?G:B,b)]},Kn=function(w,p){if(w.type===16)return w.number/100*p;if(sa(w))switch(w.unit){case"rem":case"em":return 16*w.number;case"px":default:return w.number}return w.number},e0="deg",n0="grad",Jh="rad",KA="turn",zA={name:"angle",parse:function(w,p){if(p.type===15)switch(p.unit){case e0:return Math.PI*p.number/180;case n0:return Math.PI/200*p.number;case Jh:return p.number;case KA:return Math.PI*2*p.number}throw new Error("Unsupported angle type")}},r0=function(w){return w.type===15&&(w.unit===e0||w.unit===n0||w.unit===Jh||w.unit===KA)},hu=function(w){var p=w.filter($n).map(function(b){return b.value}).join(" ");switch(p){case"to bottom right":case"to right bottom":case"left top":case"top left":return[di,di];case"to top":case"bottom":return oa(0);case"to bottom left":case"to left bottom":case"right top":case"top right":return[di,go];case"to right":case"left":return oa(90);case"to top left":case"to left top":case"right bottom":case"bottom right":return[go,go];case"to bottom":case"top":return oa(180);case"to top right":case"to right top":case"left bottom":case"bottom left":return[go,di];case"to left":case"right":return oa(270)}return 0},oa=function(w){return Math.PI*w/180},Ps={name:"color",parse:function(w,p){if(p.type===18){var b=hw[p.name];if(typeof b=="undefined")throw new Error('Attempting to parse an unsupported color function "'+p.name+'"');return b(w,p.values)}if(p.type===5){if(p.value.length===3){var B=p.value.substring(0,1),G=p.value.substring(1,2),Y=p.value.substring(2,3);return po(parseInt(B+B,16),parseInt(G+G,16),parseInt(Y+Y,16),1)}if(p.value.length===4){var B=p.value.substring(0,1),G=p.value.substring(1,2),Y=p.value.substring(2,3),it=p.value.substring(3,4);return po(parseInt(B+B,16),parseInt(G+G,16),parseInt(Y+Y,16),parseInt(it+it,16)/255)}if(p.value.length===6){var B=p.value.substring(0,2),G=p.value.substring(2,4),Y=p.value.substring(4,6);return po(parseInt(B,16),parseInt(G,16),parseInt(Y,16),1)}if(p.value.length===8){var B=p.value.substring(0,2),G=p.value.substring(2,4),Y=p.value.substring(4,6),it=p.value.substring(6,8);return po(parseInt(B,16),parseInt(G,16),parseInt(Y,16),parseInt(it,16)/255)}}if(p.type===20){var vt=Ds[p.value.toUpperCase()];if(typeof vt!="undefined")return vt}return Ds.TRANSPARENT}},vo=function(w){return(255&w)===0},ei=function(w){var p=255&w,b=255&w>>8,B=255&w>>16,G=255&w>>24;return p<255?"rgba("+G+","+B+","+b+","+p/255+")":"rgb("+G+","+B+","+b+")"},po=function(w,p,b,B){return(w<<24|p<<16|b<<8|Math.round(B*255)<<0)>>>0},i0=function(w,p){if(w.type===17)return w.number;if(w.type===16){var b=p===3?1:255;return p===3?w.number/100*b:Math.round(w.number/100*b)}return 0},a0=function(w,p){var b=p.filter(_A);if(b.length===3){var B=b.map(i0),G=B[0],Y=B[1],it=B[2];return po(G,Y,it,1)}if(b.length===4){var vt=b.map(i0),G=vt[0],Y=vt[1],it=vt[2],ut=vt[3];return po(G,Y,it,ut)}return 0};function Zo(w,p,b){return b<0&&(b+=1),b>=1&&(b-=1),b<1/6?(p-w)*b*6+w:b<1/2?p:b<2/3?(p-w)*6*(2/3-b)+w:w}var s0=function(w,p){var b=p.filter(_A),B=b[0],G=b[1],Y=b[2],it=b[3],vt=(B.type===17?oa(B.number):zA.parse(w,B))/(Math.PI*2),ut=Ur(G)?G.number/100:0,Ft=Ur(Y)?Y.number/100:0,It=typeof it!="undefined"&&Ur(it)?Kn(it,1):1;if(ut===0)return po(Ft*255,Ft*255,Ft*255,1);var _t=Ft<=.5?Ft*(ut+1):Ft+ut-Ft*ut,te=Ft*2-_t,Oe=Zo(te,_t,vt+1/3),ge=Zo(te,_t,vt),be=Zo(te,_t,vt-1/3);return po(Oe*255,ge*255,be*255,It)},hw={hsl:s0,hsla:s0,rgb:a0,rgba:a0},Vl=function(w,p){return Ps.parse(w,qv.create(p).parseComponentValue())},Ds={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199},fw={name:"background-clip",initialValue:"border-box",prefix:!1,type:1,parse:function(w,p){return p.map(function(b){if($n(b))switch(b.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},fu={name:"background-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},du=function(w,p){var b=Ps.parse(w,p[0]),B=p[1];return B&&Ur(B)?{color:b,stop:B}:{color:b,stop:null}},o0=function(w,p){var b=w[0],B=w[w.length-1];b.stop===null&&(b.stop=di),B.stop===null&&(B.stop=go);for(var G=[],Y=0,it=0;it<w.length;it++){var vt=w[it].stop;if(vt!==null){var ut=Kn(vt,p);ut>Y?G.push(ut):G.push(Y),Y=ut}else G.push(null)}for(var Ft=null,it=0;it<G.length;it++){var It=G[it];if(It===null)Ft===null&&(Ft=it);else if(Ft!==null){for(var _t=it-Ft,te=G[Ft-1],Oe=(It-te)/(_t+1),ge=1;ge<=_t;ge++)G[Ft+ge-1]=Oe*ge;Ft=null}}return w.map(function(be,sn){var Ue=be.color;return{color:Ue,stop:Math.max(Math.min(1,G[sn]/p),0)}})},A0=function(w,p,b){var B=p/2,G=b/2,Y=Kn(w[0],p)-B,it=G-Kn(w[1],b);return(Math.atan2(it,Y)+Math.PI*2)%(Math.PI*2)},l0=function(w,p,b){var B=typeof w=="number"?w:A0(w,p,b),G=Math.abs(p*Math.sin(B))+Math.abs(b*Math.cos(B)),Y=p/2,it=b/2,vt=G/2,ut=Math.sin(B-Math.PI/2)*vt,Ft=Math.cos(B-Math.PI/2)*vt;return[G,Y-Ft,Y+Ft,it-ut,it+ut]},Va=function(w,p){return Math.sqrt(w*w+p*p)},c0=function(w,p,b,B,G){var Y=[[0,0],[0,p],[w,0],[w,p]];return Y.reduce(function(it,vt){var ut=vt[0],Ft=vt[1],It=Va(b-ut,B-Ft);return(G?It<it.optimumDistance:It>it.optimumDistance)?{optimumCorner:vt,optimumDistance:It}:it},{optimumDistance:G?1/0:-1/0,optimumCorner:null}).optimumCorner},dw=function(w,p,b,B,G){var Y=0,it=0;switch(w.size){case 0:w.shape===0?Y=it=Math.min(Math.abs(p),Math.abs(p-B),Math.abs(b),Math.abs(b-G)):w.shape===1&&(Y=Math.min(Math.abs(p),Math.abs(p-B)),it=Math.min(Math.abs(b),Math.abs(b-G)));break;case 2:if(w.shape===0)Y=it=Math.min(Va(p,b),Va(p,b-G),Va(p-B,b),Va(p-B,b-G));else if(w.shape===1){var vt=Math.min(Math.abs(b),Math.abs(b-G))/Math.min(Math.abs(p),Math.abs(p-B)),ut=c0(B,G,p,b,!0),Ft=ut[0],It=ut[1];Y=Va(Ft-p,(It-b)/vt),it=vt*Y}break;case 1:w.shape===0?Y=it=Math.max(Math.abs(p),Math.abs(p-B),Math.abs(b),Math.abs(b-G)):w.shape===1&&(Y=Math.max(Math.abs(p),Math.abs(p-B)),it=Math.max(Math.abs(b),Math.abs(b-G)));break;case 3:if(w.shape===0)Y=it=Math.max(Va(p,b),Va(p,b-G),Va(p-B,b),Va(p-B,b-G));else if(w.shape===1){var vt=Math.max(Math.abs(b),Math.abs(b-G))/Math.max(Math.abs(p),Math.abs(p-B)),_t=c0(B,G,p,b,!1),Ft=_t[0],It=_t[1];Y=Va(Ft-p,(It-b)/vt),it=vt*Y}break}return Array.isArray(w.size)&&(Y=Kn(w.size[0],B),it=w.size.length===2?Kn(w.size[1],G):Y),[Y,it]},gw=function(w,p){var b=oa(180),B=[];return os(p).forEach(function(G,Y){if(Y===0){var it=G[0];if(it.type===20&&it.value==="to"){b=hu(G);return}else if(r0(it)){b=zA.parse(w,it);return}}var vt=du(w,G);B.push(vt)}),{angle:b,stops:B,type:1}},gu=function(w,p){var b=oa(180),B=[];return os(p).forEach(function(G,Y){if(Y===0){var it=G[0];if(it.type===20&&["top","left","right","bottom"].indexOf(it.value)!==-1){b=hu(G);return}else if(r0(it)){b=(zA.parse(w,it)+oa(270))%oa(360);return}}var vt=du(w,G);B.push(vt)}),{angle:b,stops:B,type:1}},vw=function(w,p){var b=oa(180),B=[],G=1,Y=0,it=3,vt=[];return os(p).forEach(function(ut,Ft){var It=ut[0];if(Ft===0){if($n(It)&&It.value==="linear"){G=1;return}else if($n(It)&&It.value==="radial"){G=2;return}}if(It.type===18){if(It.name==="from"){var _t=Ps.parse(w,It.values[0]);B.push({stop:di,color:_t})}else if(It.name==="to"){var _t=Ps.parse(w,It.values[0]);B.push({stop:go,color:_t})}else if(It.name==="color-stop"){var te=It.values.filter(_A);if(te.length===2){var _t=Ps.parse(w,te[1]),Oe=te[0];RA(Oe)&&B.push({stop:{type:16,number:Oe.number*100,flags:Oe.flags},color:_t})}}}}),G===1?{angle:(b+oa(180))%oa(360),stops:B,type:G}:{size:it,shape:Y,stops:B,position:vt,type:G}},u0="closest-side",h0="farthest-side",f0="closest-corner",d0="farthest-corner",g0="circle",v0="ellipse",p0="cover",m0="contain",pw=function(w,p){var b=0,B=3,G=[],Y=[];return os(p).forEach(function(it,vt){var ut=!0;if(vt===0){var Ft=!1;ut=it.reduce(function(_t,te){if(Ft)if($n(te))switch(te.value){case"center":return Y.push(HA),_t;case"top":case"left":return Y.push(di),_t;case"right":case"bottom":return Y.push(go),_t}else(Ur(te)||Us(te))&&Y.push(te);else if($n(te))switch(te.value){case g0:return b=0,!1;case v0:return b=1,!1;case"at":return Ft=!0,!1;case u0:return B=0,!1;case p0:case h0:return B=1,!1;case m0:case f0:return B=2,!1;case d0:return B=3,!1}else if(Us(te)||Ur(te))return Array.isArray(B)||(B=[]),B.push(te),!1;return _t},ut)}if(ut){var It=du(w,it);G.push(It)}}),{size:B,shape:b,stops:G,position:Y,type:2}},vu=function(w,p){var b=0,B=3,G=[],Y=[];return os(p).forEach(function(it,vt){var ut=!0;if(vt===0?ut=it.reduce(function(It,_t){if($n(_t))switch(_t.value){case"center":return Y.push(HA),!1;case"top":case"left":return Y.push(di),!1;case"right":case"bottom":return Y.push(go),!1}else if(Ur(_t)||Us(_t))return Y.push(_t),!1;return It},ut):vt===1&&(ut=it.reduce(function(It,_t){if($n(_t))switch(_t.value){case g0:return b=0,!1;case v0:return b=1,!1;case m0:case u0:return B=0,!1;case h0:return B=1,!1;case f0:return B=2,!1;case p0:case d0:return B=3,!1}else if(Us(_t)||Ur(_t))return Array.isArray(B)||(B=[]),B.push(_t),!1;return It},ut)),ut){var Ft=du(w,it);G.push(Ft)}}),{size:B,shape:b,stops:G,position:Y,type:2}},mw=function(w){return w.type===1},y0=function(w){return w.type===2},pu={name:"image",parse:function(w,p){if(p.type===22){var b={url:p.value,type:0};return w.cache.addImage(p.value),b}if(p.type===18){var B=w0[p.name];if(typeof B=="undefined")throw new Error('Attempting to parse an unsupported image function "'+p.name+'"');return B(w,p.values)}throw new Error("Unsupported image type "+p.type)}};function yw(w){return!(w.type===20&&w.value==="none")&&(w.type!==18||!!w0[w.name])}var w0={"linear-gradient":gw,"-moz-linear-gradient":gu,"-ms-linear-gradient":gu,"-o-linear-gradient":gu,"-webkit-linear-gradient":gu,"radial-gradient":pw,"-moz-radial-gradient":vu,"-ms-radial-gradient":vu,"-o-radial-gradient":vu,"-webkit-radial-gradient":vu,"-webkit-gradient":vw},ww={name:"background-image",initialValue:"none",type:1,prefix:!1,parse:function(w,p){if(p.length===0)return[];var b=p[0];return b.type===20&&b.value==="none"?[]:p.filter(function(B){return _A(B)&&yw(B)}).map(function(B){return pu.parse(w,B)})}},Ew={name:"background-origin",initialValue:"border-box",prefix:!1,type:1,parse:function(w,p){return p.map(function(b){if($n(b))switch(b.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},Bw={name:"background-position",initialValue:"0% 0%",type:1,prefix:!1,parse:function(w,p){return os(p).map(function(b){return b.filter(Ur)}).map(zl)}},bw={name:"background-repeat",initialValue:"repeat",prefix:!1,type:1,parse:function(w,p){return os(p).map(function(b){return b.filter($n).map(function(B){return B.value}).join(" ")}).map(xw)}},xw=function(w){switch(w){case"no-repeat":return 1;case"repeat-x":case"repeat no-repeat":return 2;case"repeat-y":case"no-repeat repeat":return 3;case"repeat":default:return 0}},VA;(function(w){w.AUTO="auto",w.CONTAIN="contain",w.COVER="cover"})(VA||(VA={}));var Cw={name:"background-size",initialValue:"0",prefix:!1,type:1,parse:function(w,p){return os(p).map(function(b){return b.filter(Sw)})}},Sw=function(w){return $n(w)||Ur(w)},mu=function(w){return{name:"border-"+w+"-color",initialValue:"transparent",prefix:!1,type:3,format:"color"}},Mw=mu("top"),E0=mu("right"),Tw=mu("bottom"),Fw=mu("left"),yu=function(w){return{name:"border-radius-"+w,initialValue:"0 0",prefix:!1,type:1,parse:function(p,b){return zl(b.filter(Ur))}}},Ow=yu("top-left"),Iw=yu("top-right"),Lw=yu("bottom-right"),Nw=yu("bottom-left"),wu=function(w){return{name:"border-"+w+"-style",initialValue:"solid",prefix:!1,type:2,parse:function(p,b){switch(b){case"none":return 0;case"dashed":return 2;case"dotted":return 3;case"double":return 4}return 1}}},kw=wu("top"),we=wu("right"),Li=wu("bottom"),Pe=wu("left"),gn=function(w){return{name:"border-"+w+"-width",initialValue:"0",type:0,prefix:!1,parse:function(p,b){return sa(b)?b.number:0}}},B0=gn("top"),hr=gn("right"),j=gn("bottom"),WA=gn("left"),qh={name:"color",initialValue:"transparent",prefix:!1,type:3,format:"color"},$h={name:"direction",initialValue:"ltr",prefix:!1,type:2,parse:function(w,p){switch(p){case"rtl":return 1;case"ltr":default:return 0}}},tf={name:"display",initialValue:"inline-block",prefix:!1,type:1,parse:function(w,p){return p.filter($n).reduce(function(b,B){return b|ef(B.value)},0)}},ef=function(w){switch(w){case"block":case"-webkit-box":return 2;case"inline":return 4;case"run-in":return 8;case"flow":return 16;case"flow-root":return 32;case"table":return 64;case"flex":case"-webkit-flex":return 128;case"grid":case"-ms-grid":return 256;case"ruby":return 512;case"subgrid":return 1024;case"list-item":return 2048;case"table-row-group":return 4096;case"table-header-group":return 8192;case"table-footer-group":return 16384;case"table-row":return 32768;case"table-cell":return 65536;case"table-column-group":return 131072;case"table-column":return 262144;case"table-caption":return 524288;case"ruby-base":return 1048576;case"ruby-text":return 2097152;case"ruby-base-container":return 4194304;case"ruby-text-container":return 8388608;case"contents":return 16777216;case"inline-block":return 33554432;case"inline-list-item":return 67108864;case"inline-table":return 134217728;case"inline-flex":return 268435456;case"inline-grid":return 536870912}return 0},nf={name:"float",initialValue:"none",prefix:!1,type:2,parse:function(w,p){switch(p){case"left":return 1;case"right":return 2;case"inline-start":return 3;case"inline-end":return 4}return 0}},b0={name:"letter-spacing",initialValue:"0",prefix:!1,type:0,parse:function(w,p){return p.type===20&&p.value==="normal"?0:p.type===17||p.type===15?p.number:0}},Wl;(function(w){w.NORMAL="normal",w.STRICT="strict"})(Wl||(Wl={}));var jo={name:"line-break",initialValue:"normal",prefix:!1,type:2,parse:function(w,p){switch(p){case"strict":return Wl.STRICT;case"normal":default:return Wl.NORMAL}}},x0={name:"line-height",initialValue:"normal",prefix:!1,type:4},rf=function(w,p){return $n(w)&&w.value==="normal"?1.2*p:w.type===17?p*w.number:Ur(w)?Kn(w,p):p},Zl={name:"list-style-image",initialValue:"none",type:0,prefix:!1,parse:function(w,p){return p.type===20&&p.value==="none"?null:pu.parse(w,p)}},C0={name:"list-style-position",initialValue:"outside",prefix:!1,type:2,parse:function(w,p){switch(p){case"inside":return 0;case"outside":default:return 1}}},Eu={name:"list-style-type",initialValue:"none",prefix:!1,type:2,parse:function(w,p){switch(p){case"disc":return 0;case"circle":return 1;case"square":return 2;case"decimal":return 3;case"cjk-decimal":return 4;case"decimal-leading-zero":return 5;case"lower-roman":return 6;case"upper-roman":return 7;case"lower-greek":return 8;case"lower-alpha":return 9;case"upper-alpha":return 10;case"arabic-indic":return 11;case"armenian":return 12;case"bengali":return 13;case"cambodian":return 14;case"cjk-earthly-branch":return 15;case"cjk-heavenly-stem":return 16;case"cjk-ideographic":return 17;case"devanagari":return 18;case"ethiopic-numeric":return 19;case"georgian":return 20;case"gujarati":return 21;case"gurmukhi":return 22;case"hebrew":return 22;case"hiragana":return 23;case"hiragana-iroha":return 24;case"japanese-formal":return 25;case"japanese-informal":return 26;case"kannada":return 27;case"katakana":return 28;case"katakana-iroha":return 29;case"khmer":return 30;case"korean-hangul-formal":return 31;case"korean-hanja-formal":return 32;case"korean-hanja-informal":return 33;case"lao":return 34;case"lower-armenian":return 35;case"malayalam":return 36;case"mongolian":return 37;case"myanmar":return 38;case"oriya":return 39;case"persian":return 40;case"simp-chinese-formal":return 41;case"simp-chinese-informal":return 42;case"tamil":return 43;case"telugu":return 44;case"thai":return 45;case"tibetan":return 46;case"trad-chinese-formal":return 47;case"trad-chinese-informal":return 48;case"upper-armenian":return 49;case"disclosure-open":return 50;case"disclosure-closed":return 51;case"none":default:return-1}}},jl=function(w){return{name:"margin-"+w,initialValue:"0",prefix:!1,type:4}},S0=jl("top"),M0=jl("right"),T0=jl("bottom"),F0=jl("left"),Yl={name:"overflow",initialValue:"visible",prefix:!1,type:1,parse:function(w,p){return p.filter($n).map(function(b){switch(b.value){case"hidden":return 1;case"scroll":return 2;case"clip":return 3;case"auto":return 4;case"visible":default:return 0}})}},Rs={name:"overflow-wrap",initialValue:"normal",prefix:!1,type:2,parse:function(w,p){switch(p){case"break-word":return"break-word";case"normal":default:return"normal"}}},Yo=function(w){return{name:"padding-"+w,initialValue:"0",prefix:!1,type:3,format:"length-percentage"}},af=Yo("top"),O0=Yo("right"),I0=Yo("bottom"),L0=Yo("left"),sf={name:"text-align",initialValue:"left",prefix:!1,type:2,parse:function(w,p){switch(p){case"right":return 2;case"center":case"justify":return 1;case"left":default:return 0}}},N0={name:"position",initialValue:"static",prefix:!1,type:2,parse:function(w,p){switch(p){case"relative":return 1;case"absolute":return 2;case"fixed":return 3;case"sticky":return 4}return 0}},k0={name:"text-shadow",initialValue:"none",type:1,prefix:!1,parse:function(w,p){return p.length===1&&Xh(p[0],"none")?[]:os(p).map(function(b){for(var B={color:Ds.TRANSPARENT,offsetX:di,offsetY:di,blur:di},G=0,Y=0;Y<b.length;Y++){var it=b[Y];Us(it)?(G===0?B.offsetX=it:G===1?B.offsetY=it:B.blur=it,G++):B.color=Ps.parse(w,it)}return B})}},of={name:"text-transform",initialValue:"none",prefix:!1,type:2,parse:function(w,p){switch(p){case"uppercase":return 2;case"lowercase":return 1;case"capitalize":return 3}return 0}},Q0={name:"transform",initialValue:"none",prefix:!0,type:0,parse:function(w,p){if(p.type===20&&p.value==="none")return null;if(p.type===18){var b=Jl[p.name];if(typeof b=="undefined")throw new Error('Attempting to parse an unsupported transform function "'+p.name+'"');return b(p.values)}return null}},Ni=function(w){var p=w.filter(function(b){return b.type===17}).map(function(b){return b.number});return p.length===6?p:null},Xl=function(w){var p=w.filter(function(ut){return ut.type===17}).map(function(ut){return ut.number}),b=p[0],B=p[1];p[2],p[3];var G=p[4],Y=p[5];p[6],p[7],p[8],p[9],p[10],p[11];var it=p[12],vt=p[13];return p[14],p[15],p.length===16?[b,B,G,Y,it,vt]:null},Jl={matrix:Ni,matrix3d:Xl},Af={type:16,number:50,flags:Bt},Xo=[Af,Af],U0={name:"transform-origin",initialValue:"50% 50%",prefix:!0,type:1,parse:function(w,p){var b=p.filter(Ur);return b.length!==2?Xo:[b[0],b[1]]}},lf={name:"visible",initialValue:"none",prefix:!1,type:2,parse:function(w,p){switch(p){case"hidden":return 1;case"collapse":return 2;case"visible":default:return 0}}},ZA;(function(w){w.NORMAL="normal",w.BREAK_ALL="break-all",w.KEEP_ALL="keep-all"})(ZA||(ZA={}));for(var P0={name:"word-break",initialValue:"normal",prefix:!1,type:2,parse:function(w,p){switch(p){case"break-all":return ZA.BREAK_ALL;case"keep-all":return ZA.KEEP_ALL;case"normal":default:return ZA.NORMAL}}},ql={name:"z-index",initialValue:"auto",prefix:!1,type:0,parse:function(w,p){if(p.type===20)return{auto:!0,order:0};if(RA(p))return{auto:!1,order:p.number};throw new Error("Invalid z-index number parsed")}},$l={name:"time",parse:function(w,p){if(p.type===15)switch(p.unit.toLowerCase()){case"s":return 1e3*p.number;case"ms":return p.number}throw new Error("Unsupported time type")}},D0={name:"opacity",initialValue:"1",type:0,prefix:!1,parse:function(w,p){return RA(p)?p.number:1}},cf={name:"text-decoration-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},R0={name:"text-decoration-line",initialValue:"none",prefix:!1,type:1,parse:function(w,p){return p.filter($n).map(function(b){switch(b.value){case"underline":return 1;case"overline":return 2;case"line-through":return 3;case"none":return 4}return 0}).filter(function(b){return b!==0})}},Bu={name:"font-family",initialValue:"",prefix:!1,type:1,parse:function(w,p){var b=[],B=[];return p.forEach(function(G){switch(G.type){case 20:case 0:b.push(G.value);break;case 17:b.push(G.number.toString());break;case 4:B.push(b.join(" ")),b.length=0;break}}),b.length&&B.push(b.join(" ")),B.map(function(G){return G.indexOf(" ")===-1?G:"'"+G+"'"})}},_0={name:"font-size",initialValue:"0",prefix:!1,type:3,format:"length"},H0={name:"font-weight",initialValue:"normal",type:0,prefix:!1,parse:function(w,p){if(RA(p))return p.number;if($n(p))switch(p.value){case"bold":return 700;case"normal":default:return 400}return 400}},uf={name:"font-variant",initialValue:"none",type:1,prefix:!1,parse:function(w,p){return p.filter($n).map(function(b){return b.value})}},hf={name:"font-style",initialValue:"normal",prefix:!1,type:2,parse:function(w,p){switch(p){case"oblique":return"oblique";case"italic":return"italic";case"normal":default:return"normal"}}},Pr=function(w,p){return(w&p)!==0},G0={name:"content",initialValue:"none",type:1,prefix:!1,parse:function(w,p){if(p.length===0)return[];var b=p[0];return b.type===20&&b.value==="none"?[]:p}},ff={name:"counter-increment",initialValue:"none",prefix:!0,type:1,parse:function(w,p){if(p.length===0)return null;var b=p[0];if(b.type===20&&b.value==="none")return null;for(var B=[],G=p.filter($v),Y=0;Y<G.length;Y++){var it=G[Y],vt=G[Y+1];if(it.type===20){var ut=vt&&RA(vt)?vt.number:1;B.push({counter:it.value,increment:ut})}}return B}},K0={name:"counter-reset",initialValue:"none",prefix:!0,type:1,parse:function(w,p){if(p.length===0)return[];for(var b=[],B=p.filter($v),G=0;G<B.length;G++){var Y=B[G],it=B[G+1];if($n(Y)&&Y.value!=="none"){var vt=it&&RA(it)?it.number:0;b.push({counter:Y.value,reset:vt})}}return b}},z0={name:"duration",initialValue:"0s",prefix:!1,type:1,parse:function(w,p){return p.filter(sa).map(function(b){return $l.parse(w,b)})}},V0={name:"quotes",initialValue:"none",prefix:!0,type:1,parse:function(w,p){if(p.length===0)return null;var b=p[0];if(b.type===20&&b.value==="none")return null;var B=[],G=p.filter(Qs);if(G.length%2!==0)return null;for(var Y=0;Y<G.length;Y+=2){var it=G[Y].value,vt=G[Y+1].value;B.push({open:it,close:vt})}return B}},df=function(w,p,b){if(!w)return"";var B=w[Math.min(p,w.length-1)];return B?b?B.open:B.close:""},W0={name:"box-shadow",initialValue:"none",type:1,prefix:!1,parse:function(w,p){return p.length===1&&Xh(p[0],"none")?[]:os(p).map(function(b){for(var B={color:255,offsetX:di,offsetY:di,blur:di,spread:di,inset:!1},G=0,Y=0;Y<b.length;Y++){var it=b[Y];Xh(it,"inset")?B.inset=!0:Us(it)?(G===0?B.offsetX=it:G===1?B.offsetY=it:G===2?B.blur=it:B.spread=it,G++):B.color=Ps.parse(w,it)}return B})}},Ye={name:"paint-order",initialValue:"normal",prefix:!1,type:1,parse:function(w,p){var b=[0,1,2],B=[];return p.filter($n).forEach(function(G){switch(G.value){case"stroke":B.push(1);break;case"fill":B.push(0);break;case"markers":B.push(2);break}}),b.forEach(function(G){B.indexOf(G)===-1&&B.push(G)}),B}},Z0={name:"-webkit-text-stroke-color",initialValue:"currentcolor",prefix:!1,type:3,format:"color"},j0={name:"-webkit-text-stroke-width",initialValue:"0",type:0,prefix:!1,parse:function(w,p){return sa(p)?p.number:0}},gf=function(){function w(p,b){var B,G;this.animationDuration=jt(p,z0,b.animationDuration),this.backgroundClip=jt(p,fw,b.backgroundClip),this.backgroundColor=jt(p,fu,b.backgroundColor),this.backgroundImage=jt(p,ww,b.backgroundImage),this.backgroundOrigin=jt(p,Ew,b.backgroundOrigin),this.backgroundPosition=jt(p,Bw,b.backgroundPosition),this.backgroundRepeat=jt(p,bw,b.backgroundRepeat),this.backgroundSize=jt(p,Cw,b.backgroundSize),this.borderTopColor=jt(p,Mw,b.borderTopColor),this.borderRightColor=jt(p,E0,b.borderRightColor),this.borderBottomColor=jt(p,Tw,b.borderBottomColor),this.borderLeftColor=jt(p,Fw,b.borderLeftColor),this.borderTopLeftRadius=jt(p,Ow,b.borderTopLeftRadius),this.borderTopRightRadius=jt(p,Iw,b.borderTopRightRadius),this.borderBottomRightRadius=jt(p,Lw,b.borderBottomRightRadius),this.borderBottomLeftRadius=jt(p,Nw,b.borderBottomLeftRadius),this.borderTopStyle=jt(p,kw,b.borderTopStyle),this.borderRightStyle=jt(p,we,b.borderRightStyle),this.borderBottomStyle=jt(p,Li,b.borderBottomStyle),this.borderLeftStyle=jt(p,Pe,b.borderLeftStyle),this.borderTopWidth=jt(p,B0,b.borderTopWidth),this.borderRightWidth=jt(p,hr,b.borderRightWidth),this.borderBottomWidth=jt(p,j,b.borderBottomWidth),this.borderLeftWidth=jt(p,WA,b.borderLeftWidth),this.boxShadow=jt(p,W0,b.boxShadow),this.color=jt(p,qh,b.color),this.direction=jt(p,$h,b.direction),this.display=jt(p,tf,b.display),this.float=jt(p,nf,b.cssFloat),this.fontFamily=jt(p,Bu,b.fontFamily),this.fontSize=jt(p,_0,b.fontSize),this.fontStyle=jt(p,hf,b.fontStyle),this.fontVariant=jt(p,uf,b.fontVariant),this.fontWeight=jt(p,H0,b.fontWeight),this.letterSpacing=jt(p,b0,b.letterSpacing),this.lineBreak=jt(p,jo,b.lineBreak),this.lineHeight=jt(p,x0,b.lineHeight),this.listStyleImage=jt(p,Zl,b.listStyleImage),this.listStylePosition=jt(p,C0,b.listStylePosition),this.listStyleType=jt(p,Eu,b.listStyleType),this.marginTop=jt(p,S0,b.marginTop),this.marginRight=jt(p,M0,b.marginRight),this.marginBottom=jt(p,T0,b.marginBottom),this.marginLeft=jt(p,F0,b.marginLeft),this.opacity=jt(p,D0,b.opacity);var Y=jt(p,Yl,b.overflow);this.overflowX=Y[0],this.overflowY=Y[Y.length>1?1:0],this.overflowWrap=jt(p,Rs,b.overflowWrap),this.paddingTop=jt(p,af,b.paddingTop),this.paddingRight=jt(p,O0,b.paddingRight),this.paddingBottom=jt(p,I0,b.paddingBottom),this.paddingLeft=jt(p,L0,b.paddingLeft),this.paintOrder=jt(p,Ye,b.paintOrder),this.position=jt(p,N0,b.position),this.textAlign=jt(p,sf,b.textAlign),this.textDecorationColor=jt(p,cf,(B=b.textDecorationColor)!==null&&B!==void 0?B:b.color),this.textDecorationLine=jt(p,R0,(G=b.textDecorationLine)!==null&&G!==void 0?G:b.textDecoration),this.textShadow=jt(p,k0,b.textShadow),this.textTransform=jt(p,of,b.textTransform),this.transform=jt(p,Q0,b.transform),this.transformOrigin=jt(p,U0,b.transformOrigin),this.visibility=jt(p,lf,b.visibility),this.webkitTextStrokeColor=jt(p,Z0,b.webkitTextStrokeColor),this.webkitTextStrokeWidth=jt(p,j0,b.webkitTextStrokeWidth),this.wordBreak=jt(p,P0,b.wordBreak),this.zIndex=jt(p,ql,b.zIndex)}return w.prototype.isVisible=function(){return this.display>0&&this.opacity>0&&this.visibility===0},w.prototype.isTransparent=function(){return vo(this.backgroundColor)},w.prototype.isTransformed=function(){return this.transform!==null},w.prototype.isPositioned=function(){return this.position!==0},w.prototype.isPositionedWithZIndex=function(){return this.isPositioned()&&!this.zIndex.auto},w.prototype.isFloating=function(){return this.float!==0},w.prototype.isInlineLevel=function(){return Pr(this.display,4)||Pr(this.display,33554432)||Pr(this.display,268435456)||Pr(this.display,536870912)||Pr(this.display,67108864)||Pr(this.display,134217728)},w}(),Y0=function(){function w(p,b){this.content=jt(p,G0,b.content),this.quotes=jt(p,V0,b.quotes)}return w}(),Jo=function(){function w(p,b){this.counterIncrement=jt(p,ff,b.counterIncrement),this.counterReset=jt(p,K0,b.counterReset)}return w}(),jt=function(w,p,b){var B=new Er,G=b!==null&&typeof b!="undefined"?b.toString():p.initialValue;B.write(G);var Y=new qv(B.read());switch(p.type){case 2:var it=Y.parseComponentValue();return p.parse(w,$n(it)?it.value:p.initialValue);case 0:return p.parse(w,Y.parseComponentValue());case 1:return p.parse(w,Y.parseComponentValues());case 4:return Y.parseComponentValue();case 3:switch(p.format){case"angle":return zA.parse(w,Y.parseComponentValue());case"color":return Ps.parse(w,Y.parseComponentValue());case"image":return pu.parse(w,Y.parseComponentValue());case"length":var vt=Y.parseComponentValue();return Us(vt)?vt:di;case"length-percentage":var ut=Y.parseComponentValue();return Ur(ut)?ut:di;case"time":return $l.parse(w,Y.parseComponentValue())}break}},Br="data-html2canvas-debug",X0=function(w){var p=w.getAttribute(Br);switch(p){case"all":return 1;case"clone":return 2;case"parse":return 3;case"render":return 4;default:return 0}},Ee=function(w,p){var b=X0(w);return b===1||p===b},Ba=function(){function w(p,b){if(this.context=p,this.textNodes=[],this.elements=[],this.flags=0,Ee(b,3))debugger;this.styles=new gf(p,window.getComputedStyle(b,null)),Uu(b)&&(this.styles.animationDuration.some(function(B){return B>0})&&(b.style.animationDuration="0s"),this.styles.transform!==null&&(b.style.transform="none")),this.bounds=k(this.context,b),Ee(b,4)&&(this.flags|=16)}return w}(),J0="AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=",tc="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",_s=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),ec=0;ec<tc.length;ec++)_s[tc.charCodeAt(ec)]=ec;for(var gi=function(w){var p=w.length*.75,b=w.length,B,G=0,Y,it,vt,ut;w[w.length-1]==="="&&(p--,w[w.length-2]==="="&&p--);var Ft=typeof ArrayBuffer!="undefined"&&typeof Uint8Array!="undefined"&&typeof Uint8Array.prototype.slice!="undefined"?new ArrayBuffer(p):new Array(p),It=Array.isArray(Ft)?Ft:new Uint8Array(Ft);for(B=0;B<b;B+=4)Y=_s[w.charCodeAt(B)],it=_s[w.charCodeAt(B+1)],vt=_s[w.charCodeAt(B+2)],ut=_s[w.charCodeAt(B+3)],It[G++]=Y<<2|it>>4,It[G++]=(it&15)<<4|vt>>2,It[G++]=(vt&3)<<6|ut&63;return Ft},nc=function(w){for(var p=w.length,b=[],B=0;B<p;B+=2)b.push(w[B+1]<<8|w[B]);return b},vf=function(w){for(var p=w.length,b=[],B=0;B<p;B+=4)b.push(w[B+3]<<24|w[B+2]<<16|w[B+1]<<8|w[B]);return b},Hs=5,bu=11,xu=2,q0=bu-Hs,pf=65536>>Hs,$0=1<<Hs,Cu=$0-1,tp=1024>>Hs,ep=pf+tp,mf=ep,yf=32,np=mf+yf,Qw=65536>>bu,Uw=1<<q0,rp=Uw-1,Su=function(w,p,b){return w.slice?w.slice(p,b):new Uint16Array(Array.prototype.slice.call(w,p,b))},ip=function(w,p,b){return w.slice?w.slice(p,b):new Uint32Array(Array.prototype.slice.call(w,p,b))},Pw=function(w,p){var b=gi(w),B=Array.isArray(b)?vf(b):new Uint32Array(b),G=Array.isArray(b)?nc(b):new Uint16Array(b),Y=24,it=Su(G,Y/2,B[4]/2),vt=B[5]===2?Su(G,(Y+B[4])/2):ip(B,Math.ceil((Y+B[4])/4));return new wf(B[0],B[1],B[2],B[3],it,vt)},wf=function(){function w(p,b,B,G,Y,it){this.initialValue=p,this.errorValue=b,this.highStart=B,this.highValueIndex=G,this.index=Y,this.data=it}return w.prototype.get=function(p){var b;if(p>=0){if(p<55296||p>56319&&p<=65535)return b=this.index[p>>Hs],b=(b<<xu)+(p&Cu),this.data[b];if(p<=65535)return b=this.index[pf+(p-55296>>Hs)],b=(b<<xu)+(p&Cu),this.data[b];if(p<this.highStart)return b=np-Qw+(p>>bu),b=this.index[b],b+=p>>Hs&rp,b=this.index[b],b=(b<<xu)+(p&Cu),this.data[b];if(p<=1114111)return this.data[this.highValueIndex]}return this.errorValue},w}(),ba="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",ap=typeof Uint8Array=="undefined"?[]:new Uint8Array(256),jA=0;jA<ba.length;jA++)ap[ba.charCodeAt(jA)]=jA;var Dw=1,As=2,rc=3,Mu=4,Ef=5,Tu=7,Bf=8,bf=9,Fu=10,Ou=11,sp=12,op=13,Iu=14,ic=15,xf=function(w){for(var p=[],b=0,B=w.length;b<B;){var G=w.charCodeAt(b++);if(G>=55296&&G<=56319&&b<B){var Y=w.charCodeAt(b++);(Y&64512)===56320?p.push(((G&1023)<<10)+(Y&1023)+65536):(p.push(G),b--)}else p.push(G)}return p},Cf=function(){for(var w=[],p=0;p<arguments.length;p++)w[p]=arguments[p];if(String.fromCodePoint)return String.fromCodePoint.apply(String,w);var b=w.length;if(!b)return"";for(var B=[],G=-1,Y="";++G<b;){var it=w[G];it<=65535?B.push(it):(it-=65536,B.push((it>>10)+55296,it%1024+56320)),(G+1===b||B.length>16384)&&(Y+=String.fromCharCode.apply(String,B),B.length=0)}return Y},Sf=Pw(J0),Aa="\xD7",Lu="\xF7",Rw=function(w){return Sf.get(w)},_w=function(w,p,b){var B=b-2,G=p[B],Y=p[b-1],it=p[b];if(Y===As&&it===rc)return Aa;if(Y===As||Y===rc||Y===Mu||it===As||it===rc||it===Mu)return Lu;if(Y===Bf&&[Bf,bf,Ou,sp].indexOf(it)!==-1||(Y===Ou||Y===bf)&&(it===bf||it===Fu)||(Y===sp||Y===Fu)&&it===Fu||it===op||it===Ef||it===Tu||Y===Dw)return Aa;if(Y===op&&it===Iu){for(;G===Ef;)G=p[--B];if(G===Iu)return Aa}if(Y===ic&&it===ic){for(var vt=0;G===ic;)vt++,G=p[--B];if(vt%2===0)return Aa}return Lu},Hw=function(w){var p=xf(w),b=p.length,B=0,G=0,Y=p.map(Rw);return{next:function(){if(B>=b)return{done:!0,value:null};for(var it=Aa;B<b&&(it=_w(p,Y,++B))===Aa;);if(it!==Aa||B===b){var vt=Cf.apply(null,p.slice(G,B));return G=B,{value:vt,done:!1}}return{done:!0,value:null}}}},ac=function(w){for(var p=Hw(w),b=[],B;!(B=p.next()).done;)B.value&&b.push(B.value.slice());return b},Gw=function(w){var p=123;if(w.createRange){var b=w.createRange();if(b.getBoundingClientRect){var B=w.createElement("boundtest");B.style.height=p+"px",B.style.display="block",w.body.appendChild(B),b.selectNode(B);var G=b.getBoundingClientRect(),Y=Math.round(G.height);if(w.body.removeChild(B),Y===p)return!0}}return!1},Kw=function(w){var p=w.createElement("boundtest");p.style.width="50px",p.style.display="block",p.style.fontSize="12px",p.style.letterSpacing="0px",p.style.wordSpacing="0px",w.body.appendChild(p);var b=w.createRange();p.innerHTML=typeof"".repeat=="function"?"👨".repeat(10):"";var B=p.firstChild,G=L(B.data).map(function(ut){return Q(ut)}),Y=0,it={},vt=G.every(function(ut,Ft){b.setStart(B,Y),b.setEnd(B,Y+ut.length);var It=b.getBoundingClientRect();Y+=ut.length;var _t=It.x>it.x||It.y>it.y;return it=It,Ft===0?!0:_t});return w.body.removeChild(p),vt},zw=function(){return typeof new Image().crossOrigin!="undefined"},Vw=function(){return typeof new XMLHttpRequest().responseType=="string"},Ww=function(w){var p=new Image,b=w.createElement("canvas"),B=b.getContext("2d");if(!B)return!1;p.src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";try{B.drawImage(p,0,0),b.toDataURL()}catch(G){return!1}return!0},qo=function(w){return w[0]===0&&w[1]===255&&w[2]===0&&w[3]===255},Mf=function(w){var p=w.createElement("canvas"),b=100;p.width=b,p.height=b;var B=p.getContext("2d");if(!B)return Promise.reject(!1);B.fillStyle="rgb(0, 255, 0)",B.fillRect(0,0,b,b);var G=new Image,Y=p.toDataURL();G.src=Y;var it=Nu(b,b,0,0,G);return B.fillStyle="red",B.fillRect(0,0,b,b),sc(it).then(function(vt){B.drawImage(vt,0,0);var ut=B.getImageData(0,0,b,b).data;B.fillStyle="red",B.fillRect(0,0,b,b);var Ft=w.createElement("div");return Ft.style.backgroundImage="url("+Y+")",Ft.style.height=b+"px",qo(ut)?sc(Nu(b,b,0,0,Ft)):Promise.reject(!1)}).then(function(vt){return B.drawImage(vt,0,0),qo(B.getImageData(0,0,b,b).data)}).catch(function(){return!1})},Nu=function(w,p,b,B,G){var Y="http://www.w3.org/2000/svg",it=document.createElementNS(Y,"svg"),vt=document.createElementNS(Y,"foreignObject");return it.setAttributeNS(null,"width",w.toString()),it.setAttributeNS(null,"height",p.toString()),vt.setAttributeNS(null,"width","100%"),vt.setAttributeNS(null,"height","100%"),vt.setAttributeNS(null,"x",b.toString()),vt.setAttributeNS(null,"y",B.toString()),vt.setAttributeNS(null,"externalResourcesRequired","true"),it.appendChild(vt),vt.appendChild(G),it},sc=function(w){return new Promise(function(p,b){var B=new Image;B.onload=function(){return p(B)},B.onerror=b,B.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(new XMLSerializer().serializeToString(w))})},ni={get SUPPORT_RANGE_BOUNDS(){var w=Gw(document);return Object.defineProperty(ni,"SUPPORT_RANGE_BOUNDS",{value:w}),w},get SUPPORT_WORD_BREAKING(){var w=ni.SUPPORT_RANGE_BOUNDS&&Kw(document);return Object.defineProperty(ni,"SUPPORT_WORD_BREAKING",{value:w}),w},get SUPPORT_SVG_DRAWING(){var w=Ww(document);return Object.defineProperty(ni,"SUPPORT_SVG_DRAWING",{value:w}),w},get SUPPORT_FOREIGNOBJECT_DRAWING(){var w=typeof Array.from=="function"&&typeof window.fetch=="function"?Mf(document):Promise.resolve(!1);return Object.defineProperty(ni,"SUPPORT_FOREIGNOBJECT_DRAWING",{value:w}),w},get SUPPORT_CORS_IMAGES(){var w=zw();return Object.defineProperty(ni,"SUPPORT_CORS_IMAGES",{value:w}),w},get SUPPORT_RESPONSE_TYPE(){var w=Vw();return Object.defineProperty(ni,"SUPPORT_RESPONSE_TYPE",{value:w}),w},get SUPPORT_CORS_XHR(){var w="withCredentials"in new XMLHttpRequest;return Object.defineProperty(ni,"SUPPORT_CORS_XHR",{value:w}),w},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){var w=!!(typeof Intl!="undefined"&&Intl.Segmenter);return Object.defineProperty(ni,"SUPPORT_NATIVE_TEXT_SEGMENTATION",{value:w}),w}},oc=function(){function w(p,b){this.text=p,this.bounds=b}return w}(),Ap=function(w,p,b,B){var G=Za(p,b),Y=[],it=0;return G.forEach(function(vt){if(b.textDecorationLine.length||vt.trim().length>0)if(ni.SUPPORT_RANGE_BOUNDS){var ut=ri(B,it,vt.length).getClientRects();if(ut.length>1){var Ft=Wa(vt),It=0;Ft.forEach(function(te){Y.push(new oc(te,O.fromDOMRectList(w,ri(B,It+it,te.length).getClientRects()))),It+=te.length})}else Y.push(new oc(vt,O.fromDOMRectList(w,ut)))}else{var _t=B.splitText(vt.length);Y.push(new oc(vt,lp(w,B))),B=_t}else ni.SUPPORT_RANGE_BOUNDS||(B=B.splitText(vt.length));it+=vt.length}),Y},lp=function(w,p){var b=p.ownerDocument;if(b){var B=b.createElement("html2canvaswrapper");B.appendChild(p.cloneNode(!0));var G=p.parentNode;if(G){G.replaceChild(B,p);var Y=k(w,B);return B.firstChild&&G.replaceChild(B.firstChild,B),Y}}return O.EMPTY},ri=function(w,p,b){var B=w.ownerDocument;if(!B)throw new Error("Node has no owner document");var G=B.createRange();return G.setStart(w,p),G.setEnd(w,p+b),G},Wa=function(w){if(ni.SUPPORT_NATIVE_TEXT_SEGMENTATION){var p=new Intl.Segmenter(void 0,{granularity:"grapheme"});return Array.from(p.segment(w)).map(function(b){return b.segment})}return ac(w)},Gs=function(w,p){if(ni.SUPPORT_NATIVE_TEXT_SEGMENTATION){var b=new Intl.Segmenter(void 0,{granularity:"word"});return Array.from(b.segment(w)).map(function(B){return B.segment})}return Ac(w,p)},Za=function(w,p){return p.letterSpacing!==0?Wa(w):Gs(w,p)},Zt=[32,160,4961,65792,65793,4153,4241],Ac=function(w,p){for(var b=dt(w,{lineBreak:p.lineBreak,wordBreak:p.overflowWrap==="break-word"?"break-word":p.wordBreak}),B=[],G,Y=function(){if(G.value){var it=G.value.slice(),vt=L(it),ut="";vt.forEach(function(Ft){Zt.indexOf(Ft)===-1?ut+=Q(Ft):(ut.length&&B.push(ut),B.push(Q(Ft)),ut="")}),ut.length&&B.push(ut)}};!(G=b.next()).done;)Y();return B},ls=function(){function w(p,b,B){this.text=cp(b.data,B.textTransform),this.textBounds=Ap(p,this.text,B,b)}return w}(),cp=function(w,p){switch(p){case 1:return w.toLowerCase();case 3:return w.replace(ku,$o);case 2:return w.toUpperCase();default:return w}},ku=/(^|\s|:|-|\(|\))([a-z])/g,$o=function(w,p,b){return w.length>0?p+b.toUpperCase():w},Tf=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this;return G.src=B.currentSrc||B.src,G.intrinsicWidth=B.naturalWidth,G.intrinsicHeight=B.naturalHeight,G.context.cache.addImage(G.src),G}return p}(Ba),Ff=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this;return G.canvas=B,G.intrinsicWidth=B.width,G.intrinsicHeight=B.height,G}return p}(Ba),Qu=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this,Y=new XMLSerializer,it=k(b,B);return B.setAttribute("width",it.width+"px"),B.setAttribute("height",it.height+"px"),G.svg="data:image/svg+xml,"+encodeURIComponent(Y.serializeToString(B)),G.intrinsicWidth=B.width.baseVal.value,G.intrinsicHeight=B.height.baseVal.value,G.context.cache.addImage(G.svg),G}return p}(Ba),lc=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this;return G.value=B.value,G}return p}(Ba),Yn=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this;return G.start=B.start,G.reversed=typeof B.reversed=="boolean"&&B.reversed===!0,G}return p}(Ba),up=[{type:15,flags:0,unit:"px",number:3}],tA=[{type:16,flags:0,number:50}],hp=function(w){return w.width>w.height?new O(w.left+(w.width-w.height)/2,w.top,w.height,w.height):w.width<w.height?new O(w.left,w.top+(w.height-w.width)/2,w.width,w.width):w},ii=function(w){var p=w.type===eA?new Array(w.value.length+1).join("\u2022"):w.value;return p.length===0?w.placeholder||"":p},cs="checkbox",On="radio",eA="password",Of=707406591,Ks=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this;switch(G.type=B.type.toLowerCase(),G.checked=B.checked,G.value=ii(B),(G.type===cs||G.type===On)&&(G.styles.backgroundColor=3739148031,G.styles.borderTopColor=G.styles.borderRightColor=G.styles.borderBottomColor=G.styles.borderLeftColor=2779096575,G.styles.borderTopWidth=G.styles.borderRightWidth=G.styles.borderBottomWidth=G.styles.borderLeftWidth=1,G.styles.borderTopStyle=G.styles.borderRightStyle=G.styles.borderBottomStyle=G.styles.borderLeftStyle=1,G.styles.backgroundClip=[0],G.styles.backgroundOrigin=[0],G.bounds=hp(G.bounds)),G.type){case cs:G.styles.borderTopRightRadius=G.styles.borderTopLeftRadius=G.styles.borderBottomRightRadius=G.styles.borderBottomLeftRadius=up;break;case On:G.styles.borderTopRightRadius=G.styles.borderTopLeftRadius=G.styles.borderBottomRightRadius=G.styles.borderBottomLeftRadius=tA;break}return G}return p}(Ba),cc=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this,Y=B.options[B.selectedIndex||0];return G.value=Y&&Y.text||"",G}return p}(Ba),vi=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this;return G.value=B.value,G}return p}(Ba),If=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this;G.src=B.src,G.width=parseInt(B.width,10)||0,G.height=parseInt(B.height,10)||0,G.backgroundColor=G.styles.backgroundColor;try{if(B.contentWindow&&B.contentWindow.document&&B.contentWindow.document.documentElement){G.tree=Lf(b,B.contentWindow.document.documentElement);var Y=B.contentWindow.document.documentElement?Vl(b,getComputedStyle(B.contentWindow.document.documentElement).backgroundColor):Ds.TRANSPARENT,it=B.contentWindow.document.body?Vl(b,getComputedStyle(B.contentWindow.document.body).backgroundColor):Ds.TRANSPARENT;G.backgroundColor=vo(Y)?vo(it)?G.styles.backgroundColor:it:Y}}catch(vt){}return G}return p}(Ba),Un=["OL","UL","MENU"],uc=function(w,p,b,B){for(var G=p.firstChild,Y=void 0;G;G=Y)if(Y=G.nextSibling,Nf(G)&&G.data.trim().length>0)b.textNodes.push(new ls(w,G,b.styles));else if(us(G))if(dc(G)&&G.assignedNodes)G.assignedNodes().forEach(function(vt){return uc(w,vt,b,B)});else{var it=Bi(w,G);it.styles.isVisible()&&(Zw(G,it,B)?it.flags|=4:jw(it.styles)&&(it.flags|=2),Un.indexOf(G.tagName)!==-1&&(it.flags|=8),b.elements.push(it),G.slot,G.shadowRoot?uc(w,G.shadowRoot,it,B):!rA(G)&&!xa(G)&&!In(G)&&uc(w,G,it,B))}},Bi=function(w,p){return fc(p)?new Tf(w,p):nA(p)?new Ff(w,p):xa(p)?new Qu(w,p):Pu(p)?new lc(w,p):fp(p)?new Yn(w,p):dp(p)?new Ks(w,p):In(p)?new cc(w,p):rA(p)?new vi(w,p):Qf(p)?new If(w,p):new Ba(w,p)},Lf=function(w,p){var b=Bi(w,p);return b.flags|=4,uc(w,p,b,b),b},Zw=function(w,p,b){return p.styles.isPositionedWithZIndex()||p.styles.opacity<1||p.styles.isTransformed()||qi(w)&&b.styles.isTransparent()},jw=function(w){return w.isPositioned()||w.isFloating()},Nf=function(w){return w.nodeType===Node.TEXT_NODE},us=function(w){return w.nodeType===Node.ELEMENT_NODE},Uu=function(w){return us(w)&&typeof w.style!="undefined"&&!hc(w)},hc=function(w){return typeof w.className=="object"},Pu=function(w){return w.tagName==="LI"},fp=function(w){return w.tagName==="OL"},dp=function(w){return w.tagName==="INPUT"},kf=function(w){return w.tagName==="HTML"},xa=function(w){return w.tagName==="svg"},qi=function(w){return w.tagName==="BODY"},nA=function(w){return w.tagName==="CANVAS"},Ve=function(w){return w.tagName==="VIDEO"},fc=function(w){return w.tagName==="IMG"},Qf=function(w){return w.tagName==="IFRAME"},Uf=function(w){return w.tagName==="STYLE"},gp=function(w){return w.tagName==="SCRIPT"},rA=function(w){return w.tagName==="TEXTAREA"},In=function(w){return w.tagName==="SELECT"},dc=function(w){return w.tagName==="SLOT"},$i=function(w){return w.tagName.indexOf("-")>0},Pf=function(){function w(){this.counters={}}return w.prototype.getCounterValue=function(p){var b=this.counters[p];return b&&b.length?b[b.length-1]:1},w.prototype.getCounterValues=function(p){var b=this.counters[p];return b||[]},w.prototype.pop=function(p){var b=this;p.forEach(function(B){return b.counters[B].pop()})},w.prototype.parse=function(p){var b=this,B=p.counterIncrement,G=p.counterReset,Y=!0;B!==null&&B.forEach(function(vt){var ut=b.counters[vt.counter];ut&&vt.increment!==0&&(Y=!1,ut.length||ut.push(1),ut[Math.max(0,ut.length-1)]+=vt.increment)});var it=[];return Y&&G.forEach(function(vt){var ut=b.counters[vt.counter];it.push(vt.counter),ut||(ut=b.counters[vt.counter]=[]),ut.push(vt.reset)}),it},w}(),Du={integers:[1e3,900,500,400,100,90,50,40,10,9,5,4,1],values:["M","CM","D","CD","C","XC","L","XL","X","IX","V","IV","I"]},Ru={integers:[9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u0554","\u0553","\u0552","\u0551","\u0550","\u054F","\u054E","\u054D","\u054C","\u054B","\u054A","\u0549","\u0548","\u0547","\u0546","\u0545","\u0544","\u0543","\u0542","\u0541","\u0540","\u053F","\u053E","\u053D","\u053C","\u053B","\u053A","\u0539","\u0538","\u0537","\u0536","\u0535","\u0534","\u0533","\u0532","\u0531"]},vp={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,400,300,200,100,90,80,70,60,50,40,30,20,19,18,17,16,15,10,9,8,7,6,5,4,3,2,1],values:["\u05D9\u05F3","\u05D8\u05F3","\u05D7\u05F3","\u05D6\u05F3","\u05D5\u05F3","\u05D4\u05F3","\u05D3\u05F3","\u05D2\u05F3","\u05D1\u05F3","\u05D0\u05F3","\u05EA","\u05E9","\u05E8","\u05E7","\u05E6","\u05E4","\u05E2","\u05E1","\u05E0","\u05DE","\u05DC","\u05DB","\u05D9\u05D8","\u05D9\u05D7","\u05D9\u05D6","\u05D8\u05D6","\u05D8\u05D5","\u05D9","\u05D8","\u05D7","\u05D6","\u05D5","\u05D4","\u05D3","\u05D2","\u05D1","\u05D0"]},gc={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:["\u10F5","\u10F0","\u10EF","\u10F4","\u10EE","\u10ED","\u10EC","\u10EB","\u10EA","\u10E9","\u10E8","\u10E7","\u10E6","\u10E5","\u10E4","\u10F3","\u10E2","\u10E1","\u10E0","\u10DF","\u10DE","\u10DD","\u10F2","\u10DC","\u10DB","\u10DA","\u10D9","\u10D8","\u10D7","\u10F1","\u10D6","\u10D5","\u10D4","\u10D3","\u10D2","\u10D1","\u10D0"]},iA=function(w,p,b,B,G,Y){return w<p||w>b?fs(w,G,Y.length>0):B.integers.reduce(function(it,vt,ut){for(;w>=vt;)w-=vt,it+=B.values[ut];return it},"")+Y},aA=function(w,p,b,B){var G="";do b||w--,G=B(w)+G,w/=p;while(w*p>=p);return G},br=function(w,p,b,B,G){var Y=b-p+1;return(w<0?"-":"")+(aA(Math.abs(w),Y,B,function(it){return Q(Math.floor(it%Y)+p)})+G)},zs=function(w,p,b){b===void 0&&(b=". ");var B=p.length;return aA(Math.abs(w),B,!1,function(G){return p[Math.floor(G%B)]})+b},sA=1,hs=2,le=4,mo=8,ja=function(w,p,b,B,G,Y){if(w<-9999||w>9999)return fs(w,4,G.length>0);var it=Math.abs(w),vt=G;if(it===0)return p[0]+vt;for(var ut=0;it>0&&ut<=4;ut++){var Ft=it%10;Ft===0&&Pr(Y,sA)&&vt!==""?vt=p[Ft]+vt:Ft>1||Ft===1&&ut===0||Ft===1&&ut===1&&Pr(Y,hs)||Ft===1&&ut===1&&Pr(Y,le)&&w>100||Ft===1&&ut>1&&Pr(Y,mo)?vt=p[Ft]+(ut>0?b[ut-1]:"")+vt:Ft===1&&ut>0&&(vt=b[ut-1]+vt),it=Math.floor(it/10)}return(w<0?B:"")+vt},oA="\u5341\u767E\u5343\u842C",AA="\u62FE\u4F70\u4EDF\u842C",YA="\u30DE\u30A4\u30CA\u30B9",Vs="\uB9C8\uC774\uB108\uC2A4",fs=function(w,p,b){var B=b?". ":"",G=b?"\u3001":"",Y=b?", ":"",it=b?" ":"";switch(p){case 0:return"\u2022"+it;case 1:return"\u25E6"+it;case 2:return"\u25FE"+it;case 5:var vt=br(w,48,57,!0,B);return vt.length<4?"0"+vt:vt;case 4:return zs(w,"\u3007\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D",G);case 6:return iA(w,1,3999,Du,3,B).toLowerCase();case 7:return iA(w,1,3999,Du,3,B);case 8:return br(w,945,969,!1,B);case 9:return br(w,97,122,!1,B);case 10:return br(w,65,90,!1,B);case 11:return br(w,1632,1641,!0,B);case 12:case 49:return iA(w,1,9999,Ru,3,B);case 35:return iA(w,1,9999,Ru,3,B).toLowerCase();case 13:return br(w,2534,2543,!0,B);case 14:case 30:return br(w,6112,6121,!0,B);case 15:return zs(w,"\u5B50\u4E11\u5BC5\u536F\u8FB0\u5DF3\u5348\u672A\u7533\u9149\u620C\u4EA5",G);case 16:return zs(w,"\u7532\u4E59\u4E19\u4E01\u620A\u5DF1\u5E9A\u8F9B\u58EC\u7678",G);case 17:case 48:return ja(w,"\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D",oA,"\u8CA0",G,hs|le|mo);case 47:return ja(w,"\u96F6\u58F9\u8CB3\u53C3\u8086\u4F0D\u9678\u67D2\u634C\u7396",AA,"\u8CA0",G,sA|hs|le|mo);case 42:return ja(w,"\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D",oA,"\u8D1F",G,hs|le|mo);case 41:return ja(w,"\u96F6\u58F9\u8D30\u53C1\u8086\u4F0D\u9646\u67D2\u634C\u7396",AA,"\u8D1F",G,sA|hs|le|mo);case 26:return ja(w,"\u3007\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D","\u5341\u767E\u5343\u4E07",YA,G,0);case 25:return ja(w,"\u96F6\u58F1\u5F10\u53C2\u56DB\u4F0D\u516D\u4E03\u516B\u4E5D","\u62FE\u767E\u5343\u4E07",YA,G,sA|hs|le);case 31:return ja(w,"\uC601\uC77C\uC774\uC0BC\uC0AC\uC624\uC721\uCE60\uD314\uAD6C","\uC2ED\uBC31\uCC9C\uB9CC",Vs,Y,sA|hs|le);case 33:return ja(w,"\u96F6\u4E00\u4E8C\u4E09\u56DB\u4E94\u516D\u4E03\u516B\u4E5D","\u5341\u767E\u5343\u842C",Vs,Y,0);case 32:return ja(w,"\u96F6\u58F9\u8CB3\u53C3\u56DB\u4E94\u516D\u4E03\u516B\u4E5D","\u62FE\u767E\u5343",Vs,Y,sA|hs|le);case 18:return br(w,2406,2415,!0,B);case 20:return iA(w,1,19999,gc,3,B);case 21:return br(w,2790,2799,!0,B);case 22:return br(w,2662,2671,!0,B);case 22:return iA(w,1,10999,vp,3,B);case 23:return zs(w,"\u3042\u3044\u3046\u3048\u304A\u304B\u304D\u304F\u3051\u3053\u3055\u3057\u3059\u305B\u305D\u305F\u3061\u3064\u3066\u3068\u306A\u306B\u306C\u306D\u306E\u306F\u3072\u3075\u3078\u307B\u307E\u307F\u3080\u3081\u3082\u3084\u3086\u3088\u3089\u308A\u308B\u308C\u308D\u308F\u3090\u3091\u3092\u3093");case 24:return zs(w,"\u3044\u308D\u306F\u306B\u307B\u3078\u3068\u3061\u308A\u306C\u308B\u3092\u308F\u304B\u3088\u305F\u308C\u305D\u3064\u306D\u306A\u3089\u3080\u3046\u3090\u306E\u304A\u304F\u3084\u307E\u3051\u3075\u3053\u3048\u3066\u3042\u3055\u304D\u3086\u3081\u307F\u3057\u3091\u3072\u3082\u305B\u3059");case 27:return br(w,3302,3311,!0,B);case 28:return zs(w,"\u30A2\u30A4\u30A6\u30A8\u30AA\u30AB\u30AD\u30AF\u30B1\u30B3\u30B5\u30B7\u30B9\u30BB\u30BD\u30BF\u30C1\u30C4\u30C6\u30C8\u30CA\u30CB\u30CC\u30CD\u30CE\u30CF\u30D2\u30D5\u30D8\u30DB\u30DE\u30DF\u30E0\u30E1\u30E2\u30E4\u30E6\u30E8\u30E9\u30EA\u30EB\u30EC\u30ED\u30EF\u30F0\u30F1\u30F2\u30F3",G);case 29:return zs(w,"\u30A4\u30ED\u30CF\u30CB\u30DB\u30D8\u30C8\u30C1\u30EA\u30CC\u30EB\u30F2\u30EF\u30AB\u30E8\u30BF\u30EC\u30BD\u30C4\u30CD\u30CA\u30E9\u30E0\u30A6\u30F0\u30CE\u30AA\u30AF\u30E4\u30DE\u30B1\u30D5\u30B3\u30A8\u30C6\u30A2\u30B5\u30AD\u30E6\u30E1\u30DF\u30B7\u30F1\u30D2\u30E2\u30BB\u30B9",G);case 34:return br(w,3792,3801,!0,B);case 37:return br(w,6160,6169,!0,B);case 38:return br(w,4160,4169,!0,B);case 39:return br(w,2918,2927,!0,B);case 40:return br(w,1776,1785,!0,B);case 43:return br(w,3046,3055,!0,B);case 44:return br(w,3174,3183,!0,B);case 45:return br(w,3664,3673,!0,B);case 46:return br(w,3872,3881,!0,B);case 3:default:return br(w,48,57,!0,B)}},Ca="data-html2canvas-ignore",Df=function(){function w(p,b,B){if(this.context=p,this.options=B,this.scrolledElements=[],this.referenceElement=b,this.counters=new Pf,this.quoteDepth=0,!b.ownerDocument)throw new Error("Cloned element does not have an owner document");this.documentElement=this.cloneNode(b.ownerDocument.documentElement,!1)}return w.prototype.toIFrame=function(p,b){var B=this,G=pp(p,b);if(!G.contentWindow)return Promise.reject("Unable to find iframe window");var Y=p.defaultView.pageXOffset,it=p.defaultView.pageYOffset,vt=G.contentWindow,ut=vt.document,Ft=wp(G).then(function(){return z(B,void 0,void 0,function(){var It,_t;return D(this,function(te){switch(te.label){case 0:return this.scrolledElements.forEach(bp),vt&&(vt.scrollTo(b.left,b.top),/(iPad|iPhone|iPod)/g.test(navigator.userAgent)&&(vt.scrollY!==b.top||vt.scrollX!==b.left)&&(this.context.logger.warn("Unable to restore scroll position for cloned document"),this.context.windowBounds=this.context.windowBounds.add(vt.scrollX-b.left,vt.scrollY-b.top,0,0))),It=this.options.onclone,_t=this.clonedReferenceElement,typeof _t=="undefined"?[2,Promise.reject("Error finding the "+this.referenceElement.nodeName+" in the cloned document")]:ut.fonts&&ut.fonts.ready?[4,ut.fonts.ready]:[3,2];case 1:te.sent(),te.label=2;case 2:return/(AppleWebKit)/g.test(navigator.userAgent)?[4,yp(ut)]:[3,4];case 3:te.sent(),te.label=4;case 4:return typeof It=="function"?[2,Promise.resolve().then(function(){return It(ut,_t)}).then(function(){return G})]:[2,G]}})})});return ut.open(),ut.write(Rf(document.doctype)+"<html></html>"),Bp(this.referenceElement.ownerDocument,Y,it),ut.replaceChild(ut.adoptNode(this.documentElement),ut.documentElement),ut.close(),Ft},w.prototype.createElementClone=function(p){if(Ee(p,2))debugger;if(nA(p))return this.createCanvasClone(p);if(Ve(p))return this.createVideoClone(p);if(Uf(p))return this.createStyleClone(p);var b=p.cloneNode(!1);return fc(b)&&(fc(p)&&p.currentSrc&&p.currentSrc!==p.src&&(b.src=p.currentSrc,b.srcset=""),b.loading==="lazy"&&(b.loading="eager")),$i(b)?this.createCustomElementClone(b):b},w.prototype.createCustomElementClone=function(p){var b=document.createElement("html2canvascustomelement");return vc(p.style,b),b},w.prototype.createStyleClone=function(p){try{var b=p.sheet;if(b&&b.cssRules){var B=[].slice.call(b.cssRules,0).reduce(function(Y,it){return it&&typeof it.cssText=="string"?Y+it.cssText:Y},""),G=p.cloneNode(!1);return G.textContent=B,G}}catch(Y){if(this.context.logger.error("Unable to access cssRules property",Y),Y.name!=="SecurityError")throw Y}return p.cloneNode(!1)},w.prototype.createCanvasClone=function(p){var b;if(this.options.inlineImages&&p.ownerDocument){var B=p.ownerDocument.createElement("img");try{return B.src=p.toDataURL(),B}catch(Ft){this.context.logger.info("Unable to inline canvas contents, canvas is tainted",p)}}var G=p.cloneNode(!1);try{G.width=p.width,G.height=p.height;var Y=p.getContext("2d"),it=G.getContext("2d");if(it)if(!this.options.allowTaint&&Y)it.putImageData(Y.getImageData(0,0,p.width,p.height),0,0);else{var vt=(b=p.getContext("webgl2"))!==null&&b!==void 0?b:p.getContext("webgl");if(vt){var ut=vt.getContextAttributes();(ut==null?void 0:ut.preserveDrawingBuffer)===!1&&this.context.logger.warn("Unable to clone WebGL context as it has preserveDrawingBuffer=false",p)}it.drawImage(p,0,0)}return G}catch(Ft){this.context.logger.info("Unable to clone canvas as it is tainted",p)}return G},w.prototype.createVideoClone=function(p){var b=p.ownerDocument.createElement("canvas");b.width=p.offsetWidth,b.height=p.offsetHeight;var B=b.getContext("2d");try{return B&&(B.drawImage(p,0,0,b.width,b.height),this.options.allowTaint||B.getImageData(0,0,b.width,b.height)),b}catch(Y){this.context.logger.info("Unable to clone video as it is tainted",p)}var G=p.ownerDocument.createElement("canvas");return G.width=p.offsetWidth,G.height=p.offsetHeight,G},w.prototype.appendChildNode=function(p,b,B){(!us(b)||!gp(b)&&!b.hasAttribute(Ca)&&(typeof this.options.ignoreElements!="function"||!this.options.ignoreElements(b)))&&(!this.options.copyStyles||!us(b)||!Uf(b))&&p.appendChild(this.cloneNode(b,B))},w.prototype.cloneChildNodes=function(p,b,B){for(var G=this,Y=p.shadowRoot?p.shadowRoot.firstChild:p.firstChild;Y;Y=Y.nextSibling)if(us(Y)&&dc(Y)&&typeof Y.assignedNodes=="function"){var it=Y.assignedNodes();it.length&&it.forEach(function(vt){return G.appendChildNode(b,vt,B)})}else this.appendChildNode(b,Y,B)},w.prototype.cloneNode=function(p,b){if(Nf(p))return document.createTextNode(p.data);if(!p.ownerDocument)return p.cloneNode(!1);var B=p.ownerDocument.defaultView;if(B&&us(p)&&(Uu(p)||hc(p))){var G=this.createElementClone(p);G.style.transitionProperty="none";var Y=B.getComputedStyle(p),it=B.getComputedStyle(p,":before"),vt=B.getComputedStyle(p,":after");this.referenceElement===p&&Uu(G)&&(this.clonedReferenceElement=G),qi(G)&&xp(G);var ut=this.counters.parse(new Jo(this.context,Y)),Ft=this.resolvePseudoContent(p,G,it,XA.BEFORE);$i(p)&&(b=!0),Ve(p)||this.cloneChildNodes(p,G,b),Ft&&G.insertBefore(Ft,G.firstChild);var It=this.resolvePseudoContent(p,G,vt,XA.AFTER);return It&&G.appendChild(It),this.counters.pop(ut),(Y&&(this.options.copyStyles||hc(p))&&!Qf(p)||b)&&vc(Y,G),(p.scrollTop!==0||p.scrollLeft!==0)&&this.scrolledElements.push([G,p.scrollLeft,p.scrollTop]),(rA(p)||In(p))&&(rA(G)||In(G))&&(G.value=p.value),G}return p.cloneNode(!1)},w.prototype.resolvePseudoContent=function(p,b,B,G){var Y=this;if(B){var it=B.content,vt=b.ownerDocument;if(!(!vt||!it||it==="none"||it==="-moz-alt-content"||B.display==="none")){this.counters.parse(new Jo(this.context,B));var ut=new Y0(this.context,B),Ft=vt.createElement("html2canvaspseudoelement");vc(B,Ft),ut.content.forEach(function(_t){if(_t.type===0)Ft.appendChild(vt.createTextNode(_t.value));else if(_t.type===22){var te=vt.createElement("img");te.src=_t.value,te.style.opacity="1",Ft.appendChild(te)}else if(_t.type===18){if(_t.name==="attr"){var Oe=_t.values.filter($n);Oe.length&&Ft.appendChild(vt.createTextNode(p.getAttribute(Oe[0].value)||""))}else if(_t.name==="counter"){var ge=_t.values.filter(_A),be=ge[0],sn=ge[1];if(be&&$n(be)){var Ue=Y.counters.getCounterValue(be.value),Ne=sn&&$n(sn)?Eu.parse(Y.context,sn.value):3;Ft.appendChild(vt.createTextNode(fs(Ue,Ne,!1)))}}else if(_t.name==="counters"){var Mn=_t.values.filter(_A),be=Mn[0],ln=Mn[1],sn=Mn[2];if(be&&$n(be)){var Xe=Y.counters.getCounterValues(be.value),Fe=sn&&$n(sn)?Eu.parse(Y.context,sn.value):3,bn=ln&&ln.type===0?ln.value:"",xn=Xe.map(function(ai){return fs(ai,Fe,!1)}).join(bn);Ft.appendChild(vt.createTextNode(xn))}}}else if(_t.type===20)switch(_t.value){case"open-quote":Ft.appendChild(vt.createTextNode(df(ut.quotes,Y.quoteDepth++,!0)));break;case"close-quote":Ft.appendChild(vt.createTextNode(df(ut.quotes,--Y.quoteDepth,!1)));break;default:Ft.appendChild(vt.createTextNode(_t.value))}}),Ft.className=mc+" "+lA;var It=G===XA.BEFORE?" "+mc:" "+lA;return hc(b)?b.className.baseValue+=It:b.className+=It,Ft}}},w.destroy=function(p){return p.parentNode?(p.parentNode.removeChild(p),!0):!1},w}(),XA;(function(w){w[w.BEFORE=0]="BEFORE",w[w.AFTER=1]="AFTER"})(XA||(XA={}));var pp=function(w,p){var b=w.createElement("iframe");return b.className="html2canvas-container",b.style.visibility="hidden",b.style.position="fixed",b.style.left="-10000px",b.style.top="0px",b.style.border="0",b.width=p.width.toString(),b.height=p.height.toString(),b.scrolling="no",b.setAttribute(Ca,"true"),w.body.appendChild(b),b},mp=function(w){return new Promise(function(p){if(w.complete){p();return}if(!w.src){p();return}w.onload=p,w.onerror=p})},yp=function(w){return Promise.all([].slice.call(w.images,0).map(mp))},wp=function(w){return new Promise(function(p,b){var B=w.contentWindow;if(!B)return b("No window assigned for iframe");var G=B.document;B.onload=w.onload=function(){B.onload=w.onload=null;var Y=setInterval(function(){G.body.childNodes.length>0&&G.readyState==="complete"&&(clearInterval(Y),p(w))},50)}})},Ep=["all","d","content"],vc=function(w,p){for(var b=w.length-1;b>=0;b--){var B=w.item(b);Ep.indexOf(B)===-1&&p.style.setProperty(B,w.getPropertyValue(B))}return p},Rf=function(w){var p="";return w&&(p+="<!DOCTYPE ",w.name&&(p+=w.name),w.internalSubset&&(p+=w.internalSubset),w.publicId&&(p+='"'+w.publicId+'"'),w.systemId&&(p+='"'+w.systemId+'"'),p+=">"),p},Bp=function(w,p,b){w&&w.defaultView&&(p!==w.defaultView.pageXOffset||b!==w.defaultView.pageYOffset)&&w.defaultView.scrollTo(p,b)},bp=function(w){var p=w[0],b=w[1],B=w[2];p.scrollLeft=b,p.scrollTop=B},_f=":before",pc=":after",mc="___html2canvas___pseudoelement_before",lA="___html2canvas___pseudoelement_after",Hf=`{
|
|
|
content: "" !important;
|
|
|
display: none !important;
|
|
|
}`,xp=function(w){ki(w,"."+mc+_f+Hf+`
|
|
|
.`+lA+pc+Hf)},ki=function(w,p){var b=w.ownerDocument;if(b){var B=b.createElement("style");B.textContent=p,w.appendChild(B)}},_u=function(){function w(){}return w.getOrigin=function(p){var b=w._link;return b?(b.href=p,b.href=b.href,b.protocol+b.hostname+b.port):"about:blank"},w.isSameOrigin=function(p){return w.getOrigin(p)===w._origin},w.setContext=function(p){w._link=p.document.createElement("a"),w._origin=w.getOrigin(p.location.href)},w._origin="about:blank",w}(),Cp=function(){function w(p,b){this.context=p,this._options=b,this._cache={}}return w.prototype.addImage=function(p){var b=Promise.resolve();return this.has(p)||(Hu(p)||wo(p))&&(this._cache[p]=this.loadImage(p)).catch(function(){}),b},w.prototype.match=function(p){return this._cache[p]},w.prototype.loadImage=function(p){return z(this,void 0,void 0,function(){var b,B,G,Y,it=this;return D(this,function(vt){switch(vt.label){case 0:return b=_u.isSameOrigin(p),B=!wc(p)&&this._options.useCORS===!0&&ni.SUPPORT_CORS_IMAGES&&!b,G=!wc(p)&&!b&&!Hu(p)&&typeof this._options.proxy=="string"&&ni.SUPPORT_CORS_XHR&&!B,!b&&this._options.allowTaint===!1&&!wc(p)&&!Hu(p)&&!G&&!B?[2]:(Y=p,G?[4,this.proxy(Y)]:[3,2]);case 1:Y=vt.sent(),vt.label=2;case 2:return this.context.logger.debug("Added image "+p.substring(0,256)),[4,new Promise(function(ut,Ft){var It=new Image;It.onload=function(){return ut(It)},It.onerror=Ft,(Kf(Y)||B)&&(It.crossOrigin="anonymous"),It.src=Y,It.complete===!0&&setTimeout(function(){return ut(It)},500),it._options.imageTimeout>0&&setTimeout(function(){return Ft("Timed out ("+it._options.imageTimeout+"ms) loading image")},it._options.imageTimeout)})];case 3:return[2,vt.sent()]}})})},w.prototype.has=function(p){return typeof this._cache[p]!="undefined"},w.prototype.keys=function(){return Promise.resolve(Object.keys(this._cache))},w.prototype.proxy=function(p){var b=this,B=this._options.proxy;if(!B)throw new Error("No proxy defined");var G=p.substring(0,256);return new Promise(function(Y,it){var vt=ni.SUPPORT_RESPONSE_TYPE?"blob":"text",ut=new XMLHttpRequest;ut.onload=function(){if(ut.status===200)if(vt==="text")Y(ut.response);else{var _t=new FileReader;_t.addEventListener("load",function(){return Y(_t.result)},!1),_t.addEventListener("error",function(te){return it(te)},!1),_t.readAsDataURL(ut.response)}else it("Failed to proxy resource "+G+" with status code "+ut.status)},ut.onerror=it;var Ft=B.indexOf("?")>-1?"&":"?";if(ut.open("GET",""+B+Ft+"url="+encodeURIComponent(p)+"&responseType="+vt),vt!=="text"&&ut instanceof XMLHttpRequest&&(ut.responseType=vt),b._options.imageTimeout){var It=b._options.imageTimeout;ut.timeout=It,ut.ontimeout=function(){return it("Timed out ("+It+"ms) proxying "+G)}}ut.send()})},w}(),Gf=/^data:image\/svg\+xml/i,yc=/^data:image\/.*;base64,/i,yo=/^data:image\/.*/i,wo=function(w){return ni.SUPPORT_SVG_DRAWING||!Sa(w)},wc=function(w){return yo.test(w)},Kf=function(w){return yc.test(w)},Hu=function(w){return w.substr(0,4)==="blob"},Sa=function(w){return w.substr(-3).toLowerCase()==="svg"||Gf.test(w)},Me=function(){function w(p,b){this.type=0,this.x=p,this.y=b}return w.prototype.add=function(p,b){return new w(this.x+p,this.y+b)},w}(),ds=function(w,p,b){return new Me(w.x+(p.x-w.x)*b,w.y+(p.y-w.y)*b)},cA=function(){function w(p,b,B,G){this.type=1,this.start=p,this.startControl=b,this.endControl=B,this.end=G}return w.prototype.subdivide=function(p,b){var B=ds(this.start,this.startControl,p),G=ds(this.startControl,this.endControl,p),Y=ds(this.endControl,this.end,p),it=ds(B,G,p),vt=ds(G,Y,p),ut=ds(it,vt,p);return b?new w(this.start,B,it,ut):new w(ut,vt,Y,this.end)},w.prototype.add=function(p,b){return new w(this.start.add(p,b),this.startControl.add(p,b),this.endControl.add(p,b),this.end.add(p,b))},w.prototype.reverse=function(){return new w(this.end,this.endControl,this.startControl,this.start)},w}(),Ln=function(w){return w.type===1},ve=function(){function w(p){var b=p.styles,B=p.bounds,G=GA(b.borderTopLeftRadius,B.width,B.height),Y=G[0],it=G[1],vt=GA(b.borderTopRightRadius,B.width,B.height),ut=vt[0],Ft=vt[1],It=GA(b.borderBottomRightRadius,B.width,B.height),_t=It[0],te=It[1],Oe=GA(b.borderBottomLeftRadius,B.width,B.height),ge=Oe[0],be=Oe[1],sn=[];sn.push((Y+ut)/B.width),sn.push((ge+_t)/B.width),sn.push((it+be)/B.height),sn.push((Ft+te)/B.height);var Ue=Math.max.apply(Math,sn);Ue>1&&(Y/=Ue,it/=Ue,ut/=Ue,Ft/=Ue,_t/=Ue,te/=Ue,ge/=Ue,be/=Ue);var Ne=B.width-ut,Mn=B.height-te,ln=B.width-_t,Xe=B.height-be,Fe=b.borderTopWidth,bn=b.borderRightWidth,xn=b.borderBottomWidth,Ze=b.borderLeftWidth,Or=Kn(b.paddingTop,p.bounds.width),ai=Kn(b.paddingRight,p.bounds.width),Ui=Kn(b.paddingBottom,p.bounds.width),zn=Kn(b.paddingLeft,p.bounds.width);this.topLeftBorderDoubleOuterBox=Y>0||it>0?Ar(B.left+Ze/3,B.top+Fe/3,Y-Ze/3,it-Fe/3,hn.TOP_LEFT):new Me(B.left+Ze/3,B.top+Fe/3),this.topRightBorderDoubleOuterBox=Y>0||it>0?Ar(B.left+Ne,B.top+Fe/3,ut-bn/3,Ft-Fe/3,hn.TOP_RIGHT):new Me(B.left+B.width-bn/3,B.top+Fe/3),this.bottomRightBorderDoubleOuterBox=_t>0||te>0?Ar(B.left+ln,B.top+Mn,_t-bn/3,te-xn/3,hn.BOTTOM_RIGHT):new Me(B.left+B.width-bn/3,B.top+B.height-xn/3),this.bottomLeftBorderDoubleOuterBox=ge>0||be>0?Ar(B.left+Ze/3,B.top+Xe,ge-Ze/3,be-xn/3,hn.BOTTOM_LEFT):new Me(B.left+Ze/3,B.top+B.height-xn/3),this.topLeftBorderDoubleInnerBox=Y>0||it>0?Ar(B.left+Ze*2/3,B.top+Fe*2/3,Y-Ze*2/3,it-Fe*2/3,hn.TOP_LEFT):new Me(B.left+Ze*2/3,B.top+Fe*2/3),this.topRightBorderDoubleInnerBox=Y>0||it>0?Ar(B.left+Ne,B.top+Fe*2/3,ut-bn*2/3,Ft-Fe*2/3,hn.TOP_RIGHT):new Me(B.left+B.width-bn*2/3,B.top+Fe*2/3),this.bottomRightBorderDoubleInnerBox=_t>0||te>0?Ar(B.left+ln,B.top+Mn,_t-bn*2/3,te-xn*2/3,hn.BOTTOM_RIGHT):new Me(B.left+B.width-bn*2/3,B.top+B.height-xn*2/3),this.bottomLeftBorderDoubleInnerBox=ge>0||be>0?Ar(B.left+Ze*2/3,B.top+Xe,ge-Ze*2/3,be-xn*2/3,hn.BOTTOM_LEFT):new Me(B.left+Ze*2/3,B.top+B.height-xn*2/3),this.topLeftBorderStroke=Y>0||it>0?Ar(B.left+Ze/2,B.top+Fe/2,Y-Ze/2,it-Fe/2,hn.TOP_LEFT):new Me(B.left+Ze/2,B.top+Fe/2),this.topRightBorderStroke=Y>0||it>0?Ar(B.left+Ne,B.top+Fe/2,ut-bn/2,Ft-Fe/2,hn.TOP_RIGHT):new Me(B.left+B.width-bn/2,B.top+Fe/2),this.bottomRightBorderStroke=_t>0||te>0?Ar(B.left+ln,B.top+Mn,_t-bn/2,te-xn/2,hn.BOTTOM_RIGHT):new Me(B.left+B.width-bn/2,B.top+B.height-xn/2),this.bottomLeftBorderStroke=ge>0||be>0?Ar(B.left+Ze/2,B.top+Xe,ge-Ze/2,be-xn/2,hn.BOTTOM_LEFT):new Me(B.left+Ze/2,B.top+B.height-xn/2),this.topLeftBorderBox=Y>0||it>0?Ar(B.left,B.top,Y,it,hn.TOP_LEFT):new Me(B.left,B.top),this.topRightBorderBox=ut>0||Ft>0?Ar(B.left+Ne,B.top,ut,Ft,hn.TOP_RIGHT):new Me(B.left+B.width,B.top),this.bottomRightBorderBox=_t>0||te>0?Ar(B.left+ln,B.top+Mn,_t,te,hn.BOTTOM_RIGHT):new Me(B.left+B.width,B.top+B.height),this.bottomLeftBorderBox=ge>0||be>0?Ar(B.left,B.top+Xe,ge,be,hn.BOTTOM_LEFT):new Me(B.left,B.top+B.height),this.topLeftPaddingBox=Y>0||it>0?Ar(B.left+Ze,B.top+Fe,Math.max(0,Y-Ze),Math.max(0,it-Fe),hn.TOP_LEFT):new Me(B.left+Ze,B.top+Fe),this.topRightPaddingBox=ut>0||Ft>0?Ar(B.left+Math.min(Ne,B.width-bn),B.top+Fe,Ne>B.width+bn?0:Math.max(0,ut-bn),Math.max(0,Ft-Fe),hn.TOP_RIGHT):new Me(B.left+B.width-bn,B.top+Fe),this.bottomRightPaddingBox=_t>0||te>0?Ar(B.left+Math.min(ln,B.width-Ze),B.top+Math.min(Mn,B.height-xn),Math.max(0,_t-bn),Math.max(0,te-xn),hn.BOTTOM_RIGHT):new Me(B.left+B.width-bn,B.top+B.height-xn),this.bottomLeftPaddingBox=ge>0||be>0?Ar(B.left+Ze,B.top+Math.min(Xe,B.height-xn),Math.max(0,ge-Ze),Math.max(0,be-xn),hn.BOTTOM_LEFT):new Me(B.left+Ze,B.top+B.height-xn),this.topLeftContentBox=Y>0||it>0?Ar(B.left+Ze+zn,B.top+Fe+Or,Math.max(0,Y-(Ze+zn)),Math.max(0,it-(Fe+Or)),hn.TOP_LEFT):new Me(B.left+Ze+zn,B.top+Fe+Or),this.topRightContentBox=ut>0||Ft>0?Ar(B.left+Math.min(Ne,B.width+Ze+zn),B.top+Fe+Or,Ne>B.width+Ze+zn?0:ut-Ze+zn,Ft-(Fe+Or),hn.TOP_RIGHT):new Me(B.left+B.width-(bn+ai),B.top+Fe+Or),this.bottomRightContentBox=_t>0||te>0?Ar(B.left+Math.min(ln,B.width-(Ze+zn)),B.top+Math.min(Mn,B.height+Fe+Or),Math.max(0,_t-(bn+ai)),te-(xn+Ui),hn.BOTTOM_RIGHT):new Me(B.left+B.width-(bn+ai),B.top+B.height-(xn+Ui)),this.bottomLeftContentBox=ge>0||be>0?Ar(B.left+Ze+zn,B.top+Xe,Math.max(0,ge-(Ze+zn)),be-(xn+Ui),hn.BOTTOM_LEFT):new Me(B.left+Ze+zn,B.top+B.height-(xn+Ui))}return w}(),hn;(function(w){w[w.TOP_LEFT=0]="TOP_LEFT",w[w.TOP_RIGHT=1]="TOP_RIGHT",w[w.BOTTOM_RIGHT=2]="BOTTOM_RIGHT",w[w.BOTTOM_LEFT=3]="BOTTOM_LEFT"})(hn||(hn={}));var Ar=function(w,p,b,B,G){var Y=4*((Math.sqrt(2)-1)/3),it=b*Y,vt=B*Y,ut=w+b,Ft=p+B;switch(G){case hn.TOP_LEFT:return new cA(new Me(w,Ft),new Me(w,Ft-vt),new Me(ut-it,p),new Me(ut,p));case hn.TOP_RIGHT:return new cA(new Me(w,p),new Me(w+it,p),new Me(ut,Ft-vt),new Me(ut,Ft));case hn.BOTTOM_RIGHT:return new cA(new Me(ut,p),new Me(ut,p+vt),new Me(w+it,Ft),new Me(w,Ft));case hn.BOTTOM_LEFT:default:return new cA(new Me(ut,Ft),new Me(ut-it,Ft),new Me(w,p+vt),new Me(w,p))}},Ec=function(w){return[w.topLeftBorderBox,w.topRightBorderBox,w.bottomRightBorderBox,w.bottomLeftBorderBox]},Sp=function(w){return[w.topLeftContentBox,w.topRightContentBox,w.bottomRightContentBox,w.bottomLeftContentBox]},gs=function(w){return[w.topLeftPaddingBox,w.topRightPaddingBox,w.bottomRightPaddingBox,w.bottomLeftPaddingBox]},Mp=function(){function w(p,b,B){this.offsetX=p,this.offsetY=b,this.matrix=B,this.type=0,this.target=6}return w}(),Bc=function(){function w(p,b){this.path=p,this.target=b,this.type=1}return w}(),Tp=function(){function w(p){this.opacity=p,this.type=2,this.target=6}return w}(),Fp=function(w){return w.type===0},Gu=function(w){return w.type===1},Ku=function(w){return w.type===2},JA=function(w,p){return w.length===p.length?w.some(function(b,B){return b===p[B]}):!1},Op=function(w,p,b,B,G){return w.map(function(Y,it){switch(it){case 0:return Y.add(p,b);case 1:return Y.add(p+B,b);case 2:return Y.add(p+B,b+G);case 3:return Y.add(p,b+G)}return Y})},vs=function(){function w(p){this.element=p,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}return w}(),qA=function(){function w(p,b){if(this.container=p,this.parent=b,this.effects=[],this.curves=new ve(this.container),this.container.styles.opacity<1&&this.effects.push(new Tp(this.container.styles.opacity)),this.container.styles.transform!==null){var B=this.container.bounds.left+this.container.styles.transformOrigin[0].number,G=this.container.bounds.top+this.container.styles.transformOrigin[1].number,Y=this.container.styles.transform;this.effects.push(new Mp(B,G,Y))}if(this.container.styles.overflowX!==0){var it=Ec(this.curves),vt=gs(this.curves);JA(it,vt)?this.effects.push(new Bc(it,6)):(this.effects.push(new Bc(it,2)),this.effects.push(new Bc(vt,4)))}}return w.prototype.getEffects=function(p){for(var b=[2,3].indexOf(this.container.styles.position)===-1,B=this.parent,G=this.effects.slice(0);B;){var Y=B.effects.filter(function(ut){return!Gu(ut)});if(b||B.container.styles.position!==0||!B.parent){if(G.unshift.apply(G,Y),b=[2,3].indexOf(B.container.styles.position)===-1,B.container.styles.overflowX!==0){var it=Ec(B.curves),vt=gs(B.curves);JA(it,vt)||G.unshift(new Bc(vt,6))}}else G.unshift.apply(G,Y);B=B.parent}return G.filter(function(ut){return Pr(ut.target,p)})},w}(),Qi=function(w,p,b,B){w.container.elements.forEach(function(G){var Y=Pr(G.flags,4),it=Pr(G.flags,2),vt=new qA(G,w);Pr(G.styles.display,2048)&&B.push(vt);var ut=Pr(G.flags,8)?[]:B;if(Y||it){var Ft=Y||G.styles.isPositioned()?b:p,It=new vs(vt);if(G.styles.isPositioned()||G.styles.opacity<1||G.styles.isTransformed()){var _t=G.styles.zIndex.order;if(_t<0){var te=0;Ft.negativeZIndex.some(function(ge,be){return _t>ge.element.container.styles.zIndex.order?(te=be,!1):te>0}),Ft.negativeZIndex.splice(te,0,It)}else if(_t>0){var Oe=0;Ft.positiveZIndex.some(function(ge,be){return _t>=ge.element.container.styles.zIndex.order?(Oe=be+1,!1):Oe>0}),Ft.positiveZIndex.splice(Oe,0,It)}else Ft.zeroOrAutoZIndexOrTransformedOrOpacity.push(It)}else G.styles.isFloating()?Ft.nonPositionedFloats.push(It):Ft.nonPositionedInlineLevel.push(It);Qi(vt,It,Y?It:b,ut)}else G.styles.isInlineLevel()?p.inlineLevel.push(vt):p.nonInlineLevel.push(vt),Qi(vt,p,b,ut);Pr(G.flags,8)&&zf(G,ut)})},zf=function(w,p){for(var b=w instanceof Yn?w.start:1,B=w instanceof Yn?w.reversed:!1,G=0;G<p.length;G++){var Y=p[G];Y.container instanceof lc&&typeof Y.container.value=="number"&&Y.container.value!==0&&(b=Y.container.value),Y.listValue=fs(b,Y.container.styles.listStyleType,!0),b+=B?-1:1}},zu=function(w){var p=new qA(w,null),b=new vs(p),B=[];return Qi(p,b,b,B),zf(p.container,B),b},Hn=function(w,p){switch(p){case 0:return la(w.topLeftBorderBox,w.topLeftPaddingBox,w.topRightBorderBox,w.topRightPaddingBox);case 1:return la(w.topRightBorderBox,w.topRightPaddingBox,w.bottomRightBorderBox,w.bottomRightPaddingBox);case 2:return la(w.bottomRightBorderBox,w.bottomRightPaddingBox,w.bottomLeftBorderBox,w.bottomLeftPaddingBox);case 3:default:return la(w.bottomLeftBorderBox,w.bottomLeftPaddingBox,w.topLeftBorderBox,w.topLeftPaddingBox)}},Ma=function(w,p){switch(p){case 0:return la(w.topLeftBorderBox,w.topLeftBorderDoubleOuterBox,w.topRightBorderBox,w.topRightBorderDoubleOuterBox);case 1:return la(w.topRightBorderBox,w.topRightBorderDoubleOuterBox,w.bottomRightBorderBox,w.bottomRightBorderDoubleOuterBox);case 2:return la(w.bottomRightBorderBox,w.bottomRightBorderDoubleOuterBox,w.bottomLeftBorderBox,w.bottomLeftBorderDoubleOuterBox);case 3:default:return la(w.bottomLeftBorderBox,w.bottomLeftBorderDoubleOuterBox,w.topLeftBorderBox,w.topLeftBorderDoubleOuterBox)}},Eo=function(w,p){switch(p){case 0:return la(w.topLeftBorderDoubleInnerBox,w.topLeftPaddingBox,w.topRightBorderDoubleInnerBox,w.topRightPaddingBox);case 1:return la(w.topRightBorderDoubleInnerBox,w.topRightPaddingBox,w.bottomRightBorderDoubleInnerBox,w.bottomRightPaddingBox);case 2:return la(w.bottomRightBorderDoubleInnerBox,w.bottomRightPaddingBox,w.bottomLeftBorderDoubleInnerBox,w.bottomLeftPaddingBox);case 3:default:return la(w.bottomLeftBorderDoubleInnerBox,w.bottomLeftPaddingBox,w.topLeftBorderDoubleInnerBox,w.topLeftPaddingBox)}},Vu=function(w,p){switch(p){case 0:return $A(w.topLeftBorderStroke,w.topRightBorderStroke);case 1:return $A(w.topRightBorderStroke,w.bottomRightBorderStroke);case 2:return $A(w.bottomRightBorderStroke,w.bottomLeftBorderStroke);case 3:default:return $A(w.bottomLeftBorderStroke,w.topLeftBorderStroke)}},$A=function(w,p){var b=[];return Ln(w)?b.push(w.subdivide(.5,!1)):b.push(w),Ln(p)?b.push(p.subdivide(.5,!0)):b.push(p),b},la=function(w,p,b,B){var G=[];return Ln(w)?G.push(w.subdivide(.5,!1)):G.push(w),Ln(b)?G.push(b.subdivide(.5,!0)):G.push(b),Ln(B)?G.push(B.subdivide(.5,!0).reverse()):G.push(B),Ln(p)?G.push(p.subdivide(.5,!1).reverse()):G.push(p),G},Vf=function(w){var p=w.bounds,b=w.styles;return p.add(b.borderLeftWidth,b.borderTopWidth,-(b.borderRightWidth+b.borderLeftWidth),-(b.borderTopWidth+b.borderBottomWidth))},uA=function(w){var p=w.styles,b=w.bounds,B=Kn(p.paddingLeft,b.width),G=Kn(p.paddingRight,b.width),Y=Kn(p.paddingTop,b.width),it=Kn(p.paddingBottom,b.width);return b.add(B+p.borderLeftWidth,Y+p.borderTopWidth,-(p.borderRightWidth+p.borderLeftWidth+B+G),-(p.borderTopWidth+p.borderBottomWidth+Y+it))},Ip=function(w,p){return w===0?p.bounds:w===2?uA(p):Vf(p)},Wf=function(w,p){return w===0?p.bounds:w===2?uA(p):Vf(p)},bc=function(w,p,b){var B=Ip(fA(w.styles.backgroundOrigin,p),w),G=Wf(fA(w.styles.backgroundClip,p),w),Y=Lp(fA(w.styles.backgroundSize,p),b,B),it=Y[0],vt=Y[1],ut=GA(fA(w.styles.backgroundPosition,p),B.width-it,B.height-vt),Ft=Np(fA(w.styles.backgroundRepeat,p),ut,Y,B,G),It=Math.round(B.left+ut[0]),_t=Math.round(B.top+ut[1]);return[Ft,It,_t,it,vt]},hA=function(w){return $n(w)&&w.value===VA.AUTO},Xn=function(w){return typeof w=="number"},Lp=function(w,p,b){var B=p[0],G=p[1],Y=p[2],it=w[0],vt=w[1];if(!it)return[0,0];if(Ur(it)&&vt&&Ur(vt))return[Kn(it,b.width),Kn(vt,b.height)];var ut=Xn(Y);if($n(it)&&(it.value===VA.CONTAIN||it.value===VA.COVER)){if(Xn(Y)){var Ft=b.width/b.height;return Ft<Y!=(it.value===VA.COVER)?[b.width,b.width/Y]:[b.height*Y,b.height]}return[b.width,b.height]}var It=Xn(B),_t=Xn(G),te=It||_t;if(hA(it)&&(!vt||hA(vt))){if(It&&_t)return[B,G];if(!ut&&!te)return[b.width,b.height];if(te&&ut){var Oe=It?B:G*Y,ge=_t?G:B/Y;return[Oe,ge]}var be=It?B:b.width,sn=_t?G:b.height;return[be,sn]}if(ut){var Ue=0,Ne=0;return Ur(it)?Ue=Kn(it,b.width):Ur(vt)&&(Ne=Kn(vt,b.height)),hA(it)?Ue=Ne*Y:(!vt||hA(vt))&&(Ne=Ue/Y),[Ue,Ne]}var Mn=null,ln=null;if(Ur(it)?Mn=Kn(it,b.width):vt&&Ur(vt)&&(ln=Kn(vt,b.height)),Mn!==null&&(!vt||hA(vt))&&(ln=It&&_t?Mn/B*G:b.height),ln!==null&&hA(it)&&(Mn=It&&_t?ln/G*B:b.width),Mn!==null&&ln!==null)return[Mn,ln];throw new Error("Unable to calculate background-size for element")},fA=function(w,p){var b=w[p];return typeof b=="undefined"?w[0]:b},Np=function(w,p,b,B,G){var Y=p[0],it=p[1],vt=b[0],ut=b[1];switch(w){case 2:return[new Me(Math.round(B.left),Math.round(B.top+it)),new Me(Math.round(B.left+B.width),Math.round(B.top+it)),new Me(Math.round(B.left+B.width),Math.round(ut+B.top+it)),new Me(Math.round(B.left),Math.round(ut+B.top+it))];case 3:return[new Me(Math.round(B.left+Y),Math.round(B.top)),new Me(Math.round(B.left+Y+vt),Math.round(B.top)),new Me(Math.round(B.left+Y+vt),Math.round(B.height+B.top)),new Me(Math.round(B.left+Y),Math.round(B.height+B.top))];case 1:return[new Me(Math.round(B.left+Y),Math.round(B.top+it)),new Me(Math.round(B.left+Y+vt),Math.round(B.top+it)),new Me(Math.round(B.left+Y+vt),Math.round(B.top+it+ut)),new Me(Math.round(B.left+Y),Math.round(B.top+it+ut))];default:return[new Me(Math.round(G.left),Math.round(G.top)),new Me(Math.round(G.left+G.width),Math.round(G.top)),new Me(Math.round(G.left+G.width),Math.round(G.height+G.top)),new Me(Math.round(G.left),Math.round(G.height+G.top))]}},kp="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",Zf="Hidden Text",Qp=function(){function w(p){this._data={},this._document=p}return w.prototype.parseMetrics=function(p,b){var B=this._document.createElement("div"),G=this._document.createElement("img"),Y=this._document.createElement("span"),it=this._document.body;B.style.visibility="hidden",B.style.fontFamily=p,B.style.fontSize=b,B.style.margin="0",B.style.padding="0",B.style.whiteSpace="nowrap",it.appendChild(B),G.src=kp,G.width=1,G.height=1,G.style.margin="0",G.style.padding="0",G.style.verticalAlign="baseline",Y.style.fontFamily=p,Y.style.fontSize=b,Y.style.margin="0",Y.style.padding="0",Y.appendChild(this._document.createTextNode(Zf)),B.appendChild(Y),B.appendChild(G);var vt=G.offsetTop-Y.offsetTop+2;B.removeChild(Y),B.appendChild(this._document.createTextNode(Zf)),B.style.lineHeight="normal",G.style.verticalAlign="super";var ut=G.offsetTop-B.offsetTop+2;return it.removeChild(B),{baseline:vt,middle:ut}},w.prototype.getMetrics=function(p,b){var B=p+" "+b;return typeof this._data[B]=="undefined"&&(this._data[B]=this.parseMetrics(p,b)),this._data[B]},w}(),jf=function(){function w(p,b){this.context=p,this.options=b}return w}(),Yf=1e4,Up=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this;return G._activeEffects=[],G.canvas=B.canvas?B.canvas:document.createElement("canvas"),G.ctx=G.canvas.getContext("2d"),B.canvas||(G.canvas.width=Math.floor(B.width*B.scale),G.canvas.height=Math.floor(B.height*B.scale),G.canvas.style.width=B.width+"px",G.canvas.style.height=B.height+"px"),G.fontMetrics=new Qp(document),G.ctx.scale(G.options.scale,G.options.scale),G.ctx.translate(-B.x,-B.y),G.ctx.textBaseline="bottom",G._activeEffects=[],G.context.logger.debug("Canvas renderer initialized ("+B.width+"x"+B.height+") with scale "+B.scale),G}return p.prototype.applyEffects=function(b){for(var B=this;this._activeEffects.length;)this.popEffect();b.forEach(function(G){return B.applyEffect(G)})},p.prototype.applyEffect=function(b){this.ctx.save(),Ku(b)&&(this.ctx.globalAlpha=b.opacity),Fp(b)&&(this.ctx.translate(b.offsetX,b.offsetY),this.ctx.transform(b.matrix[0],b.matrix[1],b.matrix[2],b.matrix[3],b.matrix[4],b.matrix[5]),this.ctx.translate(-b.offsetX,-b.offsetY)),Gu(b)&&(this.path(b.path),this.ctx.clip()),this._activeEffects.push(b)},p.prototype.popEffect=function(){this._activeEffects.pop(),this.ctx.restore()},p.prototype.renderStack=function(b){return z(this,void 0,void 0,function(){var B;return D(this,function(G){switch(G.label){case 0:return B=b.element.container.styles,B.isVisible()?[4,this.renderStackContent(b)]:[3,2];case 1:G.sent(),G.label=2;case 2:return[2]}})})},p.prototype.renderNode=function(b){return z(this,void 0,void 0,function(){return D(this,function(B){switch(B.label){case 0:if(Pr(b.container.flags,16))debugger;return b.container.styles.isVisible()?[4,this.renderNodeBackgroundAndBorders(b)]:[3,3];case 1:return B.sent(),[4,this.renderNodeContent(b)];case 2:B.sent(),B.label=3;case 3:return[2]}})})},p.prototype.renderTextWithLetterSpacing=function(b,B,G){var Y=this;if(B===0)this.ctx.fillText(b.text,b.bounds.left,b.bounds.top+G);else{var it=Wa(b.text);it.reduce(function(vt,ut){return Y.ctx.fillText(ut,vt,b.bounds.top+G),vt+Y.ctx.measureText(ut).width},b.bounds.left)}},p.prototype.createFontStyle=function(b){var B=b.fontVariant.filter(function(it){return it==="normal"||it==="small-caps"}).join(""),G=Hp(b.fontFamily).join(", "),Y=sa(b.fontSize)?""+b.fontSize.number+b.fontSize.unit:b.fontSize.number+"px";return[[b.fontStyle,B,b.fontWeight,Y,G].join(" "),G,Y]},p.prototype.renderTextNode=function(b,B){return z(this,void 0,void 0,function(){var G,Y,it,vt,ut,Ft,It,_t,te=this;return D(this,function(Oe){return G=this.createFontStyle(B),Y=G[0],it=G[1],vt=G[2],this.ctx.font=Y,this.ctx.direction=B.direction===1?"rtl":"ltr",this.ctx.textAlign="left",this.ctx.textBaseline="alphabetic",ut=this.fontMetrics.getMetrics(it,vt),Ft=ut.baseline,It=ut.middle,_t=B.paintOrder,b.textBounds.forEach(function(ge){_t.forEach(function(be){switch(be){case 0:te.ctx.fillStyle=ei(B.color),te.renderTextWithLetterSpacing(ge,B.letterSpacing,Ft);var sn=B.textShadow;sn.length&&ge.text.trim().length&&(sn.slice(0).reverse().forEach(function(Ue){te.ctx.shadowColor=ei(Ue.color),te.ctx.shadowOffsetX=Ue.offsetX.number*te.options.scale,te.ctx.shadowOffsetY=Ue.offsetY.number*te.options.scale,te.ctx.shadowBlur=Ue.blur.number,te.renderTextWithLetterSpacing(ge,B.letterSpacing,Ft)}),te.ctx.shadowColor="",te.ctx.shadowOffsetX=0,te.ctx.shadowOffsetY=0,te.ctx.shadowBlur=0),B.textDecorationLine.length&&(te.ctx.fillStyle=ei(B.textDecorationColor||B.color),B.textDecorationLine.forEach(function(Ue){switch(Ue){case 1:te.ctx.fillRect(ge.bounds.left,Math.round(ge.bounds.top+Ft),ge.bounds.width,1);break;case 2:te.ctx.fillRect(ge.bounds.left,Math.round(ge.bounds.top),ge.bounds.width,1);break;case 3:te.ctx.fillRect(ge.bounds.left,Math.ceil(ge.bounds.top+It),ge.bounds.width,1);break}}));break;case 1:B.webkitTextStrokeWidth&&ge.text.trim().length&&(te.ctx.strokeStyle=ei(B.webkitTextStrokeColor),te.ctx.lineWidth=B.webkitTextStrokeWidth,te.ctx.lineJoin=window.chrome?"miter":"round",te.ctx.strokeText(ge.text,ge.bounds.left,ge.bounds.top+Ft)),te.ctx.strokeStyle="",te.ctx.lineWidth=0,te.ctx.lineJoin="miter";break}})}),[2]})})},p.prototype.renderReplacedElement=function(b,B,G){if(G&&b.intrinsicWidth>0&&b.intrinsicHeight>0){var Y=uA(b),it=gs(B);this.path(it),this.ctx.save(),this.ctx.clip(),this.ctx.drawImage(G,0,0,b.intrinsicWidth,b.intrinsicHeight,Y.left,Y.top,Y.width,Y.height),this.ctx.restore()}},p.prototype.renderNodeContent=function(b){return z(this,void 0,void 0,function(){var B,G,Y,it,vt,ut,Ne,Ne,Ft,It,_t,te,ln,Oe,ge,Xe,be,sn,Ue,Ne,Mn,ln,Xe;return D(this,function(Fe){switch(Fe.label){case 0:this.applyEffects(b.getEffects(4)),B=b.container,G=b.curves,Y=B.styles,it=0,vt=B.textNodes,Fe.label=1;case 1:return it<vt.length?(ut=vt[it],[4,this.renderTextNode(ut,Y)]):[3,4];case 2:Fe.sent(),Fe.label=3;case 3:return it++,[3,1];case 4:if(!(B instanceof Tf))return[3,8];Fe.label=5;case 5:return Fe.trys.push([5,7,,8]),[4,this.context.cache.match(B.src)];case 6:return Ne=Fe.sent(),this.renderReplacedElement(B,G,Ne),[3,8];case 7:return Fe.sent(),this.context.logger.error("Error loading image "+B.src),[3,8];case 8:if(B instanceof Ff&&this.renderReplacedElement(B,G,B.canvas),!(B instanceof Qu))return[3,12];Fe.label=9;case 9:return Fe.trys.push([9,11,,12]),[4,this.context.cache.match(B.svg)];case 10:return Ne=Fe.sent(),this.renderReplacedElement(B,G,Ne),[3,12];case 11:return Fe.sent(),this.context.logger.error("Error loading svg "+B.svg.substring(0,255)),[3,12];case 12:return B instanceof If&&B.tree?(Ft=new p(this.context,{scale:this.options.scale,backgroundColor:B.backgroundColor,x:0,y:0,width:B.width,height:B.height}),[4,Ft.render(B.tree)]):[3,14];case 13:It=Fe.sent(),B.width&&B.height&&this.ctx.drawImage(It,0,0,B.width,B.height,B.bounds.left,B.bounds.top,B.bounds.width,B.bounds.height),Fe.label=14;case 14:if(B instanceof Ks&&(_t=Math.min(B.bounds.width,B.bounds.height),B.type===cs?B.checked&&(this.ctx.save(),this.path([new Me(B.bounds.left+_t*.39363,B.bounds.top+_t*.79),new Me(B.bounds.left+_t*.16,B.bounds.top+_t*.5549),new Me(B.bounds.left+_t*.27347,B.bounds.top+_t*.44071),new Me(B.bounds.left+_t*.39694,B.bounds.top+_t*.5649),new Me(B.bounds.left+_t*.72983,B.bounds.top+_t*.23),new Me(B.bounds.left+_t*.84,B.bounds.top+_t*.34085),new Me(B.bounds.left+_t*.39363,B.bounds.top+_t*.79)]),this.ctx.fillStyle=ei(Of),this.ctx.fill(),this.ctx.restore()):B.type===On&&B.checked&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.arc(B.bounds.left+_t/2,B.bounds.top+_t/2,_t/4,0,Math.PI*2,!0),this.ctx.fillStyle=ei(Of),this.ctx.fill(),this.ctx.restore())),Pp(B)&&B.value.length){switch(te=this.createFontStyle(Y),ln=te[0],Oe=te[1],ge=this.fontMetrics.getMetrics(ln,Oe).baseline,this.ctx.font=ln,this.ctx.fillStyle=ei(Y.color),this.ctx.textBaseline="alphabetic",this.ctx.textAlign=Rp(B.styles.textAlign),Xe=uA(B),be=0,B.styles.textAlign){case 1:be+=Xe.width/2;break;case 2:be+=Xe.width;break}sn=Xe.add(be,0,0,-Xe.height/2+1),this.ctx.save(),this.path([new Me(Xe.left,Xe.top),new Me(Xe.left+Xe.width,Xe.top),new Me(Xe.left+Xe.width,Xe.top+Xe.height),new Me(Xe.left,Xe.top+Xe.height)]),this.ctx.clip(),this.renderTextWithLetterSpacing(new oc(B.value,sn),Y.letterSpacing,ge),this.ctx.restore(),this.ctx.textBaseline="alphabetic",this.ctx.textAlign="left"}if(!Pr(B.styles.display,2048))return[3,20];if(B.styles.listStyleImage===null)return[3,19];if(Ue=B.styles.listStyleImage,Ue.type!==0)return[3,18];Ne=void 0,Mn=Ue.url,Fe.label=15;case 15:return Fe.trys.push([15,17,,18]),[4,this.context.cache.match(Mn)];case 16:return Ne=Fe.sent(),this.ctx.drawImage(Ne,B.bounds.left-(Ne.width+10),B.bounds.top),[3,18];case 17:return Fe.sent(),this.context.logger.error("Error loading list-style-image "+Mn),[3,18];case 18:return[3,20];case 19:b.listValue&&B.styles.listStyleType!==-1&&(ln=this.createFontStyle(Y)[0],this.ctx.font=ln,this.ctx.fillStyle=ei(Y.color),this.ctx.textBaseline="middle",this.ctx.textAlign="right",Xe=new O(B.bounds.left,B.bounds.top+Kn(B.styles.paddingTop,B.bounds.width),B.bounds.width,rf(Y.lineHeight,Y.fontSize.number)/2+1),this.renderTextWithLetterSpacing(new oc(b.listValue,Xe),Y.letterSpacing,rf(Y.lineHeight,Y.fontSize.number)/2+2),this.ctx.textBaseline="bottom",this.ctx.textAlign="left"),Fe.label=20;case 20:return[2]}})})},p.prototype.renderStackContent=function(b){return z(this,void 0,void 0,function(){var B,G,Ue,Y,it,Ue,vt,ut,Ue,Ft,It,Ue,_t,te,Ue,Oe,ge,Ue,be,sn,Ue;return D(this,function(Ne){switch(Ne.label){case 0:if(Pr(b.element.container.flags,16))debugger;return[4,this.renderNodeBackgroundAndBorders(b.element)];case 1:Ne.sent(),B=0,G=b.negativeZIndex,Ne.label=2;case 2:return B<G.length?(Ue=G[B],[4,this.renderStack(Ue)]):[3,5];case 3:Ne.sent(),Ne.label=4;case 4:return B++,[3,2];case 5:return[4,this.renderNodeContent(b.element)];case 6:Ne.sent(),Y=0,it=b.nonInlineLevel,Ne.label=7;case 7:return Y<it.length?(Ue=it[Y],[4,this.renderNode(Ue)]):[3,10];case 8:Ne.sent(),Ne.label=9;case 9:return Y++,[3,7];case 10:vt=0,ut=b.nonPositionedFloats,Ne.label=11;case 11:return vt<ut.length?(Ue=ut[vt],[4,this.renderStack(Ue)]):[3,14];case 12:Ne.sent(),Ne.label=13;case 13:return vt++,[3,11];case 14:Ft=0,It=b.nonPositionedInlineLevel,Ne.label=15;case 15:return Ft<It.length?(Ue=It[Ft],[4,this.renderStack(Ue)]):[3,18];case 16:Ne.sent(),Ne.label=17;case 17:return Ft++,[3,15];case 18:_t=0,te=b.inlineLevel,Ne.label=19;case 19:return _t<te.length?(Ue=te[_t],[4,this.renderNode(Ue)]):[3,22];case 20:Ne.sent(),Ne.label=21;case 21:return _t++,[3,19];case 22:Oe=0,ge=b.zeroOrAutoZIndexOrTransformedOrOpacity,Ne.label=23;case 23:return Oe<ge.length?(Ue=ge[Oe],[4,this.renderStack(Ue)]):[3,26];case 24:Ne.sent(),Ne.label=25;case 25:return Oe++,[3,23];case 26:be=0,sn=b.positiveZIndex,Ne.label=27;case 27:return be<sn.length?(Ue=sn[be],[4,this.renderStack(Ue)]):[3,30];case 28:Ne.sent(),Ne.label=29;case 29:return be++,[3,27];case 30:return[2]}})})},p.prototype.mask=function(b){this.ctx.beginPath(),this.ctx.moveTo(0,0),this.ctx.lineTo(this.canvas.width,0),this.ctx.lineTo(this.canvas.width,this.canvas.height),this.ctx.lineTo(0,this.canvas.height),this.ctx.lineTo(0,0),this.formatPath(b.slice(0).reverse()),this.ctx.closePath()},p.prototype.path=function(b){this.ctx.beginPath(),this.formatPath(b),this.ctx.closePath()},p.prototype.formatPath=function(b){var B=this;b.forEach(function(G,Y){var it=Ln(G)?G.start:G;Y===0?B.ctx.moveTo(it.x,it.y):B.ctx.lineTo(it.x,it.y),Ln(G)&&B.ctx.bezierCurveTo(G.startControl.x,G.startControl.y,G.endControl.x,G.endControl.y,G.end.x,G.end.y)})},p.prototype.renderRepeat=function(b,B,G,Y){this.path(b),this.ctx.fillStyle=B,this.ctx.translate(G,Y),this.ctx.fill(),this.ctx.translate(-G,-Y)},p.prototype.resizeImage=function(b,B,G){var Y;if(b.width===B&&b.height===G)return b;var it=(Y=this.canvas.ownerDocument)!==null&&Y!==void 0?Y:document,vt=it.createElement("canvas");vt.width=Math.max(1,B),vt.height=Math.max(1,G);var ut=vt.getContext("2d");return ut.drawImage(b,0,0,b.width,b.height,0,0,B,G),vt},p.prototype.renderBackgroundImage=function(b){return z(this,void 0,void 0,function(){var B,G,Y,it,vt,ut;return D(this,function(Ft){switch(Ft.label){case 0:B=b.styles.backgroundImage.length-1,G=function(It){var _t,te,Oe,Or,bi,si,zn,Vr,xn,ge,Or,bi,si,zn,Vr,be,sn,Ue,Ne,Mn,ln,Xe,Fe,bn,xn,Ze,Or,ai,Ui,zn,Vr,Ws,bi,si,ps,Ta,Zs,bo,xo,Ya,Co,ms;return D(this,function(nl){switch(nl.label){case 0:if(It.type!==0)return[3,5];_t=void 0,te=It.url,nl.label=1;case 1:return nl.trys.push([1,3,,4]),[4,Y.context.cache.match(te)];case 2:return _t=nl.sent(),[3,4];case 3:return nl.sent(),Y.context.logger.error("Error loading background-image "+te),[3,4];case 4:return _t&&(Oe=bc(b,B,[_t.width,_t.height,_t.width/_t.height]),Or=Oe[0],bi=Oe[1],si=Oe[2],zn=Oe[3],Vr=Oe[4],xn=Y.ctx.createPattern(Y.resizeImage(_t,zn,Vr),"repeat"),Y.renderRepeat(Or,xn,bi,si)),[3,6];case 5:mw(It)?(ge=bc(b,B,[null,null,null]),Or=ge[0],bi=ge[1],si=ge[2],zn=ge[3],Vr=ge[4],be=l0(It.angle,zn,Vr),sn=be[0],Ue=be[1],Ne=be[2],Mn=be[3],ln=be[4],Xe=document.createElement("canvas"),Xe.width=zn,Xe.height=Vr,Fe=Xe.getContext("2d"),bn=Fe.createLinearGradient(Ue,Mn,Ne,ln),o0(It.stops,sn).forEach(function(Cc){return bn.addColorStop(Cc.stop,ei(Cc.color))}),Fe.fillStyle=bn,Fe.fillRect(0,0,zn,Vr),zn>0&&Vr>0&&(xn=Y.ctx.createPattern(Xe,"repeat"),Y.renderRepeat(Or,xn,bi,si))):y0(It)&&(Ze=bc(b,B,[null,null,null]),Or=Ze[0],ai=Ze[1],Ui=Ze[2],zn=Ze[3],Vr=Ze[4],Ws=It.position.length===0?[HA]:It.position,bi=Kn(Ws[0],zn),si=Kn(Ws[Ws.length-1],Vr),ps=dw(It,bi,si,zn,Vr),Ta=ps[0],Zs=ps[1],Ta>0&&Zs>0&&(bo=Y.ctx.createRadialGradient(ai+bi,Ui+si,0,ai+bi,Ui+si,Ta),o0(It.stops,Ta*2).forEach(function(Cc){return bo.addColorStop(Cc.stop,ei(Cc.color))}),Y.path(Or),Y.ctx.fillStyle=bo,Ta!==Zs?(xo=b.bounds.left+.5*b.bounds.width,Ya=b.bounds.top+.5*b.bounds.height,Co=Zs/Ta,ms=1/Co,Y.ctx.save(),Y.ctx.translate(xo,Ya),Y.ctx.transform(1,0,0,Co,0,0),Y.ctx.translate(-xo,-Ya),Y.ctx.fillRect(ai,ms*(Ui-Ya)+Ya,zn,Vr*ms),Y.ctx.restore()):Y.ctx.fill())),nl.label=6;case 6:return B--,[2]}})},Y=this,it=0,vt=b.styles.backgroundImage.slice(0).reverse(),Ft.label=1;case 1:return it<vt.length?(ut=vt[it],[5,G(ut)]):[3,4];case 2:Ft.sent(),Ft.label=3;case 3:return it++,[3,1];case 4:return[2]}})})},p.prototype.renderSolidBorder=function(b,B,G){return z(this,void 0,void 0,function(){return D(this,function(Y){return this.path(Hn(G,B)),this.ctx.fillStyle=ei(b),this.ctx.fill(),[2]})})},p.prototype.renderDoubleBorder=function(b,B,G,Y){return z(this,void 0,void 0,function(){var it,vt;return D(this,function(ut){switch(ut.label){case 0:return B<3?[4,this.renderSolidBorder(b,G,Y)]:[3,2];case 1:return ut.sent(),[2];case 2:return it=Ma(Y,G),this.path(it),this.ctx.fillStyle=ei(b),this.ctx.fill(),vt=Eo(Y,G),this.path(vt),this.ctx.fill(),[2]}})})},p.prototype.renderNodeBackgroundAndBorders=function(b){return z(this,void 0,void 0,function(){var B,G,Y,it,vt,ut,Ft,It,_t=this;return D(this,function(te){switch(te.label){case 0:return this.applyEffects(b.getEffects(2)),B=b.container.styles,G=!vo(B.backgroundColor)||B.backgroundImage.length,Y=[{style:B.borderTopStyle,color:B.borderTopColor,width:B.borderTopWidth},{style:B.borderRightStyle,color:B.borderRightColor,width:B.borderRightWidth},{style:B.borderBottomStyle,color:B.borderBottomColor,width:B.borderBottomWidth},{style:B.borderLeftStyle,color:B.borderLeftColor,width:B.borderLeftWidth}],it=Dp(fA(B.backgroundClip,0),b.curves),G||B.boxShadow.length?(this.ctx.save(),this.path(it),this.ctx.clip(),vo(B.backgroundColor)||(this.ctx.fillStyle=ei(B.backgroundColor),this.ctx.fill()),[4,this.renderBackgroundImage(b.container)]):[3,2];case 1:te.sent(),this.ctx.restore(),B.boxShadow.slice(0).reverse().forEach(function(Oe){_t.ctx.save();var ge=Ec(b.curves),be=Oe.inset?0:Yf,sn=Op(ge,-be+(Oe.inset?1:-1)*Oe.spread.number,(Oe.inset?1:-1)*Oe.spread.number,Oe.spread.number*(Oe.inset?-2:2),Oe.spread.number*(Oe.inset?-2:2));Oe.inset?(_t.path(ge),_t.ctx.clip(),_t.mask(sn)):(_t.mask(ge),_t.ctx.clip(),_t.path(sn)),_t.ctx.shadowOffsetX=Oe.offsetX.number+be,_t.ctx.shadowOffsetY=Oe.offsetY.number,_t.ctx.shadowColor=ei(Oe.color),_t.ctx.shadowBlur=Oe.blur.number,_t.ctx.fillStyle=Oe.inset?ei(Oe.color):"rgba(0,0,0,1)",_t.ctx.fill(),_t.ctx.restore()}),te.label=2;case 2:vt=0,ut=0,Ft=Y,te.label=3;case 3:return ut<Ft.length?(It=Ft[ut],It.style!==0&&!vo(It.color)&&It.width>0?It.style!==2?[3,5]:[4,this.renderDashedDottedBorder(It.color,It.width,vt,b.curves,2)]:[3,11]):[3,13];case 4:return te.sent(),[3,11];case 5:return It.style!==3?[3,7]:[4,this.renderDashedDottedBorder(It.color,It.width,vt,b.curves,3)];case 6:return te.sent(),[3,11];case 7:return It.style!==4?[3,9]:[4,this.renderDoubleBorder(It.color,It.width,vt,b.curves)];case 8:return te.sent(),[3,11];case 9:return[4,this.renderSolidBorder(It.color,vt,b.curves)];case 10:te.sent(),te.label=11;case 11:vt++,te.label=12;case 12:return ut++,[3,3];case 13:return[2]}})})},p.prototype.renderDashedDottedBorder=function(b,B,G,Y,it){return z(this,void 0,void 0,function(){var vt,ut,Ft,It,_t,te,Oe,ge,be,sn,Ue,Ne,Mn,ln,Xe,Fe,Xe,Fe;return D(this,function(bn){return this.ctx.save(),vt=Vu(Y,G),ut=Hn(Y,G),it===2&&(this.path(ut),this.ctx.clip()),Ln(ut[0])?(Ft=ut[0].start.x,It=ut[0].start.y):(Ft=ut[0].x,It=ut[0].y),Ln(ut[1])?(_t=ut[1].end.x,te=ut[1].end.y):(_t=ut[1].x,te=ut[1].y),G===0||G===2?Oe=Math.abs(Ft-_t):Oe=Math.abs(It-te),this.ctx.beginPath(),it===3?this.formatPath(vt):this.formatPath(ut.slice(0,2)),ge=B<3?B*3:B*2,be=B<3?B*2:B,it===3&&(ge=B,be=B),sn=!0,Oe<=ge*2?sn=!1:Oe<=ge*2+be?(Ue=Oe/(2*ge+be),ge*=Ue,be*=Ue):(Ne=Math.floor((Oe+be)/(ge+be)),Mn=(Oe-Ne*ge)/(Ne-1),ln=(Oe-(Ne+1)*ge)/Ne,be=ln<=0||Math.abs(be-Mn)<Math.abs(be-ln)?Mn:ln),sn&&(it===3?this.ctx.setLineDash([0,ge+be]):this.ctx.setLineDash([ge,be])),it===3?(this.ctx.lineCap="round",this.ctx.lineWidth=B):this.ctx.lineWidth=B*2+1.1,this.ctx.strokeStyle=ei(b),this.ctx.stroke(),this.ctx.setLineDash([]),it===2&&(Ln(ut[0])&&(Xe=ut[3],Fe=ut[0],this.ctx.beginPath(),this.formatPath([new Me(Xe.end.x,Xe.end.y),new Me(Fe.start.x,Fe.start.y)]),this.ctx.stroke()),Ln(ut[1])&&(Xe=ut[1],Fe=ut[2],this.ctx.beginPath(),this.formatPath([new Me(Xe.end.x,Xe.end.y),new Me(Fe.start.x,Fe.start.y)]),this.ctx.stroke())),this.ctx.restore(),[2]})})},p.prototype.render=function(b){return z(this,void 0,void 0,function(){var B;return D(this,function(G){switch(G.label){case 0:return this.options.backgroundColor&&(this.ctx.fillStyle=ei(this.options.backgroundColor),this.ctx.fillRect(this.options.x,this.options.y,this.options.width,this.options.height)),B=zu(b),[4,this.renderStack(B)];case 1:return G.sent(),this.applyEffects([]),[2,this.canvas]}})})},p}(jf),Pp=function(w){return w instanceof vi||w instanceof cc?!0:w instanceof Ks&&w.type!==On&&w.type!==cs},Dp=function(w,p){switch(w){case 0:return Ec(p);case 2:return Sp(p);case 1:default:return gs(p)}},Rp=function(w){switch(w){case 1:return"center";case 2:return"right";case 0:default:return"left"}},_p=["-apple-system","system-ui"],Hp=function(w){return/iPhone OS 15_(0|1)/.test(window.navigator.userAgent)?w.filter(function(p){return _p.indexOf(p)===-1}):w},Gp=function(w){M(p,w);function p(b,B){var G=w.call(this,b,B)||this;return G.canvas=B.canvas?B.canvas:document.createElement("canvas"),G.ctx=G.canvas.getContext("2d"),G.options=B,G.canvas.width=Math.floor(B.width*B.scale),G.canvas.height=Math.floor(B.height*B.scale),G.canvas.style.width=B.width+"px",G.canvas.style.height=B.height+"px",G.ctx.scale(G.options.scale,G.options.scale),G.ctx.translate(-B.x,-B.y),G.context.logger.debug("EXPERIMENTAL ForeignObject renderer initialized ("+B.width+"x"+B.height+" at "+B.x+","+B.y+") with scale "+B.scale),G}return p.prototype.render=function(b){return z(this,void 0,void 0,function(){var B,G;return D(this,function(Y){switch(Y.label){case 0:return B=Nu(this.options.width*this.options.scale,this.options.height*this.options.scale,this.options.scale,this.options.scale,b),[4,Yw(B)];case 1:return G=Y.sent(),this.options.backgroundColor&&(this.ctx.fillStyle=ei(this.options.backgroundColor),this.ctx.fillRect(0,0,this.options.width*this.options.scale,this.options.height*this.options.scale)),this.ctx.drawImage(G,-this.options.x*this.options.scale,-this.options.y*this.options.scale),[2,this.canvas]}})})},p}(jf),Yw=function(w){return new Promise(function(p,b){var B=new Image;B.onload=function(){p(B)},B.onerror=b,B.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(new XMLSerializer().serializeToString(w))})},Bo=function(){function w(p){var b=p.id,B=p.enabled;this.id=b,this.enabled=B,this.start=Date.now()}return w.prototype.debug=function(){for(var p=[],b=0;b<arguments.length;b++)p[b]=arguments[b];this.enabled&&(typeof window!="undefined"&&window.console&&typeof console.debug=="function"?console.debug.apply(console,N([this.id,this.getTime()+"ms"],p)):this.info.apply(this,p))},w.prototype.getTime=function(){return Date.now()-this.start},w.prototype.info=function(){for(var p=[],b=0;b<arguments.length;b++)p[b]=arguments[b];this.enabled&&typeof window!="undefined"&&window.console&&typeof console.info=="function"&&console.info.apply(console,N([this.id,this.getTime()+"ms"],p))},w.prototype.warn=function(){for(var p=[],b=0;b<arguments.length;b++)p[b]=arguments[b];this.enabled&&(typeof window!="undefined"&&window.console&&typeof console.warn=="function"?console.warn.apply(console,N([this.id,this.getTime()+"ms"],p)):this.info.apply(this,p))},w.prototype.error=function(){for(var p=[],b=0;b<arguments.length;b++)p[b]=arguments[b];this.enabled&&(typeof window!="undefined"&&window.console&&typeof console.error=="function"?console.error.apply(console,N([this.id,this.getTime()+"ms"],p)):this.info.apply(this,p))},w.instances={},w}(),xc=function(){function w(p,b){var B;this.windowBounds=b,this.instanceName="#"+w.instanceCount++,this.logger=new Bo({id:this.instanceName,enabled:p.logging}),this.cache=(B=p.cache)!==null&&B!==void 0?B:new Cp(this,p)}return w.instanceCount=1,w}(),tl=function(w,p){return p===void 0&&(p={}),Kp(w,p)};typeof window!="undefined"&&_u.setContext(window);var Kp=function(w,p){return z(void 0,void 0,void 0,function(){var b,B,G,Y,it,vt,ut,Ft,It,_t,te,Oe,ge,be,sn,Ue,Ne,Mn,ln,Xe,bn,Fe,bn,xn,Ze,Or,ai,Ui,zn,Vr,Ws,bi,si,ps,Ta,Zs,bo,xo,Ya,Co;return D(this,function(ms){switch(ms.label){case 0:if(!w||typeof w!="object")return[2,Promise.reject("Invalid element provided as first argument")];if(b=w.ownerDocument,!b)throw new Error("Element is not attached to a Document");if(B=b.defaultView,!B)throw new Error("Document is not attached to a Window");return G={allowTaint:(xn=p.allowTaint)!==null&&xn!==void 0?xn:!1,imageTimeout:(Ze=p.imageTimeout)!==null&&Ze!==void 0?Ze:15e3,proxy:p.proxy,useCORS:(Or=p.useCORS)!==null&&Or!==void 0?Or:!1},Y=F({logging:(ai=p.logging)!==null&&ai!==void 0?ai:!0,cache:p.cache},G),it={windowWidth:(Ui=p.windowWidth)!==null&&Ui!==void 0?Ui:B.innerWidth,windowHeight:(zn=p.windowHeight)!==null&&zn!==void 0?zn:B.innerHeight,scrollX:(Vr=p.scrollX)!==null&&Vr!==void 0?Vr:B.pageXOffset,scrollY:(Ws=p.scrollY)!==null&&Ws!==void 0?Ws:B.pageYOffset},vt=new O(it.scrollX,it.scrollY,it.windowWidth,it.windowHeight),ut=new xc(Y,vt),Ft=(bi=p.foreignObjectRendering)!==null&&bi!==void 0?bi:!1,It={allowTaint:(si=p.allowTaint)!==null&&si!==void 0?si:!1,onclone:p.onclone,ignoreElements:p.ignoreElements,inlineImages:Ft,copyStyles:Ft},ut.logger.debug("Starting document clone with size "+vt.width+"x"+vt.height+" scrolled to "+-vt.left+","+-vt.top),_t=new Df(ut,w,It),te=_t.clonedReferenceElement,te?[4,_t.toIFrame(b,vt)]:[2,Promise.reject("Unable to find element in cloned iframe")];case 1:return Oe=ms.sent(),ge=qi(te)||kf(te)?U(te.ownerDocument):k(ut,te),be=ge.width,sn=ge.height,Ue=ge.left,Ne=ge.top,Mn=el(ut,te,p.backgroundColor),ln={canvas:p.canvas,backgroundColor:Mn,scale:(Ta=(ps=p.scale)!==null&&ps!==void 0?ps:B.devicePixelRatio)!==null&&Ta!==void 0?Ta:1,x:((Zs=p.x)!==null&&Zs!==void 0?Zs:0)+Ue,y:((bo=p.y)!==null&&bo!==void 0?bo:0)+Ne,width:(xo=p.width)!==null&&xo!==void 0?xo:Math.ceil(be),height:(Ya=p.height)!==null&&Ya!==void 0?Ya:Math.ceil(sn)},Ft?(ut.logger.debug("Document cloned, using foreign object rendering"),bn=new Gp(ut,ln),[4,bn.render(te)]):[3,3];case 2:return Xe=ms.sent(),[3,5];case 3:return ut.logger.debug("Document cloned, element located at "+Ue+","+Ne+" with size "+be+"x"+sn+" using computed rendering"),ut.logger.debug("Starting DOM parsing"),Fe=Lf(ut,te),Mn===Fe.styles.backgroundColor&&(Fe.styles.backgroundColor=Ds.TRANSPARENT),ut.logger.debug("Starting renderer for element at "+ln.x+","+ln.y+" with size "+ln.width+"x"+ln.height),bn=new Up(ut,ln),[4,bn.render(Fe)];case 4:Xe=ms.sent(),ms.label=5;case 5:return(!((Co=p.removeContainer)!==null&&Co!==void 0)||Co)&&(Df.destroy(Oe)||ut.logger.error("Cannot detach cloned iframe as it is not in the DOM anymore")),ut.logger.debug("Finished rendering"),[2,Xe]}})})},el=function(w,p,b){var B=p.ownerDocument,G=B.documentElement?Vl(w,getComputedStyle(B.documentElement).backgroundColor):Ds.TRANSPARENT,Y=B.body?Vl(w,getComputedStyle(B.body).backgroundColor):Ds.TRANSPARENT,it=typeof b=="string"?Vl(w,b):b===null?Ds.TRANSPARENT:4294967295;return p===B.documentElement?vo(G)?vo(Y)?it:Y:G:it};return tl})},34634:function(X,nt,M){"use strict";M.r(nt),M.d(nt,{isAnyArray:function(){return z}});const F=Object.prototype.toString;function z(D){const N=F.call(D);return N.endsWith("Array]")&&!N.includes("Big")}},55973:function(X){X.exports=function(M){return!M||typeof M=="string"?!1:M instanceof Array||Array.isArray(M)||M.length>=0&&(M.splice instanceof Function||Object.getOwnPropertyDescriptor(M,M.length-1)&&M.constructor.name!=="String")}},15584:function(X,nt,M){var F=M(73893),z=M(33152),D=F(z,"DataView");X.exports=D},97288:function(X,nt,M){var F=M(73893),z=M(33152),D=F(z,"Promise");X.exports=D},23599:function(X,nt,M){var F=M(73893),z=M(33152),D=F(z,"Set");X.exports=D},98924:function(X,nt,M){var F=M(52166),z=M(34776),D=M(40393);function N(O){var k=-1,U=O==null?0:O.length;for(this.__data__=new F;++k<U;)this.add(O[k])}N.prototype.add=N.prototype.push=z,N.prototype.has=D,X.exports=N},26873:function(X,nt,M){var F=M(73893),z=M(33152),D=F(z,"WeakMap");X.exports=D},74809:function(X){function nt(M,F){for(var z=-1,D=M==null?0:M.length;++z<D&&F(M[z],z,M)!==!1;);return M}X.exports=nt},86952:function(X){function nt(M,F){for(var z=-1,D=M==null?0:M.length,N=0,O=[];++z<D;){var k=M[z];F(k,z,M)&&(O[N++]=k)}return O}X.exports=nt},84271:function(X,nt,M){var F=M(17424);function z(D,N){var O=D==null?0:D.length;return!!O&&F(D,N,0)>-1}X.exports=z},94874:function(X){function nt(M,F,z){for(var D=-1,N=M==null?0:M.length;++D<N;)if(z(F,M[D]))return!0;return!1}X.exports=nt},75010:function(X){function nt(M,F){for(var z=-1,D=M==null?0:M.length,N=Array(D);++z<D;)N[z]=F(M[z],z,M);return N}X.exports=nt},57095:function(X){function nt(M,F){for(var z=-1,D=F.length,N=M.length;++z<D;)M[N+z]=F[z];return M}X.exports=nt},99861:function(X){function nt(M,F,z,D){var N=-1,O=M==null?0:M.length;for(D&&O&&(z=M[++N]);++N<O;)z=F(z,M[N],N,M);return z}X.exports=nt},64045:function(X){function nt(M,F){for(var z=-1,D=M==null?0:M.length;++z<D;)if(F(M[z],z,M))return!0;return!1}X.exports=nt},26539:function(X,nt,M){var F=M(22310),z=F("length");X.exports=z},91937:function(X,nt,M){var F=M(95378),z=M(55451);function D(N,O){return N&&F(O,z(O),N)}X.exports=D},26680:function(X,nt,M){var F=M(95378),z=M(56730);function D(N,O){return N&&F(O,z(O),N)}X.exports=D},99045:function(X,nt,M){var F=M(91866),z=M(74809),D=M(60348),N=M(91937),O=M(26680),k=M(32315),U=M(47760),L=M(15168),Q=M(71678),_=M(12076),P=M(22675),Z=M(66139),tt=M(79264),$=M(97541),lt=M(4084),At=M(80744),rt=M(57835),ft=M(41626),ht=M(20816),mt=M(65226),yt=M(55451),Tt=M(56730),xt=1,Nt=2,bt=4,Lt="[object Arguments]",Kt="[object Array]",$t="[object Boolean]",oe="[object Date]",fe="[object Error]",He="[object Function]",rn="[object GeneratorFunction]",Dn="[object Map]",Mr="[object Number]",Vi="[object Object]",is="[object RegExp]",Ao="[object Set]",zt="[object String]",Wt="[object Symbol]",Yt="[object WeakMap]",Et="[object ArrayBuffer]",kt="[object DataView]",Dt="[object Float32Array]",ie="[object Float64Array]",xe="[object Int8Array]",_e="[object Int16Array]",Te="[object Int32Array]",an="[object Uint8Array]",rr="[object Uint8ClampedArray]",sr="[object Uint16Array]",Ke="[object Uint32Array]",ze={};ze[Lt]=ze[Kt]=ze[Et]=ze[kt]=ze[$t]=ze[oe]=ze[Dt]=ze[ie]=ze[xe]=ze[_e]=ze[Te]=ze[Dn]=ze[Mr]=ze[Vi]=ze[is]=ze[Ao]=ze[zt]=ze[Wt]=ze[an]=ze[rr]=ze[sr]=ze[Ke]=!0,ze[fe]=ze[He]=ze[Yt]=!1;function ye(We,Kr,Wi,me,Ga,kr){var Tr,fi=Kr&xt,as=Kr&Nt,Zi=Kr&bt;if(Wi&&(Tr=Ga?Wi(We,me,Ga,kr):Wi(We)),Tr!==void 0)return Tr;if(!ht(We))return We;var ss=At(We);if(ss){if(Tr=tt(We),!fi)return U(We,Tr)}else{var Ii=Z(We),Jr=Ii==He||Ii==rn;if(rt(We))return k(We,fi);if(Ii==Vi||Ii==Lt||Jr&&!Ga){if(Tr=as||Jr?{}:lt(We),!fi)return as?Q(We,O(Tr,We)):L(We,N(Tr,We))}else{if(!ze[Ii])return Ga?We:{};Tr=$(We,Ii,fi)}}kr||(kr=new F);var ma=kr.get(We);if(ma)return ma;kr.set(We,Tr),mt(We)?We.forEach(function(wa){Tr.add(ye(wa,Kr,Wi,wa,We,kr))}):ft(We)&&We.forEach(function(wa,qr){Tr.set(qr,ye(wa,Kr,Wi,qr,We,kr))});var ya=Zi?as?P:_:as?Tt:yt,aa=ss?void 0:ya(We);return z(aa||We,function(wa,qr){aa&&(qr=wa,wa=We[qr]),D(Tr,qr,ye(wa,Kr,Wi,qr,We,kr))}),Tr}X.exports=ye},44107:function(X,nt,M){var F=M(1585),z=M(49164),D=z(F);X.exports=D},2659:function(X,nt,M){var F=M(45029);function z(D,N,O){for(var k=-1,U=D.length;++k<U;){var L=D[k],Q=N(L);if(Q!=null&&(_===void 0?Q===Q&&!F(Q):O(Q,_)))var _=Q,P=L}return P}X.exports=z},32872:function(X,nt,M){var F=M(44107);function z(D,N){var O=[];return F(D,function(k,U,L){N(k,U,L)&&O.push(k)}),O}X.exports=z},51533:function(X){function nt(M,F,z,D){for(var N=M.length,O=z+(D?1:-1);D?O--:++O<N;)if(F(M[O],O,M))return O;return-1}X.exports=nt},9256:function(X,nt,M){var F=M(57095),z=M(88133);function D(N,O,k,U,L){var Q=-1,_=N.length;for(k||(k=z),L||(L=[]);++Q<_;){var P=N[Q];O>0&&k(P)?O>1?D(P,O-1,k,U,L):F(L,P):U||(L[L.length]=P)}return L}X.exports=D},1585:function(X,nt,M){var F=M(14018),z=M(55451);function D(N,O){return N&&F(N,O,z)}X.exports=D},89147:function(X,nt,M){var F=M(1186),z=M(9171);function D(N,O){O=F(O,N);for(var k=0,U=O.length;N!=null&&k<U;)N=N[z(O[k++])];return k&&k==U?N:void 0}X.exports=D},75635:function(X,nt,M){var F=M(57095),z=M(80744);function D(N,O,k){var U=O(N);return z(N)?U:F(U,k(N))}X.exports=D},40302:function(X){function nt(M,F){return M>F}X.exports=nt},3251:function(X){var nt=Object.prototype,M=nt.hasOwnProperty;function F(z,D){return z!=null&&M.call(z,D)}X.exports=F},62348:function(X){function nt(M,F){return M!=null&&F in Object(M)}X.exports=nt},17424:function(X,nt,M){var F=M(51533),z=M(8373),D=M(49237);function N(O,k,U){return k===k?D(O,k,U):F(O,z,U)}X.exports=N},77295:function(X,nt,M){var F=M(84412),z=M(93913);function D(N,O,k,U,L){return N===O?!0:N==null||O==null||!z(N)&&!z(O)?N!==N&&O!==O:F(N,O,k,U,D,L)}X.exports=D},84412:function(X,nt,M){var F=M(91866),z=M(50401),D=M(57710),N=M(4983),O=M(66139),k=M(80744),U=M(57835),L=M(18397),Q=1,_="[object Arguments]",P="[object Array]",Z="[object Object]",tt=Object.prototype,$=tt.hasOwnProperty;function lt(At,rt,ft,ht,mt,yt){var Tt=k(At),xt=k(rt),Nt=Tt?P:O(At),bt=xt?P:O(rt);Nt=Nt==_?Z:Nt,bt=bt==_?Z:bt;var Lt=Nt==Z,Kt=bt==Z,$t=Nt==bt;if($t&&U(At)){if(!U(rt))return!1;Tt=!0,Lt=!1}if($t&&!Lt)return yt||(yt=new F),Tt||L(At)?z(At,rt,ft,ht,mt,yt):D(At,rt,Nt,ft,ht,mt,yt);if(!(ft&Q)){var oe=Lt&&$.call(At,"__wrapped__"),fe=Kt&&$.call(rt,"__wrapped__");if(oe||fe){var He=oe?At.value():At,rn=fe?rt.value():rt;return yt||(yt=new F),mt(He,rn,ft,ht,yt)}}return $t?(yt||(yt=new F),N(At,rt,ft,ht,mt,yt)):!1}X.exports=lt},55005:function(X,nt,M){var F=M(66139),z=M(93913),D="[object Map]";function N(O){return z(O)&&F(O)==D}X.exports=N},51524:function(X,nt,M){var F=M(91866),z=M(77295),D=1,N=2;function O(k,U,L,Q){var _=L.length,P=_,Z=!Q;if(k==null)return!P;for(k=Object(k);_--;){var tt=L[_];if(Z&&tt[2]?tt[1]!==k[tt[0]]:!(tt[0]in k))return!1}for(;++_<P;){tt=L[_];var $=tt[0],lt=k[$],At=tt[1];if(Z&&tt[2]){if(lt===void 0&&!($ in k))return!1}else{var rt=new F;if(Q)var ft=Q(lt,At,$,k,U,rt);if(!(ft===void 0?z(At,lt,D|N,Q,rt):ft))return!1}}return!0}X.exports=O},8373:function(X){function nt(M){return M!==M}X.exports=nt},38652:function(X,nt,M){var F=M(66139),z=M(93913),D="[object Set]";function N(O){return z(O)&&F(O)==D}X.exports=N},95979:function(X,nt,M){var F=M(17632),z=M(38933),D=M(46962),N=M(80744),O=M(35769);function k(U){return typeof U=="function"?U:U==null?D:typeof U=="object"?N(U)?z(U[0],U[1]):F(U):O(U)}X.exports=k},6019:function(X,nt,M){var F=M(7975),z=M(23730),D=Object.prototype,N=D.hasOwnProperty;function O(k){if(!F(k))return z(k);var U=[];for(var L in Object(k))N.call(k,L)&&L!="constructor"&&U.push(L);return U}X.exports=O},93757:function(X){function nt(M,F){return M<F}X.exports=nt},65487:function(X,nt,M){var F=M(44107),z=M(24665);function D(N,O){var k=-1,U=z(N)?Array(N.length):[];return F(N,function(L,Q,_){U[++k]=O(L,Q,_)}),U}X.exports=D},17632:function(X,nt,M){var F=M(51524),z=M(10261),D=M(24122);function N(O){var k=z(O);return k.length==1&&k[0][2]?D(k[0][0],k[0][1]):function(U){return U===O||F(U,O,k)}}X.exports=N},38933:function(X,nt,M){var F=M(77295),z=M(44231),D=M(37879),N=M(86773),O=M(88411),k=M(24122),U=M(9171),L=1,Q=2;function _(P,Z){return N(P)&&O(Z)?k(U(P),Z):function(tt){var $=z(tt,P);return $===void 0&&$===Z?D(tt,P):F(Z,$,L|Q)}}X.exports=_},58506:function(X,nt,M){var F=M(75010),z=M(89147),D=M(95979),N=M(65487),O=M(33065),k=M(38342),U=M(11249),L=M(46962),Q=M(80744);function _(P,Z,tt){Z.length?Z=F(Z,function(At){return Q(At)?function(rt){return z(rt,At.length===1?At[0]:At)}:At}):Z=[L];var $=-1;Z=F(Z,k(D));var lt=N(P,function(At,rt,ft){var ht=F(Z,function(mt){return mt(At)});return{criteria:ht,index:++$,value:At}});return O(lt,function(At,rt){return U(At,rt,tt)})}X.exports=_},88832:function(X,nt,M){var F=M(10867),z=M(37879);function D(N,O){return F(N,O,function(k,U){return z(N,U)})}X.exports=D},10867:function(X,nt,M){var F=M(89147),z=M(36897),D=M(1186);function N(O,k,U){for(var L=-1,Q=k.length,_={};++L<Q;){var P=k[L],Z=F(O,P);U(Z,P)&&z(_,D(P,O),Z)}return _}X.exports=N},22310:function(X){function nt(M){return function(F){return F==null?void 0:F[M]}}X.exports=nt},96916:function(X,nt,M){var F=M(89147);function z(D){return function(N){return F(N,D)}}X.exports=z},36121:function(X){var nt=Math.ceil,M=Math.max;function F(z,D,N,O){for(var k=-1,U=M(nt((D-z)/(N||1)),0),L=Array(U);U--;)L[O?U:++k]=z,z+=N;return L}X.exports=F},30739:function(X){function nt(M,F,z,D,N){return N(M,function(O,k,U){z=D?(D=!1,O):F(z,O,k,U)}),z}X.exports=nt},36897:function(X,nt,M){var F=M(60348),z=M(1186),D=M(70213),N=M(20816),O=M(9171);function k(U,L,Q,_){if(!N(U))return U;L=z(L,U);for(var P=-1,Z=L.length,tt=Z-1,$=U;$!=null&&++P<Z;){var lt=O(L[P]),At=Q;if(lt==="__proto__"||lt==="constructor"||lt==="prototype")return U;if(P!=tt){var rt=$[lt];At=_?_(rt,lt,$):void 0,At===void 0&&(At=N(rt)?rt:D(L[P+1])?[]:{})}F($,lt,At),$=$[lt]}return U}X.exports=k},33065:function(X){function nt(M,F){var z=M.length;for(M.sort(F);z--;)M[z]=M[z].value;return M}X.exports=nt},50230:function(X,nt,M){var F=M(91869),z=M(75010),D=M(80744),N=M(45029),O=1/0,k=F?F.prototype:void 0,U=k?k.toString:void 0;function L(Q){if(typeof Q=="string")return Q;if(D(Q))return z(Q,L)+"";if(N(Q))return U?U.call(Q):"";var _=Q+"";return _=="0"&&1/Q==-O?"-0":_}X.exports=L},13927:function(X,nt,M){var F=M(15333),z=/^\s+/;function D(N){return N&&N.slice(0,F(N)+1).replace(z,"")}X.exports=D},29098:function(X,nt,M){var F=M(98924),z=M(84271),D=M(94874),N=M(1931),O=M(47506),k=M(79679),U=200;function L(Q,_,P){var Z=-1,tt=z,$=Q.length,lt=!0,At=[],rt=At;if(P)lt=!1,tt=D;else if($>=U){var ft=_?null:O(Q);if(ft)return k(ft);lt=!1,tt=N,rt=new F}else rt=_?[]:At;t:for(;++Z<$;){var ht=Q[Z],mt=_?_(ht):ht;if(ht=P||ht!==0?ht:0,lt&&mt===mt){for(var yt=rt.length;yt--;)if(rt[yt]===mt)continue t;_&&rt.push(mt),At.push(ht)}else tt(rt,mt,P)||(rt!==At&&rt.push(mt),At.push(ht))}return At}X.exports=L},20720:function(X,nt,M){var F=M(75010);function z(D,N){return F(N,function(O){return D[O]})}X.exports=z},94484:function(X){function nt(M,F,z){for(var D=-1,N=M.length,O=F.length,k={};++D<N;){var U=D<O?F[D]:void 0;z(k,M[D],U)}return k}X.exports=nt},1931:function(X){function nt(M,F){return M.has(F)}X.exports=nt},11756:function(X,nt,M){var F=M(46962);function z(D){return typeof D=="function"?D:F}X.exports=z},1186:function(X,nt,M){var F=M(80744),z=M(86773),D=M(40493),N=M(44140);function O(k,U){return F(k)?k:z(k,U)?[k]:D(N(k))}X.exports=O},27984:function(X,nt,M){var F=M(20188);function z(D,N){var O=N?F(D.buffer):D.buffer;return new D.constructor(O,D.byteOffset,D.byteLength)}X.exports=z},32853:function(X){var nt=/\w*$/;function M(F){var z=new F.constructor(F.source,nt.exec(F));return z.lastIndex=F.lastIndex,z}X.exports=M},28757:function(X,nt,M){var F=M(91869),z=F?F.prototype:void 0,D=z?z.valueOf:void 0;function N(O){return D?Object(D.call(O)):{}}X.exports=N},83018:function(X,nt,M){var F=M(45029);function z(D,N){if(D!==N){var O=D!==void 0,k=D===null,U=D===D,L=F(D),Q=N!==void 0,_=N===null,P=N===N,Z=F(N);if(!_&&!Z&&!L&&D>N||L&&Q&&P&&!_&&!Z||k&&Q&&P||!O&&P||!U)return 1;if(!k&&!L&&!Z&&D<N||Z&&O&&U&&!k&&!L||_&&O&&U||!Q&&U||!P)return-1}return 0}X.exports=z},11249:function(X,nt,M){var F=M(83018);function z(D,N,O){for(var k=-1,U=D.criteria,L=N.criteria,Q=U.length,_=O.length;++k<Q;){var P=F(U[k],L[k]);if(P){if(k>=_)return P;var Z=O[k];return P*(Z=="desc"?-1:1)}}return D.index-N.index}X.exports=z},15168:function(X,nt,M){var F=M(95378),z=M(58966);function D(N,O){return F(N,z(N),O)}X.exports=D},71678:function(X,nt,M){var F=M(95378),z=M(66817);function D(N,O){return F(N,z(N),O)}X.exports=D},49164:function(X,nt,M){var F=M(24665);function z(D,N){return function(O,k){if(O==null)return O;if(!F(O))return D(O,k);for(var U=O.length,L=N?U:-1,Q=Object(O);(N?L--:++L<U)&&k(Q[L],L,Q)!==!1;);return O}}X.exports=z},19554:function(X,nt,M){var F=M(95979),z=M(24665),D=M(55451);function N(O){return function(k,U,L){var Q=Object(k);if(!z(k)){var _=F(U,3);k=D(k),U=function(Z){return _(Q[Z],Z,Q)}}var P=O(k,U,L);return P>-1?Q[_?k[P]:P]:void 0}}X.exports=N},76106:function(X,nt,M){var F=M(36121),z=M(8138),D=M(97341);function N(O){return function(k,U,L){return L&&typeof L!="number"&&z(k,U,L)&&(U=L=void 0),k=D(k),U===void 0?(U=k,k=0):U=D(U),L=L===void 0?k<U?1:-1:D(L),F(k,U,L,O)}}X.exports=N},47506:function(X,nt,M){var F=M(23599),z=M(9958),D=M(79679),N=1/0,O=F&&1/D(new F([,-0]))[1]==N?function(k){return new F(k)}:z;X.exports=O},50401:function(X,nt,M){var F=M(98924),z=M(64045),D=M(1931),N=1,O=2;function k(U,L,Q,_,P,Z){var tt=Q&N,$=U.length,lt=L.length;if($!=lt&&!(tt&<>$))return!1;var At=Z.get(U),rt=Z.get(L);if(At&&rt)return At==L&&rt==U;var ft=-1,ht=!0,mt=Q&O?new F:void 0;for(Z.set(U,L),Z.set(L,U);++ft<$;){var yt=U[ft],Tt=L[ft];if(_)var xt=tt?_(Tt,yt,ft,L,U,Z):_(yt,Tt,ft,U,L,Z);if(xt!==void 0){if(xt)continue;ht=!1;break}if(mt){if(!z(L,function(Nt,bt){if(!D(mt,bt)&&(yt===Nt||P(yt,Nt,Q,_,Z)))return mt.push(bt)})){ht=!1;break}}else if(!(yt===Tt||P(yt,Tt,Q,_,Z))){ht=!1;break}}return Z.delete(U),Z.delete(L),ht}X.exports=k},57710:function(X,nt,M){var F=M(91869),z=M(77945),D=M(43607),N=M(50401),O=M(83383),k=M(79679),U=1,L=2,Q="[object Boolean]",_="[object Date]",P="[object Error]",Z="[object Map]",tt="[object Number]",$="[object RegExp]",lt="[object Set]",At="[object String]",rt="[object Symbol]",ft="[object ArrayBuffer]",ht="[object DataView]",mt=F?F.prototype:void 0,yt=mt?mt.valueOf:void 0;function Tt(xt,Nt,bt,Lt,Kt,$t,oe){switch(bt){case ht:if(xt.byteLength!=Nt.byteLength||xt.byteOffset!=Nt.byteOffset)return!1;xt=xt.buffer,Nt=Nt.buffer;case ft:return!(xt.byteLength!=Nt.byteLength||!$t(new z(xt),new z(Nt)));case Q:case _:case tt:return D(+xt,+Nt);case P:return xt.name==Nt.name&&xt.message==Nt.message;case $:case At:return xt==Nt+"";case Z:var fe=O;case lt:var He=Lt&U;if(fe||(fe=k),xt.size!=Nt.size&&!He)return!1;var rn=oe.get(xt);if(rn)return rn==Nt;Lt|=L,oe.set(xt,Nt);var Dn=N(fe(xt),fe(Nt),Lt,Kt,$t,oe);return oe.delete(xt),Dn;case rt:if(yt)return yt.call(xt)==yt.call(Nt)}return!1}X.exports=Tt},4983:function(X,nt,M){var F=M(12076),z=1,D=Object.prototype,N=D.hasOwnProperty;function O(k,U,L,Q,_,P){var Z=L&z,tt=F(k),$=tt.length,lt=F(U),At=lt.length;if($!=At&&!Z)return!1;for(var rt=$;rt--;){var ft=tt[rt];if(!(Z?ft in U:N.call(U,ft)))return!1}var ht=P.get(k),mt=P.get(U);if(ht&&mt)return ht==U&&mt==k;var yt=!0;P.set(k,U),P.set(U,k);for(var Tt=Z;++rt<$;){ft=tt[rt];var xt=k[ft],Nt=U[ft];if(Q)var bt=Z?Q(Nt,xt,ft,U,k,P):Q(xt,Nt,ft,k,U,P);if(!(bt===void 0?xt===Nt||_(xt,Nt,L,Q,P):bt)){yt=!1;break}Tt||(Tt=ft=="constructor")}if(yt&&!Tt){var Lt=k.constructor,Kt=U.constructor;Lt!=Kt&&"constructor"in k&&"constructor"in U&&!(typeof Lt=="function"&&Lt instanceof Lt&&typeof Kt=="function"&&Kt instanceof Kt)&&(yt=!1)}return P.delete(k),P.delete(U),yt}X.exports=O},522:function(X,nt,M){var F=M(40151),z=M(19652),D=M(71152);function N(O){return D(z(O,void 0,F),O+"")}X.exports=N},12076:function(X,nt,M){var F=M(75635),z=M(58966),D=M(55451);function N(O){return F(O,D,z)}X.exports=N},22675:function(X,nt,M){var F=M(75635),z=M(66817),D=M(56730);function N(O){return F(O,D,z)}X.exports=N},10261:function(X,nt,M){var F=M(88411),z=M(55451);function D(N){for(var O=z(N),k=O.length;k--;){var U=O[k],L=N[U];O[k]=[U,L,F(L)]}return O}X.exports=D},58966:function(X,nt,M){var F=M(86952),z=M(4134),D=Object.prototype,N=D.propertyIsEnumerable,O=Object.getOwnPropertySymbols,k=O?function(U){return U==null?[]:(U=Object(U),F(O(U),function(L){return N.call(U,L)}))}:z;X.exports=k},66817:function(X,nt,M){var F=M(57095),z=M(49217),D=M(58966),N=M(4134),O=Object.getOwnPropertySymbols,k=O?function(U){for(var L=[];U;)F(L,D(U)),U=z(U);return L}:N;X.exports=k},66139:function(X,nt,M){var F=M(15584),z=M(40164),D=M(97288),N=M(23599),O=M(26873),k=M(86756),U=M(63256),L="[object Map]",Q="[object Object]",_="[object Promise]",P="[object Set]",Z="[object WeakMap]",tt="[object DataView]",$=U(F),lt=U(z),At=U(D),rt=U(N),ft=U(O),ht=k;(F&&ht(new F(new ArrayBuffer(1)))!=tt||z&&ht(new z)!=L||D&&ht(D.resolve())!=_||N&&ht(new N)!=P||O&&ht(new O)!=Z)&&(ht=function(mt){var yt=k(mt),Tt=yt==Q?mt.constructor:void 0,xt=Tt?U(Tt):"";if(xt)switch(xt){case $:return tt;case lt:return L;case At:return _;case rt:return P;case ft:return Z}return yt}),X.exports=ht},63100:function(X,nt,M){var F=M(1186),z=M(13053),D=M(80744),N=M(70213),O=M(11156),k=M(9171);function U(L,Q,_){Q=F(Q,L);for(var P=-1,Z=Q.length,tt=!1;++P<Z;){var $=k(Q[P]);if(!(tt=L!=null&&_(L,$)))break;L=L[$]}return tt||++P!=Z?tt:(Z=L==null?0:L.length,!!Z&&O(Z)&&N($,Z)&&(D(L)||z(L)))}X.exports=U},55015:function(X){var nt="\\ud800-\\udfff",M="\\u0300-\\u036f",F="\\ufe20-\\ufe2f",z="\\u20d0-\\u20ff",D=M+F+z,N="\\ufe0e\\ufe0f",O="\\u200d",k=RegExp("["+O+nt+D+N+"]");function U(L){return k.test(L)}X.exports=U},79264:function(X){var nt=Object.prototype,M=nt.hasOwnProperty;function F(z){var D=z.length,N=new z.constructor(D);return D&&typeof z[0]=="string"&&M.call(z,"index")&&(N.index=z.index,N.input=z.input),N}X.exports=F},97541:function(X,nt,M){var F=M(20188),z=M(27984),D=M(32853),N=M(28757),O=M(78358),k="[object Boolean]",U="[object Date]",L="[object Map]",Q="[object Number]",_="[object RegExp]",P="[object Set]",Z="[object String]",tt="[object Symbol]",$="[object ArrayBuffer]",lt="[object DataView]",At="[object Float32Array]",rt="[object Float64Array]",ft="[object Int8Array]",ht="[object Int16Array]",mt="[object Int32Array]",yt="[object Uint8Array]",Tt="[object Uint8ClampedArray]",xt="[object Uint16Array]",Nt="[object Uint32Array]";function bt(Lt,Kt,$t){var oe=Lt.constructor;switch(Kt){case $:return F(Lt);case k:case U:return new oe(+Lt);case lt:return z(Lt,$t);case At:case rt:case ft:case ht:case mt:case yt:case Tt:case xt:case Nt:return O(Lt,$t);case L:return new oe;case Q:case Z:return new oe(Lt);case _:return D(Lt);case P:return new oe;case tt:return N(Lt)}}X.exports=bt},88133:function(X,nt,M){var F=M(91869),z=M(13053),D=M(80744),N=F?F.isConcatSpreadable:void 0;function O(k){return D(k)||z(k)||!!(N&&k&&k[N])}X.exports=O},86773:function(X,nt,M){var F=M(80744),z=M(45029),D=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,N=/^\w*$/;function O(k,U){if(F(k))return!1;var L=typeof k;return L=="number"||L=="symbol"||L=="boolean"||k==null||z(k)?!0:N.test(k)||!D.test(k)||U!=null&&k in Object(U)}X.exports=O},88411:function(X,nt,M){var F=M(20816);function z(D){return D===D&&!F(D)}X.exports=z},83383:function(X){function nt(M){var F=-1,z=Array(M.size);return M.forEach(function(D,N){z[++F]=[N,D]}),z}X.exports=nt},24122:function(X){function nt(M,F){return function(z){return z==null?!1:z[M]===F&&(F!==void 0||M in Object(z))}}X.exports=nt},26332:function(X,nt,M){var F=M(52858),z=500;function D(N){var O=F(N,function(U){return k.size===z&&k.clear(),U}),k=O.cache;return O}X.exports=D},23730:function(X,nt,M){var F=M(31030),z=F(Object.keys,Object);X.exports=z},34776:function(X){var nt="__lodash_hash_undefined__";function M(F){return this.__data__.set(F,nt),this}X.exports=M},40393:function(X){function nt(M){return this.__data__.has(M)}X.exports=nt},79679:function(X){function nt(M){var F=-1,z=Array(M.size);return M.forEach(function(D){z[++F]=D}),z}X.exports=nt},49237:function(X){function nt(M,F,z){for(var D=z-1,N=M.length;++D<N;)if(M[D]===F)return D;return-1}X.exports=nt},29405:function(X,nt,M){var F=M(26539),z=M(55015),D=M(60844);function N(O){return z(O)?D(O):F(O)}X.exports=N},40493:function(X,nt,M){var F=M(26332),z=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,D=/\\(\\)?/g,N=F(function(O){var k=[];return O.charCodeAt(0)===46&&k.push(""),O.replace(z,function(U,L,Q,_){k.push(Q?_.replace(D,"$1"):L||U)}),k});X.exports=N},9171:function(X,nt,M){var F=M(45029),z=1/0;function D(N){if(typeof N=="string"||F(N))return N;var O=N+"";return O=="0"&&1/N==-z?"-0":O}X.exports=D},15333:function(X){var nt=/\s/;function M(F){for(var z=F.length;z--&&nt.test(F.charAt(z)););return z}X.exports=M},60844:function(X){var nt="\\ud800-\\udfff",M="\\u0300-\\u036f",F="\\ufe20-\\ufe2f",z="\\u20d0-\\u20ff",D=M+F+z,N="\\ufe0e\\ufe0f",O="["+nt+"]",k="["+D+"]",U="\\ud83c[\\udffb-\\udfff]",L="(?:"+k+"|"+U+")",Q="[^"+nt+"]",_="(?:\\ud83c[\\udde6-\\uddff]){2}",P="[\\ud800-\\udbff][\\udc00-\\udfff]",Z="\\u200d",tt=L+"?",$="["+N+"]?",lt="(?:"+Z+"(?:"+[Q,_,P].join("|")+")"+$+tt+")*",At=$+tt+lt,rt="(?:"+[Q+k+"?",k,_,P,O].join("|")+")",ft=RegExp(U+"(?="+U+")|"+rt+At,"g");function ht(mt){for(var yt=ft.lastIndex=0;ft.test(mt);)++yt;return yt}X.exports=ht},76833:function(X,nt,M){var F=M(99045),z=4;function D(N){return F(N,z)}X.exports=D},20250:function(X,nt,M){var F=M(99045),z=1,D=4;function N(O){return F(O,z|D)}X.exports=N},28548:function(X,nt,M){var F=M(92918),z=M(43607),D=M(8138),N=M(56730),O=Object.prototype,k=O.hasOwnProperty,U=F(function(L,Q){L=Object(L);var _=-1,P=Q.length,Z=P>2?Q[2]:void 0;for(Z&&D(Q[0],Q[1],Z)&&(P=1);++_<P;)for(var tt=Q[_],$=N(tt),lt=-1,At=$.length;++lt<At;){var rt=$[lt],ft=L[rt];(ft===void 0||z(ft,O[rt])&&!k.call(L,rt))&&(L[rt]=tt[rt])}return L});X.exports=U},76934:function(X,nt,M){X.exports=M(99204)},64725:function(X,nt,M){var F=M(86952),z=M(32872),D=M(95979),N=M(80744);function O(k,U){var L=N(k)?F:z;return L(k,D(U,3))}X.exports=O},79785:function(X,nt,M){var F=M(19554),z=M(9991),D=F(z);X.exports=D},9991:function(X,nt,M){var F=M(51533),z=M(95979),D=M(12824),N=Math.max;function O(k,U,L){var Q=k==null?0:k.length;if(!Q)return-1;var _=L==null?0:D(L);return _<0&&(_=N(Q+_,0)),F(k,z(U,3),_)}X.exports=O},40151:function(X,nt,M){var F=M(9256);function z(D){var N=D==null?0:D.length;return N?F(D,1):[]}X.exports=z},99204:function(X,nt,M){var F=M(74809),z=M(44107),D=M(11756),N=M(80744);function O(k,U){var L=N(k)?F:z;return L(k,D(U))}X.exports=O},23190:function(X,nt,M){var F=M(14018),z=M(11756),D=M(56730);function N(O,k){return O==null?O:F(O,z(k),D)}X.exports=N},44231:function(X,nt,M){var F=M(89147);function z(D,N,O){var k=D==null?void 0:F(D,N);return k===void 0?O:k}X.exports=z},99946:function(X,nt,M){var F=M(3251),z=M(63100);function D(N,O){return N!=null&&z(N,O,F)}X.exports=D},37879:function(X,nt,M){var F=M(62348),z=M(63100);function D(N,O){return N!=null&&z(N,O,F)}X.exports=D},61627:function(X,nt,M){var F=M(6019),z=M(66139),D=M(13053),N=M(80744),O=M(24665),k=M(57835),U=M(7975),L=M(18397),Q="[object Map]",_="[object Set]",P=Object.prototype,Z=P.hasOwnProperty;function tt($){if($==null)return!0;if(O($)&&(N($)||typeof $=="string"||typeof $.splice=="function"||k($)||L($)||D($)))return!$.length;var lt=z($);if(lt==Q||lt==_)return!$.size;if(U($))return!F($).length;for(var At in $)if(Z.call($,At))return!1;return!0}X.exports=tt},41626:function(X,nt,M){var F=M(55005),z=M(38342),D=M(52495),N=D&&D.isMap,O=N?z(N):F;X.exports=O},65226:function(X,nt,M){var F=M(38652),z=M(38342),D=M(52495),N=D&&D.isSet,O=N?z(N):F;X.exports=O},7941:function(X,nt,M){var F=M(86756),z=M(80744),D=M(93913),N="[object String]";function O(k){return typeof k=="string"||!z(k)&&D(k)&&F(k)==N}X.exports=O},45029:function(X,nt,M){var F=M(86756),z=M(93913),D="[object Symbol]";function N(O){return typeof O=="symbol"||z(O)&&F(O)==D}X.exports=N},16513:function(X){function nt(M){return M===void 0}X.exports=nt},55451:function(X,nt,M){var F=M(63333),z=M(6019),D=M(24665);function N(O){return D(O)?F(O):z(O)}X.exports=N},10611:function(X){function nt(M){var F=M==null?0:M.length;return F?M[F-1]:void 0}X.exports=nt},9924:function(X,nt,M){var F=M(75010),z=M(95979),D=M(65487),N=M(80744);function O(k,U){var L=N(k)?F:D;return L(k,z(U,3))}X.exports=O},70642:function(X,nt,M){var F=M(42813),z=M(1585),D=M(95979);function N(O,k){var U={};return k=D(k,3),z(O,function(L,Q,_){F(U,Q,k(L,Q,_))}),U}X.exports=N},95987:function(X,nt,M){var F=M(2659),z=M(40302),D=M(46962);function N(O){return O&&O.length?F(O,D,z):void 0}X.exports=N},52858:function(X,nt,M){var F=M(52166),z="Expected a function";function D(N,O){if(typeof N!="function"||O!=null&&typeof O!="function")throw new TypeError(z);var k=function(){var U=arguments,L=O?O.apply(this,U):U[0],Q=k.cache;if(Q.has(L))return Q.get(L);var _=N.apply(this,U);return k.cache=Q.set(L,_)||Q,_};return k.cache=new(D.Cache||F),k}D.Cache=F,X.exports=D},73376:function(X,nt,M){var F=M(2659),z=M(93757),D=M(46962);function N(O){return O&&O.length?F(O,D,z):void 0}X.exports=N},83296:function(X,nt,M){var F=M(2659),z=M(95979),D=M(93757);function N(O,k){return O&&O.length?F(O,z(k,2),D):void 0}X.exports=N},9958:function(X){function nt(){}X.exports=nt},5795:function(X,nt,M){var F=M(33152),z=function(){return F.Date.now()};X.exports=z},89409:function(X,nt,M){var F=M(88832),z=M(522),D=z(function(N,O){return N==null?{}:F(N,O)});X.exports=D},35769:function(X,nt,M){var F=M(22310),z=M(96916),D=M(86773),N=M(9171);function O(k){return D(k)?F(N(k)):z(k)}X.exports=O},60859:function(X,nt,M){var F=M(76106),z=F();X.exports=z},93410:function(X,nt,M){var F=M(99861),z=M(44107),D=M(95979),N=M(30739),O=M(80744);function k(U,L,Q){var _=O(U)?F:N,P=arguments.length<3;return _(U,D(L,4),Q,P,z)}X.exports=k},40617:function(X,nt,M){var F=M(6019),z=M(66139),D=M(24665),N=M(7941),O=M(29405),k="[object Map]",U="[object Set]";function L(Q){if(Q==null)return 0;if(D(Q))return N(Q)?O(Q):Q.length;var _=z(Q);return _==k||_==U?Q.size:F(Q).length}X.exports=L},351:function(X,nt,M){var F=M(9256),z=M(58506),D=M(92918),N=M(8138),O=D(function(k,U){if(k==null)return[];var L=U.length;return L>1&&N(k,U[0],U[1])?U=[]:L>2&&N(U[0],U[1],U[2])&&(U=[U[0]]),z(k,F(U,1),[])});X.exports=O},4134:function(X){function nt(){return[]}X.exports=nt},97341:function(X,nt,M){var F=M(59406),z=1/0,D=17976931348623157e292;function N(O){if(!O)return O===0?O:0;if(O=F(O),O===z||O===-z){var k=O<0?-1:1;return k*D}return O===O?O:0}X.exports=N},12824:function(X,nt,M){var F=M(97341);function z(D){var N=F(D),O=N%1;return N===N?O?N-O:N:0}X.exports=z},59406:function(X,nt,M){var F=M(13927),z=M(20816),D=M(45029),N=NaN,O=/^[-+]0x[0-9a-f]+$/i,k=/^0b[01]+$/i,U=/^0o[0-7]+$/i,L=parseInt;function Q(_){if(typeof _=="number")return _;if(D(_))return N;if(z(_)){var P=typeof _.valueOf=="function"?_.valueOf():_;_=z(P)?P+"":P}if(typeof _!="string")return _===0?_:+_;_=F(_);var Z=k.test(_);return Z||U.test(_)?L(_.slice(2),Z?2:8):O.test(_)?N:+_}X.exports=Q},44140:function(X,nt,M){var F=M(50230);function z(D){return D==null?"":F(D)}X.exports=z},91116:function(X,nt,M){var F=M(74809),z=M(35024),D=M(1585),N=M(95979),O=M(49217),k=M(80744),U=M(57835),L=M(9363),Q=M(20816),_=M(18397);function P(Z,tt,$){var lt=k(Z),At=lt||U(Z)||_(Z);if(tt=N(tt,4),$==null){var rt=Z&&Z.constructor;At?$=lt?new rt:[]:Q(Z)?$=L(rt)?z(O(Z)):{}:$={}}return(At?F:D)(Z,function(ft,ht,mt){return tt($,ft,ht,mt)}),$}X.exports=P},44065:function(X,nt,M){var F=M(9256),z=M(92918),D=M(29098),N=M(41590),O=z(function(k){return D(F(k,1,N,!0))});X.exports=O},95708:function(X,nt,M){var F=M(44140),z=0;function D(N){var O=++z;return F(N)+O}X.exports=D},81229:function(X,nt,M){var F=M(20720),z=M(55451);function D(N){return N==null?[]:F(N,z(N))}X.exports=D},65441:function(X,nt,M){var F=M(60348),z=M(94484);function D(N,O){return z(N||[],O||[],F)}X.exports=D},34402:function(X,nt,M){"use strict";M.r(nt),M.d(nt,{default:function(){return N}});var F=M(34634);function z(O){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!(0,F.isAnyArray)(O))throw new TypeError("input must be an array");if(O.length===0)throw new TypeError("input must not be empty");var U=k.fromIndex,L=U===void 0?0:U,Q=k.toIndex,_=Q===void 0?O.length:Q;if(L<0||L>=O.length||!Number.isInteger(L))throw new Error("fromIndex must be a positive integer smaller than length");if(_<=L||_>O.length||!Number.isInteger(_))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var P=O[L],Z=L+1;Z<_;Z++)O[Z]>P&&(P=O[Z]);return P}function D(O){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!(0,F.isAnyArray)(O))throw new TypeError("input must be an array");if(O.length===0)throw new TypeError("input must not be empty");var U=k.fromIndex,L=U===void 0?0:U,Q=k.toIndex,_=Q===void 0?O.length:Q;if(L<0||L>=O.length||!Number.isInteger(L))throw new Error("fromIndex must be a positive integer smaller than length");if(_<=L||_>O.length||!Number.isInteger(_))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var P=O[L],Z=L+1;Z<_;Z++)O[Z]<P&&(P=O[Z]);return P}function N(O){var k=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if((0,F.isAnyArray)(O)){if(O.length===0)throw new TypeError("input must not be empty")}else throw new TypeError("input must be an array");var U;if(k.output!==void 0){if(!(0,F.isAnyArray)(k.output))throw new TypeError("output option must be an array if specified");U=k.output}else U=new Array(O.length);var L=D(O),Q=z(O);if(L===Q)throw new RangeError("minimum and maximum input values are equal. Cannot rescale a constant array");var _=k.min,P=_===void 0?k.autoMinMax?L:0:_,Z=k.max,tt=Z===void 0?k.autoMinMax?Q:1:Z;if(P>=tt)throw new RangeError("min option must be smaller than max option");for(var $=(tt-P)/(Q-L),lt=0;lt<O.length;lt++)U[lt]=(O[lt]-L)*$+P;return U}},81683:function(X,nt,M){"use strict";var F=M(55973),z=Array.prototype.concat,D=Array.prototype.slice,N=X.exports=function(k){for(var U=[],L=0,Q=k.length;L<Q;L++){var _=k[L];F(_)?U=z.call(U,D.call(_)):U.push(_)}return U};N.wrap=function(O){return function(){return O(N(arguments))}}},99755:function(X){"use strict";X.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFQAAABSCAYAAADKMvPcAAAAAXNSR0IArs4c6QAAFkdJREFUeF7NXXlsHNd5/2Z3Z3e5S3J5LClREklJlGxZtmzJUVo0boEICdI2BYICrQQ0PaJaV2JZSOO6NtC/+EfbFC36T902QBpFllxbDYXayFH1MArXQRugKIIojmQ7kSlKpMX7Wh6z3B3uvuJ7b76ZNzNvDl6ulqZI7szOfO/3ft/93lgDz+vP2ZuFHsh37YSOhkZIJ7zHN+NvHQAMMKEOrD4O8+YirCw0wNj9E9qJ2lqv389YoqP8/Z3bkoXmgpZPt+q6loa0Rtcxwy4YcBDl87/wXRMqwOr3K/OVCbN8/1zb0ZL3PPvGjDHtCvzX/r3Q1WQAfpmA9xP/bu4LRdOtrxzogN8MUuxOZXyxmimP/L52bCXqjv1sIN0De3b1mvkWTU9rhomSkrRRUqshs+8pDdk5E+UE0HUdCpDjv9+oTc3+XsMTQ7KsHFAE8zL898ECNGenoQQlG1BZyKghxjsuBEQ4gQOJoqGA+F3Ed0yAH+oj989rx8aDrvg37H/aHzGbesu6ppVMw5ZXkECgYWOi5EMEoNIFhKQosZA6ZwGKsnbpObhZG536QsPRYZKVA/rX7D/62iHfMgYlwG8EFL8/CoaK2dahCAUOaJf1832YmD+pPTXoBfVvjbe7e1OtndNgAH1zAkgMVWIYqGhRbBWQyoCinEU9Bz1QgHZoYO/lpn9yTjvK76D1s+/mdkPLI8NQgmGYBsFQ0+IozfRmqr0koCkU32aoLgDtgSL/OVKdXP585hPvE6hfK7+1e3uyvR1lxYnnspqmzVBOLElU+lUJGT8YBqb7mA2oJS+yEwHt04tQWl1c+O3Ckdsc0L9g1/tqUG8ZhGkOqGCnV3U2D1BSIT4cDigOC1VeAItAclB1AeoNY2TsxfxnRr86/73Wnlxx7xgYXE78KdQdJ9/kSMpSqsG0QPINxwMsHhc+yAU6gYqyFnUEU3x3QzP75dy+H2maxrQ/Zf/y+ATM6ggoqbsDZzy7uK6zLDDJopJzEmovwMTvJkixm0sjg9sbO/YsQjXJzZKJ7HQmnkMp/pNefoYhe2UnEyi3Gcxcbke5iUIbKgA9oBdhyJj52Ysdv7io/XH1n568q89qpO7k3dcFUpwP2aP2Dk14UbSo3EZZgCJrESqUC0EkMPFvLmsMp8PJZoEpyBcAWEwzQHKi2vdBkQNaSlTvPd98dFr7QzbwsfdhzGancEVb+FIA6iiWmP2cqUNBF8Di3wgBykUenUwSv1QMQPGcWMzEs2I4Lx6hmKj2OejRC3BIL0K+3lA53fbETe08e+XJ2zChOer+UYAZ7BBIpdC+oq0iNuE4bVZScLRmMEMcURx2WrYVQzuUiwBFtd9RbxaAnmXffPI2zHJARTi/Ra8AZvqGaNkvglJWTwrj7EtFORfu+Gg8ER49dODSZ63zUHMKus7tPKp8MZmtfLnt4ze1U+zykTswldhSQF3CKpwF2TVuEGXl9IOgtpkK5ln3JGcdaDdD1dy6rsvrSzEp6NwxHdALsCvbtvJs0+Fb2in2jSN3YH7rAF0jM4P1Iyjk8Yc29rREsjPMZkrX9U2OlTVZgKLK70w0rjzX/nO3tDPs0uEPYIaHI5uu8hFg0mHOnjgqF8Nh8AmJ64RCwiMxsX5VlxmPNp57er3oAHqyeunwPX2LALW9sNvHuhSb/xEEqCLgDok1bQgiHQyCHpFyEpghpkMAKmJRm6FPs4tPDMFcatMZGoOdwmHETP/W7NHX64TCWOl2cP8PgPoH5aiMZPCVhtM/MPdpfvZuPNZ0201ZVqFV7jtglCxUXmLoaXb58UGY0jeVoQp2knBC5Cib6XcI8cCMUOO4GuHRBnFVf3SiBrTy948PpkubA2iEV3XNbxwn5MuEFIC5HFCECQm1m/4owg+hM608W+J1hxz05SSGnmWXDt2GmXQchgbPf1hIExwj+jU9Ss39IZK3IqSyHsEaEcfpuWNjOYrI8XKj5eUzTSvPtR++pZ2sXDp0L60GlG4nV6194YSPRWr1sAdqMVMmKP1uvxfDAZFDQxm9KqlSUQJCKb93FmzT4JQEXSJZWqEE9BS78tgdmMx4GSoEFV+5atLMpFMzddBW8d6NSieCb+YDj8Cy/9ASANShqtVqtUYjBQUhtKqC5Fc+ki1T1eq5ZOO0vlqr8o+jCPxeIbJYotCp3jP5x/GfPMCyUWkwNdZW1WqanKVRO8TH0FOVbzx2Jz3vApTAxHy10dTrVX3bzR9q50KtXjCS8Y583Pir7pVqtdNQNgbd3hULJ9jbQRvWZiZ+9p2OU4vx7rK+sz7509eK5SzrdcqFpiCaHNiTyp9hLz/6AUxnZYaSwRWNs6zxz9pX3lufKPE/9bmpi00TubmHsKWBMyf+VYRdJgCqGsaAbSxf/07rF34U/y7rO7Of9SfeHj54hPfZrEK2wEjKlGxAKy8/ei8tAKXGHFXPsZKyHVrqZWi+dU07IVRqi16fW764YxYqXVjzVBW5KezCOiSykxp6zbXG2y+1f3Zhi8Tilz07+2bh/uLSPixwi2agmGoBqJUpEaDn2DcPDsFsgxdQwU5smGEronk1CdkZHUxTh5Tdyw8eBNa0Q17cSCFsGbacX4aFFS03Xy+13odFbToAUMrPHVWzZGON9Tqk5nS9oaxDWYtjO72S2bYU7U0O7SaAmauz5WWAWm0xs5hibaPl5ST2sdyASoE9AXqaXXlkGCZzKoYKQIsWqKLNKyzHWl7q2BHnWW5r2J3MmIBikwwdgmjmWdV93SlI+yRcgwfAU0WHwIQx04BhE/tYom29LkBlGyqaZYKt6AQIToV1i6gYuYfoCC0E5W1hC0xZ5bmqe6pHvLhr9capj4/FXvqiOyknPkbFSkw2gMFBFKCibMK+yyqvYOhZdunAXZjJywyVvTyt6PDBSYZEEjAss/AyRhh37KmLvjr110lgb0zqzqOFnvDWM3dQwkl5c233PaOCeOds4RQRUEs+q12NMlNPA69Gk8pzea1p5bkuEdgfGE27AcVLC1sl0ita3ZExswwrbdyeBZbcQvghgU+evGLWNEMX6kVmAK/AT7WZqY5Dian4M6MnGYc0Iv1VG6u0eFtyuyZUOUsrqzWN1F9ur7vDJgnQp9nFhz+EuUZvkw6FxC8EMw/J+XYwRq5p/Zvu6XFd1a8sXGydqRu9Fa2acHW1AsAh1UZWZrWM0VrO3r3WfaK8Fsse99zjkwONE4uwp8LMtB0jW006NDPYqHMx9Ay7/NA9mGpSqTyC2W5ma0/pf/ROv6bV4wqxnvOemnppR1mvd4ng2Un5VL0gco1c1Yu5d69pWwMmjePXh95oma6ZfRTY22ETb9JZxREnsPcD6qziKEAnFIxvaWc+ksB+Vq88JBZ+kdKrXB/ZzxxsSzXW/7H1Nz+SwP4Hw08cQbMke3nOUAKUbOg5dmn/ECw0j/F1TcJKcNtkiqUmPdBhfk37/DvrYd1aPnO8NNBWYqU9TmgSkCmRh+chUwG2FfI/7teO8RrDVr0u3L6eGUnXHyNPT/dRAnpy5dL+0Ywf0KJZEC1S6IIE1Ef/TPuNsa0SGO3omaVvHRirreRwqU3YciC+AMJapYe2qwFS83/S8infssfNlPXZ8bf3TFQW25zQSVxdLBpDlS/CTi0rvPwp9sq+cZgtiJV3FkNNEYZgUI9rdzB4zkCqnKhoq5lMGjJKadXvuk6tAOCHK/gTKrgknC1ABeZWzYYJbVEXAXQIoLYzcOqQyNJmlqqa9VQFJcikQ+SI5VLR41dhoVKBMmOsnNTSU5XFLAX3aI7IwtNyIV5gJkDPspf77kOpxQbUFCovqtEivaOlhRQ+BS8aCFpr5J8BVGgeg2ImgmtTEUwpuPd/QrRNeNJh2S6eFqNZ0gt2aBdYC42gLFlrCizQVoqgXmRJ7uBeyOGKQ9MWQ8+uvNx3P1NqwQFRcYQSf8rnaTUcBc+hgAYKLjkYa5YpsEdVotXIOBDlgiCr6EtJh2CHtfJZFxmcCPW8r7UlyrQskk+4FdBz+SyHROZIhJRC5Q/kCtBJDP0Se3XvMEy3IkvwAuQKKHB1gmchdHQ13BlQGPA8sLfA44EzpnuujQcSMJ5ekCvp4HVRAtMrXQCYvvTTfR7JJuf0fKGavVRIoOQsdChAJzH0NLuyZwzm2mSG4lCICQSs/XdgoytYeCq94bXksVC2RHGncqGvxUyZdwQbTbA3i49nksKZS3VPOxW267TutU2coXoAoGI7jXiR0DKwtIxPrdVulQ42WfJARLuDcmf/ZpjgdjNl7k4G74XRuo+iGCImWAG7JzXGMcjAyrqHQvPVd1am1JnGXP7RW9oX2dXdIzDZ7rWh1NYX+bEOmWRiKccS1Xolqh7q97Led4SXB0hkdFYGU6vVodGsmbqLoQpm0oAICmJoBjJG3VytZALiD/fkZn1zzd+xZKINUsm0zmpVUyuvmrmalsgQ0fiHJefoA/Q8e7X3LpSKY6YIm9BWyNUmtJwNK3DvP5ufn45wlOs+/Mm3+lPLB4oPr6RqWTIDYWuPZPuey2Qm/739t0bWffOID2KMfOzda33lhGgiykUbjDZ8gJ4qv9o7niwV5UxJ7MsQhZF2lqlez1z4yVYJTNf91MLl9qXK8m5h/MMMhuOEeMG7C25cW8eWxrWM5/jIQMP0kn5Qlo3CNwJ0V7pp5VlU+bPscs+kudzBvbwVsNgxFhSgg2XLr2aefnctAqznXGzSLULSyuWDthYKZefhCuRge6q1frHzs1ufy/f3J278zi8csdszcl9e13m1ybahz7Cr3aPmXKcLUBP4PhwM7Luhtf5Lev2d9WxsXQuwJ5cGtk+VzZ28++rZcyQ7A6zR2gE1FKDM0j/9u85j2OLfsteF29ebx7XkfpF6ikyJmx1ebdL5Uhyboc8YV7tHU25AaRcG3ykGRWhmueW76buDX9+i3vyFmevNtVpl7z3NSPL9R1Y86kZIsJMCarE5rAA7k9kqtMIHz2mf2JJ6aP/QUHYpObpvtFrJYLZEsnkBtRl6mv3DrmlzYZsd2OtihxuygNJOBBXrfllIsbxVeCYzt8Y8hJwkD0cqepXNmGVtAsraoDltN8IowfCGKbaztOqQCCiuHkY7ljVTLM/7SmGveNJiXFzRdVaqGjC5Wk4MG6JRh9mSC1BsI+eEytsM/SIb2DlulrbzXN7OlNy7xbBIItJPquOj0PGECxoe9WfQblNnUbBTxMK+hQ7WDJIERe5hRQMRf6JdRRX0QRri4AJlk/pJqOY8lzesbZBeledxaM6xoc+yqzs+NJe6BKAiEnRUy9l2jbkzDYZDGbmk2iuuJ72z7KTcoPOnn/7A3snlnU23GGCvr84QHPxTqimah4KZos4gXtzLc4YKQG2GPr18dces7gZUfEB8UZ7sgBmiVpEg+0GlYgMVRew4NGDDAA2HPwyA5LPy+cBNhyFJAoEjsnNMjZGC4ifP5a2Jp5+kOTag6OWxOEKZ0tnlV7om9ZUdVDqTAxZyA2IdiOMUYu3YIIJGFSKsJW1i5t13tw2uRHZKiZ1Jp8mnk5xJc2oIqrKiwmSFpJ6OdE7iKnt5KWwa2D5llnZyo+uqlbsFo4WtfjE879hChdhYhV1zv+VWRfeVFBIoNGPjBRJhbny23Jpl0g5SeRvQL7PXto2ay7vCAI3aoMrnLKCH7jf8UevrreMWvYhljhsMmsAQR6mYZOUkKR2YLIFjIILDpqXXtpXSXkCl20WorD2M2MwMYq7/ni6VVUUVLtkCrhtgP51rh43Va0aEpaValeyUnGrT4uudM5mF7mETH48h1coDZ8vDOes8j4HwEzPCMXBBPfeMd82IEC4EUNtfB4ZW8pQ6YJL9VtrQC2ygY9w0ehBQ53ETqghNbT1jq3qcHRjC8tthCf2ptIeRE2QBrQDLNVGhYEoCWcyUV/QrAT3LvlucM2Z6qUlnczSOqtureaMcUMhxgk8JpId9bpKEJxdxVT3UbnoZGsOGnmevt88ZC7sH6XlNyv3TG2Bn3NhUGpi4W5hN3AQ1l8nnU0i6N82goyviVHmNvScOPb/wevtc0gLUWp/pvr7fq0baNrrAGsD0WysFoFGOz2awW0IZlvh2U3ZIXtUQRsgpMEup51dKA20TKWMPFkeo3ucA6g8uYj9ZJnT7odqzBjIzhvmxiBPIbN+1I22nzQrrFzdrAwH9Evtea8koYSs5EtD4+9AjVFKxdTpUK1zqGWav1abJvnYsx+hFWgbSY0P5pgWPyv8Be6Nl0jD6/IAGsTO+g1HFCrZt9NhMRy39Jsbt99VX9W5RVEIbGR4FEUFWeSkOlQrMdhz6InuzMGJM7iNA8aOqOYql6pGhjF/VQ+2xy2b6LaHDvGCNsFU9EMwwWxl0zLKhUj3UBvQCu968YMztxwIvX0ooEcB2FJsZHknqGw/MGOYjTkIQGB7JtlJ2jWHvSy0Qbz30Bfbtpglj6aFBqTjiunecHD0uMwOD7CA1lxmiUHXPff3WLqpu4NhEd5hGghLA8nnid+6UpHqozdAXpr7dNJFzAJUXanEB44Qqa3zMhd9fSmC5QA+z12GrSiRWhzJTBZwKZH88agPqdUrPTA40LufhYVR550GscZ8sE8UAtc2MdkBrY6baKMSVTRW8e4H2MzWw2vQ8+7f8lFE64AU0cntKXDW3WK6yTi41i83M4PaLzyYHslM+oFJrWTNUzlDKlKwWiK3y/eyt7JAx9ShVm2ing7ASIZ418rkh7rqmn3PrCI8CJtGR1LpmqEf3jssbEpGdk8/zT4DNUMspFSFdfr73yXc13Lo8ahw6fNuc1cSGAff6O2XUt0Z2ulVSYRfjslNx33is9NpFFYiyw/CC6bb63nooLmdsyqbnX9h2aJDvLD658NqB0fpynnbbBoTO4u24YEog+Rgk38DHpgBHpPDosqVT1VOd26jY5o0JvDrkBV3+21pwIS0WSzYnBvtbj8xzQH93/Ep+Lrv68BSs8Kduh2pMnPTNuoBbucKACok1Q6KM+OwM89xes+aeJifMcdMC/8LFtrjIYlcmV+rv/tgHeBd77/vxyUvbp9OrO90LDaRZ8zw5Uc1iqxQch3UbUHM//GGPenMzi1oYjkNUHZftqHukCCQPmaxtibu0bLUwXHmv/5jYK+V6mMDx2YHCXHWuZzFZS+NtnI6fNIsK+op+tqeCGQcwF/toiYV4k/+rUHNnimV++sOzULO1zoOcLjp/RgFfWNGebZ6Z+d+RkWsnnP9DhO/pDOikfry4p3VxFfIsUUuximmdE3MfkktY/2ph5Vis/UtGHdJstZbjk2mB7fWvYu2qsGGJVKKerIGhJeurfPVy5P+fYZ1ISh9r1JN10FLV1qbC3Nd3HHUtbPYxdOO32/gVfvX29cxKcmm3gcvEPY8col44bi3Pa5mpo3s//eFWb+pd64hiPD9krZfc+Pm4DPvXhl7vmanXinJHhq+q1nVIm9m7bzzy6ZmN32nzr/BAAorDRNPzg8HHDxqwmhGlQwFmkTXMX96/tXs7NwLzAwsoDur4rX9tMzKre2jFMIYpzT3dN1/S9lt7NjYy9K357AMNKP6/koaG3zpCgHYmM7W/3PXUja2BYnOu+kADikO8MPb9DnM5qWUSZS2Xblr96q6ffyBtJ03H/wHu5An4eGwyKAAAAABJRU5ErkJggg=="},92691:function(X){"use strict";X.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABUCAYAAAB9czKDAAAAAXNSR0IArs4c6QAAD9VJREFUeF7tXWtsHFcVPrO7s4/Zlx9rx27IuiUkTeqEqk8VQYQqVYgfBYlSWS0tFQikAEKV2n8gEP7Bjz6iSK1KRalQW0RbCBIqlUBFqOIHCUIlTR8kbY1jx02J7cRO7F17Z707uzvo3MfszO7szJ19WdHuJI7t7J07957vnsc995wzErR46bouLbz7YjIg+aL+YCyglbb8LXbZ4dvDALAFAPjd/mr8CUAoKOuqulGRwaddVtWNfV/4zkYrA5aavfmTfx6N+IZ2p6PD10YBJAk0DfAP4Bd+6+Ald7Bv566rT5Zl/FkG0AuV7KWza2N/mjkvTU9XvA6tKQBmTj6X2jF+S1qTSpKmZgA0FTRQAUGwUL/DQDSerIlQbETtBU0GAoCsgCwrAHISCvk1bfT9K2ekqamyFxA8A3Dm77+Ije69ea+Wz0qaugqahl8q+aIA4OWB8tiUU6fmNisZvUxLrG1zoNC7zADISgrwq5RfV1MH7/lQ7Om0lWcAzp/944EASCE1swSaugQq4YAMaLWrn4+CExXHLYhLc4QhZGm43h37tFsEjcYry2y9IAcgJyRBVpIgJ8dBSY5DZmlufuLQD9ZEQfAEwEfHH48nxib3qpnzgF8GAETu14gfpxHUThjZmdxfT6bmwaADMNOxcV/s+USuuy8U0orpAOQEzgFyKg1ywL85cuM3ZzoCwNzJ59KBYGgkk5ljAKxS+W+IHjZpQlDRIYhIcufV7eVJrpxg6cydbZEfCAegGEqmIRDfWdl52/3viI7JEwfMv/fr6yv5tRgCoGWWQNVQ/FBK+wO+YiAQUIuaLIVCIdHnAxQAgDfHn/HC3/nPNj156L2mQ96xtx64WYrGKxQK4K8UQmVJD/O5oyKmAIyDktoH48PZ09Kehx1mUJ2UJwBmT/3yhlLuUoQDQBQvV0igrB164M/z4pS/elueevW+awKFrXHO/UQMoS4gAOyGnCzN7rnj4azIDD0B8MG/nzpQ2lgKqcgBxAKiqx9ZMCLH1m/92u/nRB56tbeZOfa9nRUtO6apKH4zKIQAFOQCCkBC8s8N3vnIusg8vQFw4skDpcJyiChhFeW/Rswxwn6RkcwtX372rMhDr/Y2Z197dJem50e1DNIAxTBZhSAnU6Ak0wCKPD9x6EdClpAnAGbfOjqZXVsIawiAhg9HY0ABRRkHX3Q0e9OXnpy92okrMv65v/0srRc2R1AP0o0oIQRZiMgBoMnzE3d3BIDHJvNri2GDA4j8TxL7NxIfy97wxZ/3BACL/3gsrWZyI7gQURR3HYBM5jyAmiG+HwpAGpTkjo39h6b/K7KCrvY2828emfCXMil11Q6ANICmdJ4DCOshAMQGToMS3rGx/64+AF0TQQgAcoDCAeghDlh888iE1pADuqQDKAeg8kclnAa55zhATamr1Bzvug6gfqDeBYByQD0ACprj3bKCDADQDE32FgdsHwDHH5vM56gZ2gcAOYB6hC0b0j4HdN7IrXIAmuNLxCVDPQLjgC7pzm3E+hxA0OUAaIwD+gB0ftFbnmAFgB7JGi7pPgd0Hg17DkBvaLLDVlBfBNmIoBoOQG8odMoZ1wegHoDMEjtEpu7oDivho5P53EKNGUq9ob20E7aIIDwTwJgoYAB0lgP6ANRbQTQwgRzIsIP5DoqgPgAGAHk1Rc4DajgAvQJa53RAH4A6DthOEUQDlHpUB2wnB5CYIHTDmo4ke04JbycA6IQi0QAMAIyH6W0AaFglj4rorA5YXwijB5AcRPQBoEqYW0EsLGUbAMDzgLGN/Xf9uCcO5RfffGYC8ldSxC1PlHA3OSC3ENZW0QVr5oBeA+DIBOTVKgA8LqgbHFDCnXAdAKgDdvUQB9gDoKArotP7gNI6uiKsHEDC8XpKBG0rABeoL4iHJpKwlHGQ470TF4S+IC6CIEODlI0Y2VSHd8IWDsCQSBYVHI6NqaFwdFkNxn1xiAMkyF9yZR0CtfWYphsefGrZGlc8Fql+xv43w9okYgr7rBqEzH9KlqN19/FO14DGzA6U6ttcYY0GSgXL/anBuL6Cn11agUpR1SV/YEd548qgcTbeLQA+Pn50Ul2v4QDmhCIeURKiOE6cUiQ5iKf8NDgjaZzR5XSo0mrSUpMHNpiGi7lwuOJRBPOwRAxQ6xYAs8ePTpY4AGwfwBPVSEwMIX6SxIvyHCo3UtpnhjVJpLrbvIPV6A6SC4HpWEhwND0xP4J8qTSzjYfpd1IEWTiAAMDsX5IvmwQgxGe5s2xQjqRkeWSEUURyylw4SqgPNqCmuI9wgUoDk9ETQBI0WJLK9gFAKM0SljFXBBOX6f81uuw/MZOkEV+YcnTtOie0sEGyJomQ3spG4QK+dVQsG5RxQ7U6AM2TIOcBXecAg1Y4VJZD6wIAmT/NaaCX7eo3wYTqBGSoyHK5DJCNyrES3lbQykaCSUj268Vy0Sdr/phWyYdoyQQRtrJfJgxq0wB5Ki0dMO262v/2AGDkBrusdiMP2Jkz7EhBICVlAWSIKvLZ3VN/qLGVrHdh8ZAPXvrGDT4tH+bJ48Yi56DzRdM8PtWH8j67zwG0RgTXA25q07s65IKC12RIwrAyMDM69eym27NmXvnWvkouF63mMJtWahtHTObEwewmACRHjIdlu1HDURu43UzSoNl5axJ8keFSJJZYiUnh3EZY9/n8IUlSg5LPvyXl8kUpoBf9uq+UrGxkY8Rby0zEWhnnvBhqlUJ9awtHcabmJQu6pwM4BzQmYrOrvtqjFQB66E0LY9AqJVTv8DIJxERE0xBtdQ6ASReIj8dZpDLfm3Xi3eeADgNAWJsrdWrmGiUBFNxncAC4LkQbHSu2sM0SL6PD9JQY8WutgupdtnqEQ0DWAStXQDgAOpMjxvcBZCeIZWpU+wIdlGytb7EMS4RkoiPBORBK/U6bb5QMO71av4isWDdpJ/C5E1+Q8RlmaIcAOHviqQOwuUoStXmSnpipV5WrvNiLwHyNJoYlxPUBFz2WBcsULatbZJTPqdsb2C+O1gCiC4TGhqbRPzY/IFiyxlOi9rm3nhgrr2XkcvFyRa8UdRVZvoUL17H4RVvjv3l/0H7ceYBIMKBjpJplZGSceCf/Lv7U2paNxiwFgpIUS0iR2A5JzUiru6YezYs8xRMAIh3223ijQB8Ab/Rqe+s+AG0nqbcO+wB4o1fbW/cBaDtJvXXoGYBzb70wlhz+9EgwFPZpuRzocqXh8Z+3odi0LuL/BV27cW/h2kXrDYJBgGIRSsXs5sBn7xauHOYJgMVTL08kd92cMmrkGO5YJ7eih01ZO72UgiT1MDrnHk2FXDfOv31x+I4H/ycyBGEAZv/128TI+Gf2UOKjz4VWS+Eu99Y2MiJDdZm/py48kJ2vrUZnF+SsAq+q01ALRPQLp5dPT05NER52uoQAQB/72swbB8v6lsyrRJEjObL9N69+syfRwyRtRtgWQM3eEGOYdFzN7MidCEkr6VJ/FSRToFW0zZHbplzrhwoBsHjypbQcHR6hsZAsMBfPQ0m9aPthuRPQvKTcW/OniLc0jcvl4KVV3xUZExdB3GOLEXLqeVeXhCsAs395OjRw7bWTWvaiVAUAD6X5YYzpeLEtMtzKOe0guHMf7k8Q42VWypgDkEpDQBnUojd/9T+SJDU0VFwBWHz/lX0AehTjYHg0sCF+LIu/3vtJptaGYz8ricTIYceXRj9ucr3u5uozHZ/OvbYsRhQdc6Gythr5/AMfNxJfjgAsnnwuJUd3TpDCRKReNK8SaFr9doPloRptdUu7qTOmCBs0sxDfrKpEunWsQV3DQdwrynKG5cSn9MzS0kfXfOWwreeyIQC6fsy/8kH0YGlrxc8BoCdO/EzcLvyDzoYopDaII3fh4K4ZCK1rIzCaAMAKr5P+wqopeDZAK+liAadyKLQ1fPu9Z+ywbgjApXde3iP55QQSv1702MkVk3XRBrHjvJ7NhG988GMhfgtj8iwCjVLGKYBUGpRUGvTs+oXYnd9ergXBFoC1d14YKIVHdhOxQ8QPFT28VnSdYGc0QGuCxEkSm7h5+S++8jlMDfQP10HmBSsocszN6O1edA97w4bBBWnQ46OVuVPLp289fNiyFOoAQJv/0unXD5aLazKpCMWKk5LzVv6OmJpJbB/h66lZt+qbXAj1atdd3FlAM5mlkKKFnHyafyNx6D5LGlcdAMTmDyZGSIFuYvlgSa4Gb8ggstW0Xltkc7FTZPeVaFhfTRK/ntTeeNK4n59jE12QpmGLamZ+4NADRl1pCwCzs0+HBjRm8xuih5ZjMcSOWdywNya1Y1cpNkUX4ruGO4rJn/qxiI2utndzTBMgCOP1ewMLAItv/24/QFnR8A0ZmAdGwq+pz8cq92ksjmHtiM3LwboW6cCZCHU2vllsi3RfF0DmZOm4d1jVG3gcjRYRC99PpaGoly8Pfu7+BezFAGD5xG9G/UNDu8w2P40ss5qvjmvQ1vfS2J5xFybuE3W1llh8UdVr6Px6lebWenWctgobxTRXyFjic2yXrsClGenGh3IEgDPHpoMjk7dPljYu+KjJycJOzFEPpGfBVWhHN04IYpkwWdHgxT31FogYEPatqmOuG715RyygvzyDY4TEMDeFiQsqodBW/PZ7zxAAVt47dj1IEKuufpb9zXZTEoAq++IZLSKVo2SW9N/tujr+9JxpZvgw8++Ck5aKJUnSKwmtXIqbE1kgieIoTfRBOZv/mALw4V9voXKfeztR7qPokUGqyOsHD7/WE68mEaStp2bLz3/3uoqqDhnyw7Q3qMQTBQLApXdfvSl/ZYGJH/ZaDnKHAnJo4PL++18kCqN/eafA8vM/vM6vbQ1ZXnjEnHX+wR0UgMUTz0xom+baB3T187yvYDixEvAN0LeGJpP0m/ex9MYdzFUmqVtSRS4kSmpmGI0ZHipv+IlSadgqRj8hAODu99wbP91b2Lgc47WQCQPwiF8eEs6jkquHcFclUd1NCbEtoe3k2SkhcdlnaLg8JnPTN46wjauSgkB8cHXw6z+hOoCCMO079/ransLmSoy6HXjjJGAKKs2ArKaferYI2gaV1UnQtm4FrCCRZ1FXCE1pJUQneQr4MzPnMbE9FL0y8NCRc9ifZSNGXs782vcnttTscNVu5q9s5d9rSe9g5omM2K2Ni6nY3oXQuDezV8P1mSSdlYOAx7aM+LIMvkj84vCDTxgRE7be0E+OPTK0CbmdoBWMkBsS/075wrodMCW+1R40Ge0tuQJ2uzXXKbUW3+9xdbe+pPhLratBCz5/IC/FlAtDU49bkgwbngdMT0/77tlzMRkJa1FtS7e8ppy+WzFM/haKNFWUv2+x4A9I+HORpZCStzaG+e8h9trI6gskeTs3RuCfN/c2SNHeWTvHt0BW30PpNpZg0F/WpNKWpqqZaw7/yvZE7P8Vipiu8V4ihQAAAABJRU5ErkJggg=="},46016:function(X){"use strict";X.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFYAAABWCAYAAABVVmH3AAAAAXNSR0IArs4c6QAAIABJREFUeF7tfXuwJFd53+/0Y3p65r53V8vu6slDKAghg4SE3kgCSwjjOCSlKuwKxIaUE7tC4nJRJtiFbxWOE5yKqxLsuMDBGMlAkHAcwBAS7AjbvFYsK7FiV4+VWImVFkm7e++dVz/Oo7/U1z09t6enZ6Z3JcgfydRu3ZmefpzzO7/v933nO48R+P+vWggcJfLC57FvEGCXA/i2Az828C2AKEHfBn545UV4TAhBfENR664/gZOOETV3DbASGCwqwqLvoZ0YNKSBIxzYQsKBDUoIyrKhJEHZAbSyEDVdbIaEzQtX0Mkr9mIU+b5j1GxbeJlN2J0YrCY2ElJIDIAk/Ze9yMCCA+EQQtPA/TdcIDb/rwFLRN5WhJfoBLsswk4Q2lqDwIXnsnLpkX4mrYfvAZicDAaCT3FESg4hDIQGSNjoJ4QNO8EzF52D588G6MPHaS3SuNh2sCfWIKWRCAuGy8fvidIGToHlolkCFv/3GnBAiJ5/Bf73TxRYIrIj4Fylcb6KcA5x4RhIg0TzewM2I1I2EhMBNkAMFtnpcQzBTi3NmAxQB4BkYAUsh48LWImBxYALCzqx8SxCnHjlefjRPJAfPE77jMErAaxECobBlBpGJUiMgpGERCRIlAJx40sbZBkI14GADdu14DRtuK0mvv8TAfZ5ooWGwiVWgr1Gwo6BxLZTBjA7UyZYNkykQQ6lhU6iFNEMUMXMzVg7ehkNoQWEw2gCgsEUTspcSySwLAcWg50I2CnoCZS28ITcgyeuFEIV73XgBO1EgsuExopUMIpgtIBOFEygkOgYxthIkgSJVClb0/9FKbA9WC0bTtNFo+3h9I8VWCJa6ir8vSTGPrApZSCmYNoEE+oM4CEDUhNjs2dmjABlc1egIhKRznwDA5qaI7NTQzTclMmWcCFS8zQZsA0LduLAshM4FrPOwpOnNY76Gg3LxattYHcOaGygKYGOE5hIwuRgMlOZoTmYatjQsQRZAsITEG4TdqsBz3cR/liAZf0MFF4jNc4zGsayoTXBEJsVYIhSMBPbQRKwWRESBi9MRTUrvGRGDNGUw2P8mQ+JTFdHJGZQNSBcF/xGRALCNrBcF4IS2JYLyxOwVZKBLACL9ZmZnfqeBCZMYLSEJgM9ICSxRGIlSLS1raWCWSvRtRrouAmCTY0FinEus5fBbdgpsI2VNuIXFVgiEp0YL1UGl7KFEqAVGzEDSjDMCtvJGMqsTEHM3qeaVQa0yFJV+DB6OwQ6Za+A0Gob9MSC5TpAEsOymb0WLKsBhslpZBLBoHIhWDMTEtB9CcOAMjuTITtTYgr0mg6ef8cV2BBCjKKBj/4t7bEMLuglGfhNC5bfgrvURvSiAXuCqOVHuBoJlhlQTdCkoROCDhUMV4CZmrKPgcwdQEGrcvCmATqUh4y2mfaOXmXgmUF8QqrDFizHBVLGssMj2Hl0kUYgFpJBkAGaWgq/mBkSGzvbeOZtV4pgXOGzT587RJec3MIOI6ClBDUaqdW4q8DGiwJsENA+beG1UsLmOJMIipmaAEbKzPRTL5qBm4I6BkoBpSo2ngmgIw0sPIBBZmfHrOb3+d/UQtgZ2SD+OwLPwcYS8Myd1wpWp6mvP/8OXddNYIUB1IBALgDfhbu0gKdfELBs+psSlwngpcxOxYBqaGJQKW3F2YBWmTczccxnD5lZg6U5jWc1GgObsrnwnNzDG3ZCDYgG4cl3XieenwXqVw/QctfC63shZF9BhTESvpaBXW7i0FkDy6B2Fa5OFHZHGZiK2cqAxir9zGY1Yug80y1WdMS6wpsz0du6DC8/hyWj5cD2mnB8G0//g9eKJ6eB+z8fp1d3etjTDRBHYRrKJZTAai9B/NPX41tnBex9RM4VEa6RCmsJQeagyiFLWU8LzmmmFk5l2RCduZJRxfBpllBu3ZJO58A6LlyOR1sOnr/jMny/3LFYJ7Ku+j7e1FEw3QHiWEPHBGoQ7MU2tn7pDeLIGQPLoL62jxsVYYEsSKmhpMyYmrBzOhMdnWH2JTUYk4cz1eGZ1lCgJLFXt2E1Xbg+B/pNNDwHp2+9GAeK4H7pIF1gHLyqFyDaCCCjYeTXdOD4Dh5+z7XizJwXm38vwvWxwiqDGkZQJoE0zNQM0GQYvoxZ0LxQqa7pvhiAVpA2syiV9vlFw4HdsmEza9tNuJ4Lr+ni+JsuEYf4NMbgS9/DG0MNdzNAPJCQLAN8bctD8s+uwXe4EWozNtXUEFdJjd2JhZhBTRKoFNRkGE6Vvf2c2LMuoMXzpknDGGCF+HZCrwtNXnaS6VfMWA+WTXCWm3AcN2Vtw7Pw6O2Xisf/1yO0N5K4vBtBdmLE7F/SDgLBbrVw4p9fk+lybWA3+nSZSXCRIkipIBnUKElDqyRRhfgv160z8OJ1HFve6xoDas4zpoFaBWjeYMw824JgcInBdeB4rLmcuTI4pAUuijT8QQgVKigpYBIB0UxgbZ7GgfU7hawN7GBAe3oGV5GGlGz6CWTMmsp96cxRbfehK5xObVAKCL8YZl/W6SqtnSYNbgLLZ+YCTtuB02jC4U4D96Olhu5oaGlgDMevMaxGC6f+5U3iaN6Ycxl74gS1nGW80cSAsRAHMjV/xaDGQ0dVLvDM0KiKZVMALVa6CPSE2XNkXhX7Fs2+gr4TDrKEsmtn4AqC7TRg2RYsNvuYe2gGJg5AnF3zBRz7Ihx47ytEXBvYjZBuiCWWJCGWCkpLqDhJdSWNUXPhn2XOdbX0x8HS1OxLwFcyuVSB/BwGl8MwDv6TLAcMxfnjYXaLv1tZxMavXC8eLbTjbI3dDOnCQOEyoxAzW+MgTadpk4VVo+zTNIa+mIDWarhizSpCuWlmP4/tNneJLQh7mK5k82ddZbAXbVi2xMH33rHN1pkae/gwNdbOxa2cb45DSC0QG5mFVZwBmrCskieeyuQqsy+BMNPsy+CVPtfV0XKjTwW98AU7tfyja8FqO7DdFp59303iWLkYUzX2mU16LWnsjQWiiGO1JJUAkwxBrdPFnMWyMwW+CrB5GlkFVhWgdUAtnsMAew7sBVeZi7bcB+68Mx1+G3tVAstDKeEmbuawClYKrIolDCeEixFAbW8/rYtZPl7h2MrPmArWHOdVF9D55ynOnAuvCXvVAf3aLVmHoBawT27R6yDxkjhBrGPEQ7YmHAWMJKBG8F9mWRVLp5r98EGVma5CLYr3nJCnGefVcWDTmMwObdFR9oLnNnwnPParN7WOzwWWw6ukiZs5+A0lYm0goyRja3pxWUurWFbQzLEK1NThOmZfRyPr6m25cfN7s8mbZDSgOYzpXLiJshZ92E1PNHZ4oPdc53y9zNoJKXh6ky6PFPZqBlUg7kloBpVkjeT0DCc0pskFKkzoZAWVzuacOo1TbnS+JmH9tEGxwWOWjYuRwOLMlUkUpXEbD//Yymo1XWvR042dbXhtzzn6C68TTxVZOwYs5wOePInbeCS1ZxArk/ayTBQP2VqMw6v642X2lj6XzXYsbq0b5NfR0jrnVOmGDYvNfMnBsffdJp5f/zKda2zsiwNFyrgJg8u3Tru8Duy1lnAWPXhtH9EvXeV+cyqwx0/RPqlweWQQSQ6vBtA9Zuv2+H6t8aZKyTgDllZ6+5LgTdXIOedNM3sGlP8v+Nj6jVuyYJ/zrt5X1BVBAqsbuQnHrxlzgaYLu+kIe7WNxkoTzRU4f1scyhlj7A9O0VWxxGpoEIVRxladpEPWLwzQCm0+I/2ry8Ap0ccEOUuWlIdPyz70+TfjwTt52sfw9R/+hs4bDHB+SEr3wtTXpKxt2LBaTVgrlnBX2vCabfPUe65oPp5fNwKWE9jnP4uf7hvEWqYJbMnj64aHdqc4rDFyTEvVzZCMounU8dKV5/DBgoycKZMZVA72PUfbCTmH1+8Q3WK5PnqA3F4PV3f62mxpMjzizN/zdY0E1oIn3KUW3F0LjnrPNeIbE8A+eZL2DDR+SsWIujrtEGieWjMWt9Z1TjVDsZLVjuozK603xr45TK5yTmXg2fyb7OGBE+9/s/hhEdT8/Ue+SZds9vWO0wHpiFlrg7iMzNrFFuwlT6ROTCjnW796s+jzdSPGPvEsXRZIcHowlhGkNtDRcCJC2WzHnE6hJNMko46HHoFcx+zrnFOy//FLhjRnc/Zgtdvo/8Z1ODJt0twf7KeLN3p6d7dPkuUgGoZgzFoOu1Y84bY8eEu+88REovvICboxSuCqAeRAQIZx5rQqh1WqmDtF3+YF+HW1tgr4s5aP3LOTshcWXaUsHFq/mWcpTb7uPkB7eqG+9NQA8ZYk1QtgpMk6SgyssGEtN4TDTuycVef0L18pHhoxloich57Gm8MY8UCnYZZmp8WzO6qEv1ihOsBP3GN4oI7J12VyOZSbKjNDQFhXFywlfMf9/vtuE4MqUD/+CC1aA31dL4DeGiA+HZEMojQXm+QYsBysNISz2ERjxYP69VuzsCuVAp5oqwivDw3iIIIMYmhtMpF+Mcy+qpK1gXjBZp9Blt0m6+dzz4klAL77+PrN4lQVqOv3kXPpMm7ajE2jE1DcjRFvBJROl8qlIGWtgfBbsHc0RWNt0XEH9+Fr6+siSYE9coIuCDReyRebADHPvONoYF6YVRlv1gGizjkVrVH5vNJ5U88Zao5ru1ajqSzPcp9bf8v0CRn3HFTXBEqs9RVJHuLu9iE3NaUykHZzh9EOy4Hvwt7ZEs6Kj+aq7xz8lRuGU+UPPkWvijlFGCGOAdmL07Gs0cVjplyKAUffzfPQVYI4OaIyGoousmg2WEVGjnNPpXfjbmh2B9ZDjj09z+399q14eJqzuufb8asiy37ZICK5lTIVqqMytqZxbKlADOxSU7hrbTTW2s4T/+oG8cOUsYeeoisijZWORjyIoHSUjmdNDBDO09tZujYvSz8k1BgydZzTVJkptTjnALgbutR25SWbOFSVQ+VL/vwI7QkG5vUDlUYAcktCbsWkBqyt0WhC9Fg5XRc26+xyG+45i+b4r93Q/EEK7LeO09VygHasU43VoRkydlqWanjbeR6/jo5WnTMTrCnRR3bNkKGFVuIjaSfAhrXaBCVN96H1m0VUpav3HKYFE5qb+hq0EVDcZ1AlKXZYDGye6SoTzHMyB7bURGN11fnRB24Qj6XA3v8MXRv04HVCyFhDKTO9G1sn8Vw1gDcVrHkSUqEJU5lcApRlwLZUCuqyD8Bzj6wPA/gysPcQ2eY7+o1dEs1AUtwJILcGUBthQVcLFxXLwMD6Puwdjmgse8npD97uHU6B/cZjdGNgYA0iyAFPx+SIoNwVreia1mHWbBC2S3o2jmmMpSPzcQsRQMZUlxdeWOFj67cvb1QxlY996kG6Ko7NOf2hrvZ60Kfktq5OlTmVWcRyC/ZOXzRWm9T94O2N72WMPUY3dSKIrQhShhmw02LVCZ3NZaHiyXU08myBH4GaWn/moIr34srySOqCD7tF7pPrbxXPTgP17u9Er9TkXBxpkhtd1lRIdlaprupqXS36hCKwOxedwW/eKg6mwP7NY3TjIILoh5CsrzwZoXhhhTWOlXGe1o4wr2v2tXU0K8a2tm5fOIoAYJ79N2/1x5LQxcJ/+iHaLSNzdaRInuxB9mPIriLdDdM1XvnqnTHTKpOBLIilFuw1T7gvWaTBB9/ceCAD9nG6dhDAZWBZCnS2SGziVcmuOmDNOefMgC+GUGz2k6XKQXXs5PS/u307lVeu0KcO0WpicO1gYKgjKd7ieDWA7qlMV4sdgZGlVtTFGcayuxeEe47vdNffIrIZ3X99mK7iBbcMbJczWnp7xKBSR3PnO4NZVYyvY/ZV52wDv/1gVZ7eMoyJ0zwpZ6xsd+NDP4PHp8Wqf/ZtWhKeub4fQHQlxd0QaqMPyaAO8k5AoSVmES0HdseCcHe3ks0P5c7rr4/S6wY9LHYiKJ6dnAP749TI0b3nNc7Q2KHypOskS/NbMKguwVp0k60P/aw3WoldZuoXD1BrS+DGQBu7F5LkCKAzgOKeVTDsBExjaBXRRsA2hXvOonPyd94iHk0Z+9WH6bIowo6tLNzSgxJj6+ptHbDqnLNd+DwUqTb5YsPnoHpN6n74rY1HpjH1E/dR013UNw6McAd9Upsx4l4I3SHSHK/Gua7WkMKcxQwsa+yOpnD3rpkT628adhD+7mG6eCPGPl6o0C8wtq72na3ZV8pMmV4lb191DWfyhQNrqeX2fvct07uqPBrQTlKm+v2QZFdCDiTUKVUAtU5YWTqHgW21tL3Ldxurrfjov3/rwrMpY79yhPYMJC7hLhzPJ9AmnZ81MbujjjTMBKuW2W9392Zq8vBBzNQcVO9+PMKZpUm3C3AHIH4QN4ShWQgiUhsy9SdpWDWLqeUyVGmt5ShrueXau3zR2LPmHOROSAosa452cc1AIhpEmRQkJWDPJiKoYvxsB5Z/O11HR6Cl4/uwGkOmem/BI+uF5ZhFcHlY/zPfxXWBMqvM1BzUvibT68JoGxTF40SqQ6I8IvEc11pb0M7OpmjsPtT8u1HaMAX3IXrjRgwe01GDsJArqGj+OqFYWUtnevtCC0wwpPj84Zf8h5nKoLYt6rYONR6dxlQG9VP71dURWbvyFCCbf87U/owcwMiBlcxwvIwK7YZrr3rC2eEr84f/qLWfTx+NeX3+IbqyG8CPePmigWE5mFrJGSY9dk0BiAnpHC2Izbz9XLMfVm4MVNfd+vDPbu/DUiUBd+2XV6rE2ttTFG+FUL2h+Xf6maMqJlYq61s6uP0xe8f6apGwdvpwz9lhn/6Dt3mPjAH7pQfp4k6APaHkhG7arR2fAzv1AVl16gOan51N16nqNY2xfRhlFUOq1Pz9ZPN37/COzto149Pfpdf0pbkw1CQ3A8iBgtqMSc0DtXoW+LZMZbXN5MoxEO2GsHe14exc9B//j39fPDcG7F88QCuRxk/1AkiODOJhyHU2Zl/lwMaODW860+wLDM2ZmE+SsJru6d+/DU/MAvVP748vVYn98mDIVE4BnuZeVUgmZ2o9v5GBuE2fgv4roMly5AtrzReN2G7uv7dq1cxnv0PX9TTQD6H7JQdWR8xnRwR5AXOzH5+sNcv7cpKDp6s3mrBalJz6vZ/zfjAL1LsPyssjaV0YaciNXjoKIDtyNqjp8yutcrvc6Smlc2wH1toC66sjP3ln47s5CcamGH3xAF3yrMGudJl4BJPLwUz9m6u3bO/bLX6mLC2C2m64z/zeHeLpKi3lY+yo7n5AXRFLax+D2pUkN3ps/lA5U+v1/8ssZcy3h3jyNmB99Rxh7fLh7myJ4x+70x9N+BgD9i8P0epGH6/psh5pGGbtpNMZb9kq0LMHDws3FKwq91TW5fK98nH7lg8s2O6xf3uHODkL1LsewBukNOcwqCd7lAb/DGoQUdJV6Ty0sdi8zNKxEYhRVregAqW3DOxKW6Q9Lu00789lYExj8xb/zP14QyeGtRlmOQOeYTeuj9tVm+vJp4A65pwmy50e4TEq1lTfQ9JuuUc//GbRmQZqGvwf1NeGUqymieoIahaos5cobTspVeFginVmfV1aEM6uRbt399u97xfLNzHx+E/up/MiiQu5B5bLQRmI6YBus3T7nG0trRs55KAuLrl6ReGR9bdVbx3CFbnnMDXCUF8XK7GYg5qGVBK6E1HCI6tFplY746KOuigDWlVfzsFyNLDmwVlZ8h+56+3i9Exg19fJOvc2XDMIQJsKWsU1Yr0xVc+95pkDyhXIx+kXPETKdh/5SGn9VLHwnFBpLOvrewPhc/CfM5VBTceqNJIc1PpmP6mlxWfmIDeJ59IK65wWqc/+4/bBsjVVrpq5az9dtCGxLxg6sXxOaLXeqtHQSB7bVRUkPTYs1TQHlvamiHcCcrdOxHj83oplPvm9eUS139fXSSkaOai8IntLw3QLoFbLzrinH5V7hiMuyiHHrk1HWGsLcNZW/MfvfvvkNieVwN53HzkPC1wzCKFPM2sLnYWJqKSOc5oCaH6v1PNzoN3kPQLdZz7yD6d7fr7mowdouUm4NlDG7gxIcTJli7upkvQgzsapmKmTLM2bZRvYOktCy43D2sps3bng6Ht+3j1YeznSpw/QzkGIV58OIHlxR5RGB+wzt5PNeUD3wkKx7Qm87KRMHDzxR7+wsjnNSfHxT+6nHQbmmtgA00ANSwmVsSil0GuaN4mkyidwJJCzdYetH73rXUtj2pqXfYKxHAve8yCu3RqgkWbWYyjeNDHKV40M9TR7aLFHcqbd2iGoPJTiuPGOVTw6bSJFXtiPf532km2ukAmSTkQqHfuXUOlwypCpZVC3wanv7adFQXyc2er5wtrn293PvtN7eBoJJoD9wmE6vx/hVZ0AERd8QyodaXe4xuvMkiWVmjx0UGz6nPZbqqGn3Nif/IZ8lXLsl4cSelOSDEMoBnWLzT9Cwmm/Me8/mhVTALRitslUiyvIV04fZitHAqttiAt3+w/McqwTy5E+/xBu3QpgbfBoQpoJglaRGg4DF6SgnJGao6M5yAwod035Tlbb/eF/njHeP9RT1yNcpYzZGcRQmyoL/Dd60IOE9FYvi1q2vX+un9vNOqJDHedUhfTwVgsNYS+3YS86+OG972o9M0uyxoD90hG6YBDg1d0E0amBjgeBo4JIJbzGqczVOjFpuYw5S5d9N45dHP3YjPiUC80jqdrRb5CRaHY1FHdRexF4zF9vJRlTTYGpk2Y/2befcL6lOcBVVsYkqCsBExrL5va5Q7ilF2lnIJ240+FurTIBb3oAGL65Jlij0KtO6w+fknt9Nv2FZnJqx895x6Zl+/OC/fG36VyLzOt4T9meIh5G0cxUHvfnGJUzVKOBv+JkuJFHmh/oV4di254jL0suAcsLpAdPtr73tfXqafXFRhkx9s++F5xrK//yQYJoo6tlRzoqiDMJ0Ik+YVt+30BdzMAamW4NOrY/YTGQGT1gWHIek+JllL7nHvvDUg+lzBBu4Lv2y8uUsF8aaKhekIZQsqehTwXQ3O+vBnW6c5oWN6fPnmH6/JU/jAIWFxzRpM6RL7x7V2+WBEww9r89SNf3Y90+HaTDwSok0hzj+Z6b2E08wIsfPvBXtFtLdRHvhRLobC5+8SFleeDP6XooG1Z72T36Rz8jZoZS64epcUGkr9ZKrHVjqL4ilTupzZAMmz6DOopRx5jKZj+JUiWoM8As1icPrdo+rNVl/7F77xRTJ9WVwU4Ze9f3qN1U5o1bimJeHTKQxPsTkMUbKCI5+Tt3NJ/IL/zNL9EFcaz3hknWDx9Lw1XIQzou1YTVEMLZueacXjsXx4qb0uT3/cQDtAKFN4TSNJipuZ5udKH7uZ4moHC45LK4aq7cETgTHS26uuJ7BpX/L7d5dMA/9pmfz0YG6r5SYD/3IF3akzivG+h0XmiXeM9xwCNh77ac75b3O/mtL0avUMbexTNH8unjuVmVycB7ZfP09GVXOEseGqtt3onNec5J8OS7rxepWf2Xb9AFwsLlIZmkH6U9Kd3hnlQ3m0eVZ/zDsbRfBsO8hEmVk50HDidYWAK4d7W45B//wjvEiXnXVDL2Mwfp1n6grdMxGFilLErcWFjLK073/beIw1U3/e2v0vm9gT63H2bglhPIeYVYClou7GVLOIuLcBYaaCy4wvVtOLZjb8RKhRDWPt4WJTf9Uxz0RzCZnqqkr91kWwzHh0YqtX14sMzkyUAsH73armFu/k0PYsU3x/7inYsztzudBrj4+Ndp0fXMDZshxZ0IEY+185wCX/DUb+coLy+fdvEHPk+7exoXdSKV6u34pgnZVekCYILV8GAt8XRyF47nw/Et3uxOpNs5x4p49w6dh1J97klFSPqF7FRxAK92V3SOlpaBzkFdajlYWnI5CVRbUycY+18fopd1A/3yToB4qwMZs8PnuUi8K9r97v3TxuvzG/36F2lnINXLeT7pYDjvafSQwpIdnk7e5p3XhLAXmrB93jN7uEFuyF3mGAmzNCQyW5EaBv3uMOOfITRvHm5V+JTr7fhw4CRVGFTbEdaOBdJLCy12VOma2LN9iT/9Ll0RhXotdVoDqIBlIBHW2pLT+cCbxJFpN07X8n8N58dS793oAjytPC5NfywCwcxl7eIIoZnuKix4Q/J0w3IepVCCkkiCWE9ZVsZ6UhXMO9sQqlyf3Enx2NWqqzvN1cWjs9KVdYEWn9ivbhjEaJwcIO4p4m1KqCWE015wnvytW8VEt40z9lEXL1NCn9cZACdZlwdQveEUyPJUnbIGckV4xzXHy1KFvFmgSRxix5R1TbONFuowNGdjdvJ2lXMTL5t6+XjO0uUmkee2jn/5F6dPp68LaH6e+MS36c2nBtps9BEHw2igxVq46Bz51zdkcScH7X/yAPZ4hPOFZXZHESgwWUjEE3Z5dQmPgrImTluyUyxYcfpjjsk2oGfvnOpWvshSr2FtNqLjT/2P975itC9h3fvMOk98/Bvqp5/Plt7IPv/ODwB2MqvLzrMLFDu27a00LbMLFmz+6RJtwYQx8cQ53Y94rJ5DI9JsxkVQyabQsYWjNBp8vJx9ygAd51B5JWGJiKN6VMWtVZUsx6gcQuVD1m3fiXzLfeq//6LYejGALN9D/PF+uuVkR5tTARRHBPyjDCwFTRfOkg+3acO2LWEREYUKFAOal9zHhgFGwh48BZVAPKnCst2YBJ7+9DuQJoDvvLe/00oW9mqpmtzpYO3k3K5OcseUm/38XtMI6CmamzuoWTq64CUhifbTX3k3Nuf9qM8LAVz8p2/Kq7b6wt8aAsskshsQS65weFtl3m2SBASvreWENy/8YEA5OaMMpYtAeDUQ/+yJsd0Td78dz5YLzFLyrrt6a+R5e7rStJV2wPFpzvDpyelx3ZzVry+DkAf5ZAleRIw2WZ2m7z3342LoBGM/sp8u2urqCza3stXNXNl0+6MGBPuXdDNaTsRoIElYWyndzSe/UcOFJOU+17PxXB0L1Ju/AAABOklEQVRv+i++fNTbPL13bUDOjlibNkcFzGKTUOrA8vtOG10d0+rhGAabNx/nv1niRKS7FrsNu++76nTwVPtUnYzUC2HoBLAcNvl/pa7aCIWzKUnlXp1bnH9GZFTRgvmxydugvorjH33ynYv8+ysTs7/rFPKKj5J7sTVYi22nHQnRTqCbscw6DXlPTsf8MzRDuSgMBjn8o1LD13DGDDUoiVqu3ZNCdpaWljp1GrpOOc/mnLRwv/9N8jcH8uW9rrXEixyYRflruHty+tG23cCR4aa17G/MS1KfTWFYMu68F030+wtd13KsSNjkCIeMcITk300DqAHjpD/mQEaJRDWarXCXRPiJf4L4bBv4bMo675qxEYT3/+XWahA1d1LLc2VfIkoodnUS+w0/jjex9bFfHv+BsXk3/3/5+/8DKIf6sstcS3AAAAAASUVORK5CYII="},37426:function(X){"use strict";X.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFwAAABGCAYAAABBovOlAAAAAXNSR0IArs4c6QAAEKNJREFUeF7tnAuQFdWZx/+nH/c1M84MyAzOIBpjBYRgNujWqMFE86AUNYpbRGMqmlTMEtmEGC2yZrfUcTdhw6KbJyYQNUIFycbEVMgTDBoRMwQzBAyia5AFBKI4w7zuq1/nbJ1+3Nu3b9/b3ffeGZDNqbIGb58+ffp3/v2d7/vO6SaIWD71ezYpl0OLoCJhyIgzBtFsQrMasv+Ut+o64FvH82PFdvg1qh10rqxa/7D/lPbHOV+ErgGaQDHa1YKBxz9CfKtHRFS1Ognb2CeeZglqYLouoCUK4EYMQM1teBRQbaANAiomcWDbx8hQWCa11AsFfNGPmChNwmwiQHZLuC6lcmlV63HQE2HDDNNGlAETxrC37w6SqwVmmHNCAb95C+vWCaZOmNlooHmKKgoiYXD7J8mBMPBqqRMInDFGbtyEd4sxkKrAgyCFsfMRTEAU1ZaBqdJXQsHObMee8bLngcC57VZVzA6cp6oBDzMhBpmQeo/7zOiV7kmn2Ne/mIzUouCgcwKBL3qStcoU53o7J4sYeuyDZH/QBU7m4z2PsFkwkCz00b5JXcTB/sVkYDz6Hgx8K5uCHKZ7L35KAP8umwURSe/srYs42r+Y/PWEAP/4JtaRB870XtzQMPTE1W9xhXPg1KVwO46IE7zedxs5cvIA1wADpxZwt8k8uYDb/rPwN+A1PQCBNnzhJtYhaUWT4ijhVAGueUwKp2gQvL77RJmUvwGvScgVTwqtcK9beEoq3L5JI3aCFc5cJsUZulMOuEtRJxb4E6yDxcrdwvECzhhLAJgKoBmADCDwKaz1odeqtC0DrNZ2AegAMgCOEULG3O0E3sxCP+AaIMiNdQt5zgZAB4BuTQMbHIRycEjRaK6uGy9llohHZ5hXop2TALraidx1eiwmy5A4dABHCCGUNxQNuDufIWPolw0MfBhjnQCmvXJAzaz8njY0eDxdg8KainD482EXQ8sG3mclqqKcKvYj7a7FBexfJLmJ6VqGLPt022kXz42fBuA4IVYGMrAjBYV7E1ANBG6bkVmvHFCzd60YOh5NUu7aJw9wp1eLb5ZbPnBhvB3Aq4SQ4XDAiWXDS5hTDP3yHxoT2jPGztY0tC/pzRytTdm8d42H7UArqDyCwt0yWH1fbGp7e0wnhLx0sgCfc+h1GLff90aNGToXbH6nzUA9ZsT7hNUL/K7PNLfOnYVWALtCAVdthZd0pLEKn/uHl5SxFd8cjpCD9kC2QTfCbjca+I1XSKnrFyROB/DiSQO8b6cyuvJ7w6OV7bcPYA/kYNgV2jA9uMqlXoUv+pCUXHRNYgqAvdGBF7cYNNKGzzWBb9CqAA8/lRbNSSXA1doqh3/igLtnTbGhk2ZdwP3tdRG2bruF83taYgveJzR1dcXiMYD8dRDqM8+PZH/+rJTLZLLmKEgFN7AI/sQA96wp8hWfBnopkYBXnhDLIU9qayI3XSWmLnpXvKm9yYxcy4qmwfjDXiW7/ql05tA+anihTzxwvTw9ezID54q+5MJm+cOXJ5tmdiMly8HxhjMK+w6p+Wf20PTGzUa+ODKW2kXFFQRVsfs88HGPanQbbgN3W5SGA9+rjH51zUhJ3iGc1S5V9Y1XxJLz57U2d7YjFu58/1oZDfq2PyqZB/9bH7PSIlZ2RJQc6NUjzZqBz3+CdcCl8IInIGJoS+MCn7l9ezH61TXHIgJ3wY7x8D2F1XfKU6Z1xuqC7dxjVgP93PKBNwaGkoYDvajyiQTO1zQTJwp4qefhTIhoSsHQcoTqIB9+b3P8ip5E6tzp4JnHyOWNIai/2a5kN242snmVMUnmCTSvWZlo4MDQlo81LLSPoHAf4DZsrnAaAzE0QnSSE5YsnJS8vgfNGQ2sLQWhGnmeoeT//eUo1DsezA2LMmOCCsb/IpOFxP+WmJWJAu6sijQY+NZdytgDj45U8MPL/emisjkFrm5CaCxrwqZyylT6LR8SUtdfGk9e25sfuepSErtqjpCY/TaZp0wL5cgwjCd3qfkntlDlnpuEJsbAvrjWGBE0MFHLMEECE02VTzRwj1sYoxg5LY5D7s63n2PnrvvLteT9qeUdxTz305fhfAu4Hjrw8QdeVLehp8glc4n8lVvibV/bqKR/3geNGiBnT4HwnllxKZlQSf9+pu/eD13QGbtgJhHv+Wi85ck/KdkHN9LMiQO+jnVALHcLS5CG2TvIT6iwRXn7rcDWXcroisdGI06ajrpz5oTpNieGnCJxHWTpIqHp2p5Y8s1h0J0HoW7fqxpHjjOqKMD0DpDzz4qLl8yA3N0B6eXDUJd9Oz+SZoyWA+feScblqYyXSXEBD9r6W+uO1nqBc+xFk9JEqAyi5fMCk5Pk7GlEXH+7mY8OLKt+pYxt2JTNy4kEFbQsEzXG5GSSTqwNt4HXCjPMnvLtt9Wq8JQJkXsnlsJLbbhOFCEmJ8jmf0tMln1jzNIx+NL3laHf76GaoOWYnExQc9IseCnWjFka/NizqGco6wp85q9jHZrLpBTaDto+bJsQp37ZgLl+ePY2oC/QpFhw/YoFHOATpSETQnU+cfJ/pwjTQX7wBbHtbd2lk6W3HU3TsOBu4029mjkpizYnCngQbNdecS4sX9j2AX6MK7wUeGW4XlAObOv3oh3nwPkA6IQI738nif37J8y1xYrlJ33IfPPHuYwg5ZjATQlLUq5ugLuElv02cyolqz4TATwkbI/AS2/UNSD8QBE4D6OjF8ekmCq3/XAO21I5IbKSF5be0JZceBF8R/LP+1X1jjV0RNUYkxio5YNnTXPC2yy4hBOq8CDQQSbEx7Y4TTrAl68dK9NPNPwuO64T0nVWSlxypdD8251MeWo3M3pmE+nG95HkOZ0xkadnXzsO/amdirLu6Zzyzu4E+ex1QurxZ2h6xytprWi/be/E7sjE2HAa4BZ6YEadYC3gGF2+dqAO4ClQPUuQskL8ZTc1N3/gwniTDBD+XuePn0Pm4U2KWrLLRAEEkbGr302kf7pOaEmlZHMu+NM+Nfef6/Xh0WMZcy/JxCuc4syoEAvK9ObRfWx6/cAtS8HNSVwmZMU/Jttm+eRRshrYtt2quuJnLKfqYJ+9Mh5///lITGkrD/uHMtD+5eu5wUNH0yX58QlTeCN8cF+7rgHblwJbdyhjKzeMRbThNmhT2ZYvvvafJ0+a1lk9NfuNjUg/96pi/OgLcb6SXrFkNBhLv5Y99vrBDHUmztIU7ThMmpetYs1Cs7nEX1J83xy1VqlCF6f685/B1OjAS2FzD2Xp9ammq3tQ1Rvh5mXhcmVoZCSPH97Telp3m/3qeoVe7z2k5pat0I5bGUPuimdcOfFxAB6aXh0VGWNzt+xQ0is3GJEUbtlsS9kc+Ia7k5M72v2X0ZzuDWdBr703P8z//9ufTzTPmVb9aeADdM0Xs0eLAZA7vP9/AtwBzW/Xgc1dwM1fTnaGiSgXfHlkeHAkTn/xr4k2P/vt1c5da/Jv7noprbmzhtWW2+qKNOsQbuhToyrcBM6L7ZFQM7pMkmceSPLdt4HlvnXK2PP/C/0X94bLsXzl4fzAs3uo6lZ5lPXNSGuagb1vQIVqwAtwvdexYXNTwhcbeDp22zfMzTaBZf0WNbdzP9Mf+HTc+jJGQLnv0fzgc/1pVaZJWlj9ibC+GRn4NatZalDEFEGAqBowk/KFPrrWtiv1u6yK54cdt2Py1t3K2MpHy224L3BzvrSX1OzFBp6oeu7+Nr6dLLD0vQx132HoH/+gf+TpbcABXlyMSLHSybN6qjYS8PnrWNNoDjMkAaRaAop3slbXsZ+7hbuVsRUPhYw0U06W0EpSOTmT392fOD1EUhB8lefV11TjvXPCLTZ/6bv5wf4XqWoBzzDTRSzxVhoEvLeXCZunYZbB4P/qQMhwPyho6r/TBv5YAHDHj3SZEyv3TQQmgzxye6J1xrTqXoojjOFhGFMCXEJel3s1N9x9fIBJCcMK98cR+HseZl06xRllz2gQ6KDjnsehUcCnnk7Ezy2Ip7omQyTQyvZNSrLMeNfMRKUGuD0aXbPq8zpm9zRgNA9j7a/zmT2vMU0Gs/PjfsD5Gf4q5x5LKJNy5a9YfOg1zGaCz66lal/ziQibV3/BV+HVU7SFRQfX6o654GAkCJVg5sG9zyUx/N8XMuvy10GkOAMUCCIYX+dU9TwTaYLKZo48y+QET9mOE/CLH2LnUuaKMCOC9LXpFdY+OfBtf1TS//F4+MDHDdyy4YpAbdgxiRC+YOw3e3KY/He+pskHhNvKnJEncSSgiXEWVxSoImOCDsbrSibsHJNZggqSlbItt+HVFR64P3zeetauZXFOSYcjAA+y2d7jT90KZEaQX7IqG+kDX+Y6pivvzZXKQZsKNxQTYkHldmYw2KlSIOhxEzbhoM31Te+WCe+kWRk4P2K/XMXTI7vLVHBZL5OyUzGbiOYrb2WuRzVPpSJoVzt+de6/Crh8OugNywePKVoy1NtrBYXrOYJksrC85pgHU+GV9l1VoO6oH8hDYnHKvRILNivsT6m8AlTZU/lOb3tHZ2eMEULK34C45CF2lsFQ9GeDlN2A4zPPAH56C9D3ZzVz7w/C703xha7nCfgnUJKAA7/4pFqkiZQoDqonCydK1ioPB23FG1mYwLmHYh/zX3LzB37zDa2p6y5LTAZwgBAyWKJwnhnMxTDDrewwqo1iryt5PEvnAbfNA55+QUn/16PptCJXV3pxLdPJGjpK5wvKxa8qVY6CXKRtxQvN1jU5bAs0//8sOHhFTbJUYX3TMiGla5zlwD/50damKy4W22VZHiWE7DMH2+kQfxP44ocwk/EQrl7VekYgyKY7fbjzcuDWHmA4A2P/UVU5PBDTRkejvQms2EZb1xQft5B7Ie5SuW2JFj2alpjbu8lDlr3tFNvkk3BnB5Gnd8bj7daWaZ6ZPEgI4a+DF4Ff+gibouaL37YKA6mmOj4nuX+aewbA1d4zvdRPrqxU60ihjRArTJXacnYYFKJV+x9holefNp137Ute9DVVcMFqJgsEswW9mIwPghkUxvuaGc/k6buFwlWHR/DemzWvW83OBX3x0yYT6vu1Pt+57ZyEIzuWIeh9UoMQ4jv5O8DfLhloq3ovDTQzYeaFege0UfdS1g4DPU/Bnv415amloKfQNCnzHmTtGnCO3w0yHbooIc8/URz42WGPOQxlecO0y3sZtW1XZ8P2u6y/BoggIaXR8gCKGhjIryIHwwD21iEXrWLnMYKUF7jIcGzHEhyu9GjUcrG32jnc1L68B7MYgeQ1Y+f9HV7oXxxd5eSCb7GZTHR/GcDCQsbx65RvFfDcc2v5PGZTHq96TGp3J1480EuCA1fPzZILVrNWZuDckt/5OzwEVBBwXNMRudFKb9RVf8Ha07MQlUNUKW20ygneQ4xAEIA2qpQvUhgGhpU15NVahONMmmcwA13exyZo4go6HmbiCvKGwrQRxiPyhRPkCPg0rEvIXXsp/ufxjxCjZuD8xL9fxaYaOrrrukGP21fWoQAfvFA/CEQDjzvXrJYjcuroFLk5DH+p1UMxTbUbCjcvqorpoBX2ati9qlnZQaA8o13tOmGejCDlhznu8KEy3rxrEg739lrfrqq1lIW/vYwJP/kOWomOJqr555TN3xOlySHmqlueNOL5NxSSd4GTgsdHC6zP796nUuB5FSoULs9AJQHZGQqG61G1e3D+Dy50RqLE9NSOAAAAAElFTkSuQmCC"},19150:function(X){"use strict";X.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGIAAABGCAYAAAA3mEEuAAAAAXNSR0IArs4c6QAAEaRJREFUeF7dnHuQHMV5wL+v57Fv3UvHoUMCvYUNBpMirsiOsMSpXEiOcABLgAAXkkicwoQ4xFUJdipWGYfghMTP2I4jYqPEIUiAFQEWyIV0Fc4KihzAkiPkQgJ0Euhxx2n3HvuYR3+pnt3Zm92d3Z2ZnQ0i84dutTvzdff36+/7ur/uHoSQL9q7WYZz+7oBzE6QIApIMpiEoRSjA4DikCT+H9ZlyxZ/mcQBmQ6mmQVFTsPa584hIoVVlJuccBQEAESEsH1FHyjKhQCGFHqlnYoKXXhJYD2wJhWAxYbx9l3j7So6FBC0ba0EkZF5wLGjXRWFdoHwY1UavY0bBk+3o40tg7AsYeeKBW2D4EdRQTXkpwxMHsf1T48GLarec62D+PeBPuB8dtgVq5DnR1HNKtKqLI4EBj+MGwbzzYry83tLIGjvchnScDkAhhsT2umG7GDfChAJ03jLnmN+FN3s3tZAPPWJCwD1Oc0KCfR7K4qqV2BYMoWcyxcdxKt/EJZEaBHEwGJAngqk6HYrq1q+rTJhEWGorxAdxo27RsJqe4sgVlwJCHJYlQlFQW6VCUPx1XKZchZv3X0irLYHBmGNlnZc+xuhVMQ5UQtbaWHLsxusYxrvDC9OBAch5g7K6IdDASGEtENh7ZBp11WiDN4xeDSs9r83IISCZKUAnAqA3ASTK8CkOHCThdUwS06YIKpHcu9rEKbI4RgjEIuN4OpdBafSafNmBosOdICSnwXAYy0BCRNA2RWV8ly27PctCBPy0EPHcEXjiVAxZzXQD0AX+oLRDuU7IVRXxqAM3vV+c03IcqB1/xrXbTe9KpfEjL3gc8YeNoxGE8v3HQjhjnqM15pZghsgenJgPpi8qym8sGfiXuYcPkDQtrUqnBuZAUoMoVeewjVPZ6vb1P5greNpXLfn7abKdLmBfroqAuOFy4A1WM8I2woauSNnHT2AsABMjfSDgT3WOopdV6QMzOh90+kh2gtCFJyM/qo6MPuBQtuWLwSok15vBwSvMhuAsBbH3tw3C8DoLXeiarkc0/jZ6XlIm0GwHK574bAfxVffS9tW9QLkL6743quy/BTs1725gLDWZSbSfUDUB3LVUNytzh0zD+O67TlRzfaBsBqGabyhtdkn/cuqGaDmF5XnBWFkT+sB8gPYAcIaes/fNxN0fRZIpZSPF7CcjuNnB621jfaCkHAUb9pz3E/HrLGIrZ9IQFS/NPQJmj3hCwrWoAxs2nsMtq7sBo79gKbqarUNk4zsJP7eC2fCB1HdC5g8jp/+2estgdi2sgN0c2FFsGtFYPWzfqygMlgXQLY2FERrquPFGqyHPIAgIrHYIyi7px1GRxkc+ovFDXUiqzos+0ZrCyhDX+uB7PFeX7rXswCZU/VzHJ4V5avU4s2+ZDcAQURxABCLPckA1Th/HhEwhvcCvLwFQM/U1iuoJbi10Fa+DcKzFuqAIKJZANCvT6WN9JkDWeP0QS2XHXHfzxMFEAmhvGZUxZmoi60Wa1bQTPeYVGvcdWUU5VSXWdny+Mx5UqznciV5ydIYZDMIQw8BjL4coMd61mjABKMLCCLqBoB5E28PTRze9ZmMmc5STiOERLEyTvMQ35e+Bvt38YGJ++tcwszA+mf6ymvc82Bh+tE45PU65VSlClM9V0qzV/5dp5rsVmDHnQDZ0DdfBARg66AKBBGJ2H6ZNnZU+8U//Xa5tqGBiE8z8KN8J7QiiOK/XkFYHahzLltw0096YfQQwu77fXRxj7e25OJqQfQBwOxX/u1Tp3In9xt2FQSIZLnrT1fMt0W0G0SDpLn4qXvpVxIzr7w5BTtuKwVxj0pudltLEITwWhDzdH2q48A3F7zjLDunELpF7DIIB6QEJMCyoKrL6ZJaswZhCTF3V9YEhDp3tTL3uq/3wNADAMf2NlNv4999jYqaFVULYtHkuWORg4987GzoIErOPQiEypDiPTY42yAYMbkLF971Uh/s/xbAkR3NtFP/91AhuFvEYm1yWPnF9z9SsT3Ej0UwLe7aW+NxMbLyHpRr44IdE6oifbW266gvdBDBMbo8WWsRLYAo+ie3EZNQXV6uhFCrzmJPjyq58jDZTtZbz5dHSHVA1HFLzq9bsginFYS1J6qMpN0gSsHZtoSiQmOYnDWXpWZ/VInGZzOMdzPKjvF89iQffWPIkLPD1uqdlYrMFVFEOxKUzzQ5W/F/ASJUK3AKazMIVrICAaAQ7WL9v/kn8RkLr42qidnOYyYVzdOmTuqFEz/Pnxl6MMuNvGUdFpSKDy4aaRcIL6t0QQGVZbcIouyGLK9U6ZpsCEyPYf/H/yjWeen6lBLv9LxNRs+mefrQ1snMf33bsouowsgViAcAtp4Cu6aWh6d1SLULhA1GQBBWgHIM+1dv6UhevCzwthht+MXciWfunpgy8+QKo10gQh8ZNUgEKiFahD1ackKYe/OOLrXrA5Gglms/p505pJ14cn2azDzVWEeDUVL1T74tot2WYFcwbBDCCgSIAkXY/Ou+l0ouWtlgrNkYjz7yuqn0Liqft5g8uit3ZvcfTpCJZRiNwoaboXgG0S5rqNfksEAwRYxoEhaEhBzDzsXrohdc+0BnUEvQDv1Y006+YiZXPVyhz5HB+zPjh58pkJqnbK4qbjgKq+cHm4JohwV4SY2HAiIh5g5xZBpHpsQwkeK48NbBHkhcFGibvn54h0kvPqTBkuuZuvyLFW5NT79lntj2yTEyGAk3xRVWMapqFojeUxCNIIcGQo5jUiu6pFlXb4r2Lv2zYKdKR18j7ak/0DVukHrZDUxd9oWaYe74f3x1fPTIY4WsUSBuYkUAP29BNHMNLYNQCC1rEC5Jj6EUMVnfmq0dyTkfDRagf7LJmDr9OimqyWHuJ5k68MUaENqJfYW3d941kTOQVKZxO3g3a6s163fLNbXDHYnC/MhtBYSVeS25paTMUaIIYxGVzd9wYCYo7vmmhso6vJNr+x42gSPpoIPStQTUtT+s3BFhNTBLpx/52FiWaZyMAongbbuoZjBqQPhRVjPh9u9BJoCtg0hAUiPUohGW5CZLphbIfXc8L1b4/F3ZDMATt+haPksgGcVc00XLmXrdX7rOwE88OpA2Jk8ZHCXuHNI2K7QCxKEWsq/1Cgo62vIMwmVhyJq8JRIgc5OJkZJckKXUvKVq7/VbmscHsVQZnzndnAPfNbVXHjet2CAh4dUbZeWqjXWD/fgzG8bHTr6q84LGs8p0rHhPQQSxBN/ziDogmFKMDymKMIkpUmretZGZq7/T+HTp8H7QX/gqKWv+BmHmpQDZDGjbPq0VrQFJvfR3Jbcg7VTyxHOfnxw7ulfjqHOOGvfqntpiEUGtwNmgVi1CgLDiQzTCEgVFkrs+qPauf2JG3Z753z8kePVHBJyRvmQNKtfcx+DwdlP7+Td14AZB/xWorvn7aOWrZ2qlTTx+y0R24jU9WxAgiu7JS5z4fw1CpghLRlQmaYaUSHXJvZv2ubomXSxNDj7ILYVzgygWIfXWnYr21MaCln6Hq1KEcO2jMaWjv+mOjvEffXw8nztnmlw2s6i/NyDCDPQtWURp6CqTyZKRCEuwlCRxJneufTyl9C6ssyvwKOnP/bFJ2XFuBeVF16H22rOm5ZKW3a+oS66vmx4vD0pGjvL0U7dPEudmtjDBs8i412Fs2SKGQlgqFRUStTWoIOoPRsMtWI3DVztAdCy7L6Z+6LbaYaddlew7pD15jwbGKNdMnUATI6QrMfmp7zebj1kSpl7eqpsHvpvLl0BwZJx7nE+EAqI6JhBl4O69x+AHK3rAlPoBeNPOVEOlJRAaoYgRRYvoZAkmWxYR61mkJG/+53hDP58+yief2JQnrltD1ei6x2JK5yUe1ip00B6/I5tJv2UIizD5pHmuNLHzFSNasQgXEPi54mFGa1v+RS/2gmbOAvT4ghghL6G+iXc9PyZkWH6ZiNzXrBuMmkSwlpkqSVpKiscliZkozxz4chQW/07DXJP+5l5j/GdfKkQW3ygnl3/B00xc5KHyQ3+dz1POzHHTNLlhBgrWQUDUiwlEGRuE3dPLB1U06gNqcmZcyMXor/De4jHnlkCIWbUYvgqriMkxGeM9cnLdY1FQOhoG3snBBwuRq+5UvQRoPTsKhe0b85Q9ZeSJm5wbVqCuC6K8nDftCFiqtJ0mCAghxg2GC4gykH/4fQWMty4Echzdqp6Bi7Mj90yfHQkMQswjBIjeiMqYJktMYXIUYxLr+5CSWP0dFZRGLtOZI24Qz3QdtJ/eo2kjBw0ibubINHOazk3VMEWaY6qU/CtLcIEgfvMNwsscoQGIMpBvrYoATvUDl7rL5zuEWgr0Lnx++TDiZm7fGwiEc2ZtFAypOzKDiTgRRSYhkyR14YCsXvMlBZTA60MitwT6nq8YheEhC4KwBnvEJAK168w6LBD1rMDZZzyAcLgsFc6OFSe8CXPK7e1nvkFYPUzMrDWyArawikREtYJ2lMUlFDCQSWr3AglXPqQoHWKnv88rcwr0PX9uFM4cMUUuxbYG0nTudEtWBtYork00unxZhNd5gg8QzeoXKEYUQUynwQWIJFdZXLgoJkkxlIogSGJAEsOrbpeUD98mebIOcbjkl1u59uoTJmCOa4bJiZtmnhmcuFKMDdV5pjpW4Gy8ZxBeIRRHODXB2ovC690T0CKKIMR2Sm0qwiQyLauIRxQrXlguSpEtEKo4rC7FES9ZypQ51zDoXYSgdCLEO6x8E+hp0keOgHLyJa6/8Z+kFbLWuoRmSJzQ4JZb0gyeswL0dJAur0eEAcLLsma1Bs8LEKUDLPbikOWeJEJJUyQBI6oqDLVpGOJNyMgIldJrjHWTsCaWy0i6poOCjItsLCErQhAwmM5FfokMpIrY4AGCp2DtxxLKjv98sAgnCHvNWhYhVGWMuGUZqCosyotWgcQZMBnFtFtjZP2tuIQiJCSNMwJTJ2EJeVayCK1oCTkFyV4Q8mMNDUF4GR3V8yXnjUVYI4DSBgIBQY9hwoYR4YyRwjokFZFkpnGTRSQF0RBuSuz8UEEFzcpyWJeEROJ9qjKjgqmTygyeN5FEcLYgGEikFFfl/EJoCiKoYzcwjfe2dpjfWbQdIxZOnTsZ++UjV1uHr+2r6YmhEgirsaUtNUwvWkZMJtRIYTEpgihmmZKCUUZYMDjWTKdlVgKhkwAApkZiwpYzC0QtWEKZszi+teH5C2DobwGOPOtvXbkeKIPO4L2DJ4NyrH7OBnEJgN6z7+E5FYKbnqFzgLDPQdiWgRJhXI5gQUAxOIr/g7AQYRVVF4mD4yajPORB9HoyNAuAsIRItSWIZz3GBruYzivWRy4Y+HIXPHs/wKn94YDIq2/ifcU8URiXDUK8E2n+G0NfGzn90tfLr1r2A8K2Cmvvqx6zVvBQJ0RhETKhOMErPguLsE7zlo705kulkbAKYQ0ChuWKxObjHEQDuiOncvpv2tKRnPVbMXj0Bmui2PKF4h1UXQf9vAisWZk2CPF3ia5PRV/9x4+c1rPvWlNvLyCqz87Ze2DFAZNYLA7CVVmfozFAnaM4nC0AOSsmer/o5YJJpAqAxUxsKPNpBbb86BU3Ri4e+Ksu2L8F4OV/baYPb7+TchY/F947X0WhZYUQkeijH9D1NB/e+8DYmYM/LgQB4TwlVPwcQ+tgvF7cKV6EUtleoWPR88W3zv5qAQjgiqxnYqXTpB+8MQWjxwCevTscl2SAAWP0P7h5sHz61hu9xndV9kwiobO51oFmfcqYfPe4TpQrJ6bcRKGmT8uosyxkDVt1x31h1LyuDBXUVK+kJi8UuS60gvPQ98JxSWJkN0P+NX5m91TYTagNnOItkwA9ACA2E9d/KUp1TfQpCbLjDdYivMya/C9yuSpEvHtjdBjg2G6A4dKrH1rVnLCEXOoN/NOdE62Kcu3QYQqlbWuTkDk3BxTTW9rVC5sgFQxbrkhbZ3rfwc3by1OfINVq9EzTnRNBCqSn18ThbL4TkEeBuAJiyGr5pyDSWnwmSJmKYgLpOkRiU5BMZnBd+wDYrftf5H4s7DrfhR4AAAAASUVORK5CYII="},55303:function(X){"use strict";X.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFwAAABGCAYAAABBovOlAAAAAXNSR0IArs4c6QAAFIpJREFUeF7VnHt0HNV9x3/33pnZl6SVJXltyw9kGyMjBztgNwk05diFHmJIk7QElYQmYBxIUx9oCOSc0D8a9eQP2rTp6Ukf5NGWJqchB7vlD5pwTpwmuAnBGGJjbPzCdg0SRpK1eqz2OXNn7u25Mzs7M7szOyN5ZZT5w5K1d+7M/dzffO/v97u/WQS/wccAH2rLlUudhJAOpKO4zoHJTKkgrE1vS70/uw8NGotteGix3VDY/QzxIfydfL5LQtIyGkNxmcq+p2CNGIYOl9b3wKUDaEgP6/dKff4bA3wrf1DOQk+PXjQyTEGShVkGoEGorBZIAyYxnI116eMn0ZB2pcAGXWfRA+/lQ0mlUsmoxOiSgSDBt2bTAdbtalGbEASEA7DpnpIxfrh3qPRegV+UwDnnaC38ZVpTS8s4xm1uOAI2pQKpv5T4wXbOt86REJnFenz8XPfDs1ca/KICvp0PSW+D1k01I2MgXXHDM0HXrDtcShqlxpkge9IULJclWRs/1f74FEKIXwn4iwJ4Hx+Ka1DOANBuThH2WKlbQgQRU7Pnat117c0nxD5kYIxTjvilvhOl7IEdC7vAvmfAhWysh690aMAyBrAOc/i1BbARaNRF0tuPA7XGtw6226oRR4wTyKIp+dK5DQ+rC2HxVxz4XXwv+QW80g0AGQw85gZh/e6F7RUC96TU46i2bPBaGnpoOrH2hGFCphO8e/zY8s8WWwn+igG/mn8zVoK3MkChh8tCNlyHB1IjcFO75+CR1C+S9ZMavOA2ShYBXIxRMn5szRdmWqHzCw78av5QRwWkjAE4HWgpAVJSWyjnBdv7tJjT2ESyHCnyXx8UXVE1DS59Zv2fZIcQYvO1+gUBLqLBb4HaDVDJIMDxpjcXsAh6hCAkuAnTbceV9NF0+08RF2OscgNJeKJ9Fb50GH0+8M6CxtxS4AN8SMlBKQOg9TAgJJIV1A3U6/5VrdR3WC5LDJGksAU5kufjuoa4MuKEc86mlkN87MDaXZVIYxXnRW3YrJ1IIuXV4jIds85Aj62+gyi6HSF09w/taz6NGSRZ0xbgSkax7DrYnngAAAhFOd7RMXYyM1gI4zlv4MKtWwV/3sVM/5kkwy7U8LnPQD3WHajbdZ5MmHWH6XbESW0IvHwMiBGpmAQYe63vvlzQAjtn4EKfvwfaUgraMgN4UAQSzr+ZlMzR6mwbdl/U1u1WW3fDtXzcUMyhwhJo7NTKzzZEsHMCvpI/3g2grmKApHCiTVo0te5mYXs0Tfcukk1sIsz7qcmRNRZLSnz6CzAQBFiVSuTi8c33TNs0IgNfwR+9CgB6Lgu0fdcBemoOpum6HxTcNMqMT7jjvfUoklUHvCGl0ETOahejAHGITb628e63hcxEAt7Hv9ipAlnfGtheOA1hTpgL2CSStHtunk2cXz4m2LLrJtsDyTEgrMgTJ9cPDkcC3ssf7eEAwsLnfzTxt2uPapj7V3tC6tXa9f9armSeXkndPQQ+KWGLcf0ahVHxeP+nT0cCfhe/i/wS1vQjgMS8iAfcnAdJRD31Xt8n79J0wRXWHaTp/nLlOJjeSfVbqD335roO4kTtbMfnD64eLEcCLjrayr8tj8L5dRwMz4ZApAlo4pGYj78cpN0uCLZfZl7QJ9/i0Vs/qOIajgftO3G+1l3XV5huu8aKOONxLI19vP/uMTsdEBm4uEHhe/fBI8s1CitAJtHObSIlNSsJ0+0GKWmE4GuJbqqtWCQ99xEuWYizd08NfGbUfRuh0ATkeiu+Hf5BeUMdWYVirDPYwiN4FE00uzacMIuqQWjm/oUsbPYgqvrvPAfR0gc1BnXGhZl88eSmwbGmwKuAlwFAFwiPpkXhfyTpaVEjMe5hmoP99DQ8WToCJTu+b+jfaxQ+K4JzRrNF0vyMawCK4r5EKHDOuVgU1wJAYqQwrb6dm9YuieoOsdZoavOnwdlKcCZc07znxKzEoU9ToPVt7V48Q4g2I104gTd0ZOQ1bW2xLC3BY7n9cIh6nmzvOtCg3dF0W2g0wiSrsdx4u7G0u8zZisjAOecietw0Q4vwxK9+Mfm9068E1HCkAFKNA+dSHdxqEy7RKnQn3cKJ/be6fux+VfF5sENU+yTEZ/pQ11rp7zbe2rkstUT+aPZpOE+zrgs2Sl5UjwRznUnAJ+QcGz+8zUrRXn/6h71zBb4OANIfefY/xl7PjdQqlbhaDzIAuGjnOxELCDyCwXe1daADv7N76QjkyGB2H1B7799l1bYD1Bw4AMFYZ1i5tOzC+Yn6zeb+0z/sRS4LF30ZQRrOORfP+qZnh89O7/nZf+bd42gEDgCpRrJmu4jARTte8bFyz/lJgIbJdu5sLgHBvf0fin2t/+auB7I/hhfosNWJy430XSRdbTg2vffxT6793ETQbo9t4c7kyWAw8F80OeciR3LV7p8+N/r8Oyc8inbZwIU8mCBdGdwq2AboCwQ8gWV05qOPLP+X0hH4q9yhhnxNkGUjQKqRTI59esWbU0NoqOm2mltS7P6aARdiv2L5t/72HRSjnoKYKwrcNmB7gppYuN00qqUf3rkn8ys6Qh7LvlB7TILCdgKkDJiNvbFq93TUjWMBXK9JitVzM+C9FGD5mqeeGKmXxdYBt3uuWnqQrIhmcwAumkeBfnDnnqVH6Zj0Z9n9ZpzqjTktQIyxYjuD0cPrP5+LsDx4mjiSUo2a5SsB3GOh1n94TVLmAVyc0iIrdwMX3bqtG2FplhXZ2JmNuz3r11ygOxbueD8GCdbwy7ZwC66zcHJVttxBty6L34sA9W5hqqrvLMC1dA+8HIGCn8XbwB/L7q/1oCMyk1QSY60o9rGAkxXufH7rgAuKdR6J44enYHWM4xWdK7EYuIG9buUFqrKp/Ky1TqQAWNWC13d04TRucwIlF7VT46OsHJM5lJ0q4yjg3XNz1CUpEpenukh+7ODqL821m8Dp9gMeJ3DxVb/QnnMeaOHuKzh6XqVtexumZafMOfjHm29L375yY3szQ3ynWNS+dPD53OuVd4xd/b8Ve6jvgx0pWQ4sqygBZY++/OPpn2cvUDf4udASwEd5wfiUcuTsOXR7pLrBG1/amyi00bh7iyxoXCZwjXgizRYCr142larJSFKV0Y5118j/dvPHMxGeepihReOZkTeK96++ocNMz4Ycpwrj6t2/3DtTMXQu7Bwxy5uKCv3ELXt6MqlUHiF0Iexa2y88FR9VyQrEWRdmaOLkpnurznvwmX7A5yUp/hbuBZ5KpSAhyeiBjZuTX7zuw0vCBjSfz4WVb9//3axqGNwNvZXAB07sVRgu9gKgbntVxWo48J1nn4+NVEr9iDOP5SgSeffwwJ2N6dm5S4oDPCnJiEsy6iYS2n3dDYkvbNi2UMD57/38+5NUV5kNvcxkDlCKZOXNLHw7f0GaunhxOS1rGY6wJ+EWBlxMEjGgHwBcaTbL8SRENhI5eubgTYM1uzA7nx/wFIiFUlh33OBYicXx7ms3xx96301NcuTzsW3rHAqUf+zAD6byOmY5VuCVqqULaYli5X7AhzjHz5z6zjKUUJYxA/msITJgVQ+UlK2//rZM5XQ/R9gvAVp1PpGmaKtOH962zYzgLxu4sPBERxp1KnF817oNiUcGbgyukp0/bxP4H7y4b6aMwcgLKy8K6DovzwO4yPlvOPdUDyHGCsSaLCBUBsz8gW9/4QVpIjNxDTb84i5bWazwilO19Mkb/uiMyMPMH7i5YMoomZbRkhjDaXkJ/tg16+KPrLeAf/fc65Xj+Xe5hDEiCHke011rrpcHOpfWasS/f+ENejz/LgPZ9VRSDQzO+eeuukG0JRSAD770TK6CuZEvzLI8xaxi5OcMfPPw0zM6La/ktZcBmm+VBQG/7tgPlgDIIsPqc3hjWcS52jW15PSBHTv0ywJuWrcko1gsjpfGEbl19UD8y9d+0Hx9JEcpLwLllHqzguJWlibTyD3MHC3BDPXmcOxR9FbbCuD3HNw3W6EVY1LX2KyuMk3DrMyqPn3I0/Prj+zpeZ1O4Icn/4eE14k7dxcEXFxuy9G9KxmG5d5Le63bMKiR6Vx6+sDaHWaFbUuApxOYtCud+NbVa2vAT85MGCNawXTdMBIT6wziA50Zkpad7OGxXJaPa4W6bBwFqgH8dqYPp2VZvJ/J7zny3GxFV43JwqwFXMKsXNDNhTPsqEWao07yyvflrIZ9yWANF9K05di+Po7kLic7YydbrSoBhcO5w9sGa7mZ1gLP9Ma//P6bTQv/1/PH1BOFUW7KiawA0XXzp6FTdP/qLdK16Z6azPz7W0eNs+ok0ygAkWQuSIvtJiJJfNeaTdJAypKU+w79Vz5HVaOsCR2fYdOGIVI1bO7Am204ez9rZuFinKK49dljAxs4gjZnAi3tRpyPHNvyh5fcxtAy4CmeJLes36B8ZcEWzVYBfzH4YagrpbB2bYIt3O5ILKBTXdMbOdKr3ooMksSyrw3c+Xb9xVoGXEjKTT3LY1+9Ybu5aJYo5TVddhsNpUjosvtGcpTCDC3V8vCyLPxr6+iVk+biKiz8/iPPzU6XCsyycJVNGwVeKei8PofvR9SRlADgLilxL3kGkydObhoMjTRF8DOsVjZipkuIQ+H1zXe96ZdLXzDg3zh5qPyWkWOMYiSKBwxKkRJTgAFG9/b2K1s6e2teypMXjtD/y2eZUZUTXZY4qNYe9q61W+XrOzOSreGleuCGzu0wv5mONwXuU6xk20hU4OLaAyf2tskUX7VkS/eZA2iH7zdYtBT4B3ozytfe97tm4DNBS+ySpjHk9lLMUciwQUkRd/4kS0v8YrHIZRksy3Zt8vWlOklSlk0LF4tm64E3ltnV7UtGsnB7ssVC2myXqKXAt3RnlK9vtYC3+vAAF8FPoSopl2PhATWPllnUtsnmBDxs3C0Gnla+vnXnggGveSmBwINfNTq4c5e5xfbYqEvDm0iJ7XEYDBYhcMCkPd2J+9vSyjdvWnjgRV1j+bzGcpLKRHjvaPgcgIdZd1XWDLJYgEMKRFgvIs30FQAu6gMfOPKT2RzRjKII7XWN5agN3PFqgh5py8InpcdE4NPUsi1BsdeR9xS4ezB2HuWKAj/xk9lSqchmtLIhgFOxXWda+FyBe4MbbzDubAKL8S4u4CKXknYsfH2yXf7nD9+xYPnw+1/5UUHVNSMIuFkhEHC8/IkHe0wLHxahvbcixVN5VVfYaWgwcXJbuB8etljan89p0Wyw8CpwK3mVJOk4kf5p2x2dS5NWsNLK4+jMhPE3bx0q5nRHUmwLj7IDYQIvCUnxBj4e9D716osKuNjp6Uk72cKkkiBrEt3yHX3rYjLCIo2CMIjUrAwi66zrlgUKH3xzeilKgiyyinCqNCGyirX5Eb9JEnChoww4n+Uq++n429pUKW+IXIq5aLo0fL7AfYVlMVu42PFJSp1oSZzhdHoJTsYSpB2w1NGmEFniJEaSGLBhklfMxJWOzIy3LMO6VBe6b+UA+fu3XjWmNLUWymtV8AZnXOTDxU8dY6NSKbE8BaNkFNi0Vjaojq3Q3tD5fIB7M9Ze3XaeTBkMjS4eSbGAOzs+3XEgCSVBYnKMtMsKQVjCiThCSDdwLWNoArc2GnpiMTRetL4PwMwSVg+NakCqwHXGuMoMljMoE/pd0jVWKGhs1nQJrQ1lE3hIvdvLt3klxaviQd80tMiAi0IU9yZEexyRNimNOxUgmEg4QSRs7fhgxJD4KSSluqsTA5CotQEiDpE5wa4cisFlrsuM67zCixWDM0NnJYMyW07Uos4ryvyAu0N38+I+2m0trBQWkYZbxT+iHoWnrV17RYnjdkXBkqTglGRgLMlYRhgJ6OI9E1kTwGNgYAt0rArfqcqxElZCj1RVBZ3LnMqM00qZU2ZwAVtIib2JjA2Zm3v2c7Rwy7qDZMQ2ARk4MmhPNv/mgR3Rvw8lzFG4DC/FAi6qsey6lFiM4TjuQLJi4A7chhimSMEYyZggoeTmMLEFXRzMtHjnwNySFRWsKaCmf10BAVtjBhewxU9RJiFAm3IS8bAl5XHbSwl5jZBTg/Z0db9pb41FvExoMxt4YH14UA9W2ZtVY2gGQULPUymIGQwzIqE4kVAikQBGNKRUYTMsIfGqBTPrDa0XrMS/jV+nUzH/hpnCK1AGEdiIv6hM59hQTNg16w4dotXg5dseXPpqaZL8hQm82Yu4FCQdymoMzp3cNNjy76q1gQe+AdEcuPP6iZAWAV9EnpxoKAlJENWwTJWQWNCSyWStcDNGnJdqjWqwQmIyF79romjTNQvlqmRgRVg1mKDFPUUr/7HuXkz+yZ0PLXs6exq+kT0SALxavGPIkxvO0pF9gwvzVdg2cOsdn7PHp/e8+KNINdKews5aUaeMxOs/TtlyChLErp61JsAEYMqK41ZwjQq/kbt/io9LZQCsON7LXCC7DeWPr9oce+K6W5b86fCL8GJp1HeRFFVSFOjwiU2DUxEfmnk1q2ko53w9Bej4xPP7Ro+Mnwv9ovPmlbT2vYhFta5m3JXQi4t3M5NJKEEJxBNhWa71NpC9Dy/CdRSTOcfVnzPUfGKiLJSivy7Sjv731k/1jFGdDA5Xa8PrvBJJIllcyr5rvwI4L5IRT3IDF8/UwLSm8a++9LOpfReONi3pbQDuMDZ/q31eqyN3Km3tP5m5j6QzA0zTEFYULn6638FyxmK1reVMQnzvGztXkb++/tbOVakl8uD5/XC+5H2ThEh4lpRiFw9v+/3wOouIQMOaebwEzrkYkXgTOT5cmKqcmZnRJqaLRnV9C+vL//OYeIu5/l1PVyleDECv+9xTqFf9j65hJCkKr2/rd9GueAL3JTrlq9u6YiWg8PjoIThUyppSYhAwMFMme9rSE632QKIAasiucc5F4sl+114MNzADF+UC71WbUVqC/blheDJ7HPJMrwBIeWIk83ded0fucr5Z83LH0xRm9YsOFg3wfQDov8f3x0fYZAJUSSrrREK6JiGZSFQHwiQwFGroZUwoJxLlpTJVtP6CXbl6ubBacf7/A7kxJfsyNujOAAAAAElFTkSuQmCC"},22214:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return N}});var F=M(58289),z=M(75538),D=M(85458);function N(O,k,U){return k=(0,F.Z)(k),(0,D.Z)(O,(0,z.Z)()?Reflect.construct(k,U||[],(0,F.Z)(O).constructor):k.apply(O,U))}},41685:function(X,nt){"use strict";var M={value:()=>{}};function F(){for(var k=0,U=arguments.length,L={},Q;k<U;++k){if(!(Q=arguments[k]+"")||Q in L||/[\s.]/.test(Q))throw new Error("illegal type: "+Q);L[Q]=[]}return new z(L)}function z(k){this._=k}function D(k,U){return k.trim().split(/^|\s+/).map(function(L){var Q="",_=L.indexOf(".");if(_>=0&&(Q=L.slice(_+1),L=L.slice(0,_)),L&&!U.hasOwnProperty(L))throw new Error("unknown type: "+L);return{type:L,name:Q}})}z.prototype=F.prototype={constructor:z,on:function(k,U){var L=this._,Q=D(k+"",L),_,P=-1,Z=Q.length;if(arguments.length<2){for(;++P<Z;)if((_=(k=Q[P]).type)&&(_=N(L[_],k.name)))return _;return}if(U!=null&&typeof U!="function")throw new Error("invalid callback: "+U);for(;++P<Z;)if(_=(k=Q[P]).type)L[_]=O(L[_],k.name,U);else if(U==null)for(_ in L)L[_]=O(L[_],k.name,null);return this},copy:function(){var k={},U=this._;for(var L in U)k[L]=U[L].slice();return new z(k)},call:function(k,U){if((_=arguments.length-2)>0)for(var L=new Array(_),Q=0,_,P;Q<_;++Q)L[Q]=arguments[Q+2];if(!this._.hasOwnProperty(k))throw new Error("unknown type: "+k);for(P=this._[k],Q=0,_=P.length;Q<_;++Q)P[Q].value.apply(U,L)},apply:function(k,U,L){if(!this._.hasOwnProperty(k))throw new Error("unknown type: "+k);for(var Q=this._[k],_=0,P=Q.length;_<P;++_)Q[_].value.apply(U,L)}};function N(k,U){for(var L=0,Q=k.length,_;L<Q;++L)if((_=k[L]).name===U)return _.value}function O(k,U,L){for(var Q=0,_=k.length;Q<_;++Q)if(k[Q].name===U){k[Q]=M,k=k.slice(0,Q).concat(k.slice(Q+1));break}return L!=null&&k.push({name:U,value:L}),k}nt.Z=F},12713:function(X,nt,M){"use strict";M.d(nt,{H:function(){return D},Z:function(){return F}});function F(N){const O=+this._x.call(null,N),k=+this._y.call(null,N),U=+this._z.call(null,N);return z(this.cover(O,k,U),O,k,U,N)}function z(N,O,k,U,L){if(isNaN(O)||isNaN(k)||isNaN(U))return N;var Q,_=N._root,P={data:L},Z=N._x0,tt=N._y0,$=N._z0,lt=N._x1,At=N._y1,rt=N._z1,ft,ht,mt,yt,Tt,xt,Nt,bt,Lt,Kt,$t;if(!_)return N._root=P,N;for(;_.length;)if((Nt=O>=(ft=(Z+lt)/2))?Z=ft:lt=ft,(bt=k>=(ht=(tt+At)/2))?tt=ht:At=ht,(Lt=U>=(mt=($+rt)/2))?$=mt:rt=mt,Q=_,!(_=_[Kt=Lt<<2|bt<<1|Nt]))return Q[Kt]=P,N;if(yt=+N._x.call(null,_.data),Tt=+N._y.call(null,_.data),xt=+N._z.call(null,_.data),O===yt&&k===Tt&&U===xt)return P.next=_,Q?Q[Kt]=P:N._root=P,N;do Q=Q?Q[Kt]=new Array(8):N._root=new Array(8),(Nt=O>=(ft=(Z+lt)/2))?Z=ft:lt=ft,(bt=k>=(ht=(tt+At)/2))?tt=ht:At=ht,(Lt=U>=(mt=($+rt)/2))?$=mt:rt=mt;while((Kt=Lt<<2|bt<<1|Nt)===($t=(xt>=mt)<<2|(Tt>=ht)<<1|yt>=ft));return Q[$t]=_,Q[Kt]=P,N}function D(N){Array.isArray(N)||(N=Array.from(N));const O=N.length,k=new Float64Array(O),U=new Float64Array(O),L=new Float64Array(O);let Q=1/0,_=1/0,P=1/0,Z=-1/0,tt=-1/0,$=-1/0;for(let lt=0,At,rt,ft,ht;lt<O;++lt)isNaN(rt=+this._x.call(null,At=N[lt]))||isNaN(ft=+this._y.call(null,At))||isNaN(ht=+this._z.call(null,At))||(k[lt]=rt,U[lt]=ft,L[lt]=ht,rt<Q&&(Q=rt),rt>Z&&(Z=rt),ft<_&&(_=ft),ft>tt&&(tt=ft),ht<P&&(P=ht),ht>$&&($=ht));if(Q>Z||_>tt||P>$)return this;this.cover(Q,_,P).cover(Z,tt,$);for(let lt=0;lt<O;++lt)z(this,k[lt],U[lt],L[lt],N[lt]);return this}},17646:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(z,D,N){if(isNaN(z=+z)||isNaN(D=+D)||isNaN(N=+N))return this;var O=this._x0,k=this._y0,U=this._z0,L=this._x1,Q=this._y1,_=this._z1;if(isNaN(O))L=(O=Math.floor(z))+1,Q=(k=Math.floor(D))+1,_=(U=Math.floor(N))+1;else{for(var P=L-O||1,Z=this._root,tt,$;O>z||z>=L||k>D||D>=Q||U>N||N>=_;)switch($=(N<U)<<2|(D<k)<<1|z<O,tt=new Array(8),tt[$]=Z,Z=tt,P*=2,$){case 0:L=O+P,Q=k+P,_=U+P;break;case 1:O=L-P,Q=k+P,_=U+P;break;case 2:L=O+P,k=Q-P,_=U+P;break;case 3:O=L-P,k=Q-P,_=U+P;break;case 4:L=O+P,Q=k+P,U=_-P;break;case 5:O=L-P,Q=k+P,U=_-P;break;case 6:L=O+P,k=Q-P,U=_-P;break;case 7:O=L-P,k=Q-P,U=_-P;break}this._root&&this._root.length&&(this._root=Z)}return this._x0=O,this._y0=k,this._z0=U,this._x1=L,this._y1=Q,this._z1=_,this}},39894:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(){var z=[];return this.visit(function(D){if(!D.length)do z.push(D.data);while(D=D.next)}),z}},56033:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(z){return arguments.length?this.cover(+z[0][0],+z[0][1],+z[0][2]).cover(+z[1][0],+z[1][1],+z[1][2]):isNaN(this._x0)?void 0:[[this._x0,this._y0,this._z0],[this._x1,this._y1,this._z1]]}},77480:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return z}});var F=M(26805);function z(D,N,O,k){var U,L=this._x0,Q=this._y0,_=this._z0,P,Z,tt,$,lt,At,rt=this._x1,ft=this._y1,ht=this._z1,mt=[],yt=this._root,Tt,xt;for(yt&&mt.push(new F.Z(yt,L,Q,_,rt,ft,ht)),k==null?k=1/0:(L=D-k,Q=N-k,_=O-k,rt=D+k,ft=N+k,ht=O+k,k*=k);Tt=mt.pop();)if(!(!(yt=Tt.node)||(P=Tt.x0)>rt||(Z=Tt.y0)>ft||(tt=Tt.z0)>ht||($=Tt.x1)<L||(lt=Tt.y1)<Q||(At=Tt.z1)<_))if(yt.length){var Nt=(P+$)/2,bt=(Z+lt)/2,Lt=(tt+At)/2;mt.push(new F.Z(yt[7],Nt,bt,Lt,$,lt,At),new F.Z(yt[6],P,bt,Lt,Nt,lt,At),new F.Z(yt[5],Nt,Z,Lt,$,bt,At),new F.Z(yt[4],P,Z,Lt,Nt,bt,At),new F.Z(yt[3],Nt,bt,tt,$,lt,Lt),new F.Z(yt[2],P,bt,tt,Nt,lt,Lt),new F.Z(yt[1],Nt,Z,tt,$,bt,Lt),new F.Z(yt[0],P,Z,tt,Nt,bt,Lt)),(xt=(O>=Lt)<<2|(N>=bt)<<1|D>=Nt)&&(Tt=mt[mt.length-1],mt[mt.length-1]=mt[mt.length-1-xt],mt[mt.length-1-xt]=Tt)}else{var Kt=D-+this._x.call(null,yt.data),$t=N-+this._y.call(null,yt.data),oe=O-+this._z.call(null,yt.data),fe=Kt*Kt+$t*$t+oe*oe;if(fe<k){var He=Math.sqrt(k=fe);L=D-He,Q=N-He,_=O-He,rt=D+He,ft=N+He,ht=O+He,U=yt.data}}return U}},72096:function(X,nt,M){"use strict";M.d(nt,{r:function(){return z}});const F=(D,N,O,k,U,L)=>Math.sqrt(NA(D-k,2)+NA(N-U,2)+NA(O-L,2));function z(D,N,O,k){const U=[],L=D-k,Q=N-k,_=O-k,P=D+k,Z=N+k,tt=O+k;return this.visit(($,lt,At,rt,ft,ht,mt)=>{if(!$.length)do{const yt=$.data;F(D,N,O,this._x(yt),this._y(yt),this._z(yt))<=k&&U.push(yt)}while($=$.next);return lt>P||At>Z||rt>tt||ft<L||ht<Q||mt<_}),U}},26805:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(z,D,N,O,k,U,L){this.node=z,this.x0=D,this.y0=N,this.z0=O,this.x1=k,this.y1=U,this.z1=L}},7695:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return lt}});var F=M(12713),z=M(17646),D=M(39894),N=M(56033),O=M(77480),k=M(72096),U=M(36989),L=M(10325),Q=M(15902),_=M(12027),P=M(66612),Z=M(14763),tt=M(94009),$=M(68889);function lt(ht,mt,yt,Tt){var xt=new At(mt==null?Z.P:mt,yt==null?tt.q:yt,Tt==null?$.i:Tt,NaN,NaN,NaN,NaN,NaN,NaN);return ht==null?xt:xt.addAll(ht)}function At(ht,mt,yt,Tt,xt,Nt,bt,Lt,Kt){this._x=ht,this._y=mt,this._z=yt,this._x0=Tt,this._y0=xt,this._z0=Nt,this._x1=bt,this._y1=Lt,this._z1=Kt,this._root=void 0}function rt(ht){for(var mt={data:ht.data},yt=mt;ht=ht.next;)yt=yt.next={data:ht.data};return mt}var ft=lt.prototype=At.prototype;ft.copy=function(){var ht=new At(this._x,this._y,this._z,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1),mt=this._root,yt,Tt;if(!mt)return ht;if(!mt.length)return ht._root=rt(mt),ht;for(yt=[{source:mt,target:ht._root=new Array(8)}];mt=yt.pop();)for(var xt=0;xt<8;++xt)(Tt=mt.source[xt])&&(Tt.length?yt.push({source:Tt,target:mt.target[xt]=new Array(8)}):mt.target[xt]=rt(Tt));return ht},ft.add=F.Z,ft.addAll=F.H,ft.cover=z.Z,ft.data=D.Z,ft.extent=N.Z,ft.find=O.Z,ft.findAllWithinRadius=k.r,ft.remove=U.Z,ft.removeAll=U.x,ft.root=L.Z,ft.size=Q.Z,ft.visit=_.Z,ft.visitAfter=P.Z,ft.x=Z.Z,ft.y=tt.Z,ft.z=$.Z},36989:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F},x:function(){return z}});function F(D){if(isNaN(lt=+this._x.call(null,D))||isNaN(At=+this._y.call(null,D))||isNaN(rt=+this._z.call(null,D)))return this;var N,O=this._root,k,U,L,Q=this._x0,_=this._y0,P=this._z0,Z=this._x1,tt=this._y1,$=this._z1,lt,At,rt,ft,ht,mt,yt,Tt,xt,Nt,bt;if(!O)return this;if(O.length)for(;;){if((yt=lt>=(ft=(Q+Z)/2))?Q=ft:Z=ft,(Tt=At>=(ht=(_+tt)/2))?_=ht:tt=ht,(xt=rt>=(mt=(P+$)/2))?P=mt:$=mt,N=O,!(O=O[Nt=xt<<2|Tt<<1|yt]))return this;if(!O.length)break;(N[Nt+1&7]||N[Nt+2&7]||N[Nt+3&7]||N[Nt+4&7]||N[Nt+5&7]||N[Nt+6&7]||N[Nt+7&7])&&(k=N,bt=Nt)}for(;O.data!==D;)if(U=O,!(O=O.next))return this;return(L=O.next)&&delete O.next,U?(L?U.next=L:delete U.next,this):N?(L?N[Nt]=L:delete N[Nt],(O=N[0]||N[1]||N[2]||N[3]||N[4]||N[5]||N[6]||N[7])&&O===(N[7]||N[6]||N[5]||N[4]||N[3]||N[2]||N[1]||N[0])&&!O.length&&(k?k[bt]=O:this._root=O),this):(this._root=L,this)}function z(D){for(var N=0,O=D.length;N<O;++N)this.remove(D[N]);return this}},10325:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(){return this._root}},15902:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(){var z=0;return this.visit(function(D){if(!D.length)do++z;while(D=D.next)}),z}},12027:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return z}});var F=M(26805);function z(D){var N=[],O,k=this._root,U,L,Q,_,P,Z,tt;for(k&&N.push(new F.Z(k,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));O=N.pop();)if(!D(k=O.node,L=O.x0,Q=O.y0,_=O.z0,P=O.x1,Z=O.y1,tt=O.z1)&&k.length){var $=(L+P)/2,lt=(Q+Z)/2,At=(_+tt)/2;(U=k[7])&&N.push(new F.Z(U,$,lt,At,P,Z,tt)),(U=k[6])&&N.push(new F.Z(U,L,lt,At,$,Z,tt)),(U=k[5])&&N.push(new F.Z(U,$,Q,At,P,lt,tt)),(U=k[4])&&N.push(new F.Z(U,L,Q,At,$,lt,tt)),(U=k[3])&&N.push(new F.Z(U,$,lt,_,P,Z,At)),(U=k[2])&&N.push(new F.Z(U,L,lt,_,$,Z,At)),(U=k[1])&&N.push(new F.Z(U,$,Q,_,P,lt,At)),(U=k[0])&&N.push(new F.Z(U,L,Q,_,$,lt,At))}return this}},66612:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return z}});var F=M(26805);function z(D){var N=[],O=[],k;for(this._root&&N.push(new F.Z(this._root,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));k=N.pop();){var U=k.node;if(U.length){var L,Q=k.x0,_=k.y0,P=k.z0,Z=k.x1,tt=k.y1,$=k.z1,lt=(Q+Z)/2,At=(_+tt)/2,rt=(P+$)/2;(L=U[0])&&N.push(new F.Z(L,Q,_,P,lt,At,rt)),(L=U[1])&&N.push(new F.Z(L,lt,_,P,Z,At,rt)),(L=U[2])&&N.push(new F.Z(L,Q,At,P,lt,tt,rt)),(L=U[3])&&N.push(new F.Z(L,lt,At,P,Z,tt,rt)),(L=U[4])&&N.push(new F.Z(L,Q,_,rt,lt,At,$)),(L=U[5])&&N.push(new F.Z(L,lt,_,rt,Z,At,$)),(L=U[6])&&N.push(new F.Z(L,Q,At,rt,lt,tt,$)),(L=U[7])&&N.push(new F.Z(L,lt,At,rt,Z,tt,$))}O.push(k)}for(;k=O.pop();)D(k.node,k.x0,k.y0,k.z0,k.x1,k.y1,k.z1);return this}},14763:function(X,nt,M){"use strict";M.d(nt,{P:function(){return F},Z:function(){return z}});function F(D){return D[0]}function z(D){return arguments.length?(this._x=D,this):this._x}},94009:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return z},q:function(){return F}});function F(D){return D[1]}function z(D){return arguments.length?(this._y=D,this):this._y}},68889:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return z},i:function(){return F}});function F(D){return D[2]}function z(D){return arguments.length?(this._z=D,this):this._z}},17916:function(X,nt,M){"use strict";M.d(nt,{H:function(){return D},Z:function(){return F}});function F(N){const O=+this._x.call(null,N),k=+this._y.call(null,N);return z(this.cover(O,k),O,k,N)}function z(N,O,k,U){if(isNaN(O)||isNaN(k))return N;var L,Q=N._root,_={data:U},P=N._x0,Z=N._y0,tt=N._x1,$=N._y1,lt,At,rt,ft,ht,mt,yt,Tt;if(!Q)return N._root=_,N;for(;Q.length;)if((ht=O>=(lt=(P+tt)/2))?P=lt:tt=lt,(mt=k>=(At=(Z+$)/2))?Z=At:$=At,L=Q,!(Q=Q[yt=mt<<1|ht]))return L[yt]=_,N;if(rt=+N._x.call(null,Q.data),ft=+N._y.call(null,Q.data),O===rt&&k===ft)return _.next=Q,L?L[yt]=_:N._root=_,N;do L=L?L[yt]=new Array(4):N._root=new Array(4),(ht=O>=(lt=(P+tt)/2))?P=lt:tt=lt,(mt=k>=(At=(Z+$)/2))?Z=At:$=At;while((yt=mt<<1|ht)===(Tt=(ft>=At)<<1|rt>=lt));return L[Tt]=Q,L[yt]=_,N}function D(N){var O,k,U=N.length,L,Q,_=new Array(U),P=new Array(U),Z=1/0,tt=1/0,$=-1/0,lt=-1/0;for(k=0;k<U;++k)isNaN(L=+this._x.call(null,O=N[k]))||isNaN(Q=+this._y.call(null,O))||(_[k]=L,P[k]=Q,L<Z&&(Z=L),L>$&&($=L),Q<tt&&(tt=Q),Q>lt&&(lt=Q));if(Z>$||tt>lt)return this;for(this.cover(Z,tt).cover($,lt),k=0;k<U;++k)z(this,_[k],P[k],N[k]);return this}},51097:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(z,D){if(isNaN(z=+z)||isNaN(D=+D))return this;var N=this._x0,O=this._y0,k=this._x1,U=this._y1;if(isNaN(N))k=(N=Math.floor(z))+1,U=(O=Math.floor(D))+1;else{for(var L=k-N||1,Q=this._root,_,P;N>z||z>=k||O>D||D>=U;)switch(P=(D<O)<<1|z<N,_=new Array(4),_[P]=Q,Q=_,L*=2,P){case 0:k=N+L,U=O+L;break;case 1:N=k-L,U=O+L;break;case 2:k=N+L,O=U-L;break;case 3:N=k-L,O=U-L;break}this._root&&this._root.length&&(this._root=Q)}return this._x0=N,this._y0=O,this._x1=k,this._y1=U,this}},58007:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(){var z=[];return this.visit(function(D){if(!D.length)do z.push(D.data);while(D=D.next)}),z}},12070:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(z){return arguments.length?this.cover(+z[0][0],+z[0][1]).cover(+z[1][0],+z[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}},47064:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return z}});var F=M(44213);function z(D,N,O){var k,U=this._x0,L=this._y0,Q,_,P,Z,tt=this._x1,$=this._y1,lt=[],At=this._root,rt,ft;for(At&<.push(new F.Z(At,U,L,tt,$)),O==null?O=1/0:(U=D-O,L=N-O,tt=D+O,$=N+O,O*=O);rt=lt.pop();)if(!(!(At=rt.node)||(Q=rt.x0)>tt||(_=rt.y0)>$||(P=rt.x1)<U||(Z=rt.y1)<L))if(At.length){var ht=(Q+P)/2,mt=(_+Z)/2;lt.push(new F.Z(At[3],ht,mt,P,Z),new F.Z(At[2],Q,mt,ht,Z),new F.Z(At[1],ht,_,P,mt),new F.Z(At[0],Q,_,ht,mt)),(ft=(N>=mt)<<1|D>=ht)&&(rt=lt[lt.length-1],lt[lt.length-1]=lt[lt.length-1-ft],lt[lt.length-1-ft]=rt)}else{var yt=D-+this._x.call(null,At.data),Tt=N-+this._y.call(null,At.data),xt=yt*yt+Tt*Tt;if(xt<O){var Nt=Math.sqrt(O=xt);U=D-Nt,L=N-Nt,tt=D+Nt,$=N+Nt,k=At.data}}return k}},44213:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(z,D,N,O,k){this.node=z,this.x0=D,this.y0=N,this.x1=O,this.y1=k}},14301:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return tt}});var F=M(17916),z=M(51097),D=M(58007),N=M(12070),O=M(47064),k=M(88866),U=M(10864),L=M(68984),Q=M(3715),_=M(73607),P=M(56570),Z=M(30992);function tt(rt,ft,ht){var mt=new $(ft==null?P.P:ft,ht==null?Z.q:ht,NaN,NaN,NaN,NaN);return rt==null?mt:mt.addAll(rt)}function $(rt,ft,ht,mt,yt,Tt){this._x=rt,this._y=ft,this._x0=ht,this._y0=mt,this._x1=yt,this._y1=Tt,this._root=void 0}function lt(rt){for(var ft={data:rt.data},ht=ft;rt=rt.next;)ht=ht.next={data:rt.data};return ft}var At=tt.prototype=$.prototype;At.copy=function(){var rt=new $(this._x,this._y,this._x0,this._y0,this._x1,this._y1),ft=this._root,ht,mt;if(!ft)return rt;if(!ft.length)return rt._root=lt(ft),rt;for(ht=[{source:ft,target:rt._root=new Array(4)}];ft=ht.pop();)for(var yt=0;yt<4;++yt)(mt=ft.source[yt])&&(mt.length?ht.push({source:mt,target:ft.target[yt]=new Array(4)}):ft.target[yt]=lt(mt));return rt},At.add=F.Z,At.addAll=F.H,At.cover=z.Z,At.data=D.Z,At.extent=N.Z,At.find=O.Z,At.remove=k.Z,At.removeAll=k.x,At.root=U.Z,At.size=L.Z,At.visit=Q.Z,At.visitAfter=_.Z,At.x=P.Z,At.y=Z.Z},88866:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F},x:function(){return z}});function F(D){if(isNaN(tt=+this._x.call(null,D))||isNaN($=+this._y.call(null,D)))return this;var N,O=this._root,k,U,L,Q=this._x0,_=this._y0,P=this._x1,Z=this._y1,tt,$,lt,At,rt,ft,ht,mt;if(!O)return this;if(O.length)for(;;){if((rt=tt>=(lt=(Q+P)/2))?Q=lt:P=lt,(ft=$>=(At=(_+Z)/2))?_=At:Z=At,N=O,!(O=O[ht=ft<<1|rt]))return this;if(!O.length)break;(N[ht+1&3]||N[ht+2&3]||N[ht+3&3])&&(k=N,mt=ht)}for(;O.data!==D;)if(U=O,!(O=O.next))return this;return(L=O.next)&&delete O.next,U?(L?U.next=L:delete U.next,this):N?(L?N[ht]=L:delete N[ht],(O=N[0]||N[1]||N[2]||N[3])&&O===(N[3]||N[2]||N[1]||N[0])&&!O.length&&(k?k[mt]=O:this._root=O),this):(this._root=L,this)}function z(D){for(var N=0,O=D.length;N<O;++N)this.remove(D[N]);return this}},10864:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(){return this._root}},68984:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return F}});function F(){var z=0;return this.visit(function(D){if(!D.length)do++z;while(D=D.next)}),z}},3715:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return z}});var F=M(44213);function z(D){var N=[],O,k=this._root,U,L,Q,_,P;for(k&&N.push(new F.Z(k,this._x0,this._y0,this._x1,this._y1));O=N.pop();)if(!D(k=O.node,L=O.x0,Q=O.y0,_=O.x1,P=O.y1)&&k.length){var Z=(L+_)/2,tt=(Q+P)/2;(U=k[3])&&N.push(new F.Z(U,Z,tt,_,P)),(U=k[2])&&N.push(new F.Z(U,L,tt,Z,P)),(U=k[1])&&N.push(new F.Z(U,Z,Q,_,tt)),(U=k[0])&&N.push(new F.Z(U,L,Q,Z,tt))}return this}},73607:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return z}});var F=M(44213);function z(D){var N=[],O=[],k;for(this._root&&N.push(new F.Z(this._root,this._x0,this._y0,this._x1,this._y1));k=N.pop();){var U=k.node;if(U.length){var L,Q=k.x0,_=k.y0,P=k.x1,Z=k.y1,tt=(Q+P)/2,$=(_+Z)/2;(L=U[0])&&N.push(new F.Z(L,Q,_,tt,$)),(L=U[1])&&N.push(new F.Z(L,tt,_,P,$)),(L=U[2])&&N.push(new F.Z(L,Q,$,tt,Z)),(L=U[3])&&N.push(new F.Z(L,tt,$,P,Z))}O.push(k)}for(;k=O.pop();)D(k.node,k.x0,k.y0,k.x1,k.y1);return this}},56570:function(X,nt,M){"use strict";M.d(nt,{P:function(){return F},Z:function(){return z}});function F(D){return D[0]}function z(D){return arguments.length?(this._x=D,this):this._x}},30992:function(X,nt,M){"use strict";M.d(nt,{Z:function(){return z},q:function(){return F}});function F(D){return D[1]}function z(D){return arguments.length?(this._y=D,this):this._y}},83833:function(X,nt,M){"use strict";M.d(nt,{HT:function(){return lt}});var F=0,z=0,D=0,N=1e3,O,k,U=0,L=0,Q=0,_=typeof performance=="object"&&performance.now?performance:Date,P=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(yt){setTimeout(yt,17)};function Z(){return L||(P(tt),L=_.now()+Q)}function tt(){L=0}function $(){this._call=this._time=this._next=null}$.prototype=lt.prototype={constructor:$,restart:function(yt,Tt,xt){if(typeof yt!="function")throw new TypeError("callback is not a function");xt=(xt==null?Z():+xt)+(Tt==null?0:+Tt),!this._next&&k!==this&&(k?k._next=this:O=this,k=this),this._call=yt,this._time=xt,mt()},stop:function(){this._call&&(this._call=null,this._time=1/0,mt())}};function lt(yt,Tt,xt){var Nt=new $;return Nt.restart(yt,Tt,xt),Nt}function At(){Z(),++F;for(var yt=O,Tt;yt;)(Tt=L-yt._time)>=0&&yt._call.call(void 0,Tt),yt=yt._next;--F}function rt(){L=(U=_.now())+Q,F=z=0;try{At()}finally{F=0,ht(),L=0}}function ft(){var yt=_.now(),Tt=yt-U;Tt>N&&(Q-=Tt,U=yt)}function ht(){for(var yt,Tt=O,xt,Nt=1/0;Tt;)Tt._call?(Nt>Tt._time&&(Nt=Tt._time),yt=Tt,Tt=Tt._next):(xt=Tt._next,Tt._next=null,Tt=yt?yt._next=xt:O=xt);k=yt,mt(Nt)}function mt(yt){if(!F){z&&(z=clearTimeout(z));var Tt=yt-L;Tt>24?(yt<1/0&&(z=setTimeout(rt,yt-_.now()-Q)),D&&(D=clearInterval(D))):(D||(U=_.now(),D=setInterval(ft,N)),F=1,P(rt))}}},80813:function(X,nt,M){"use strict";M.d(nt,{CR:function(){return rt},Jh:function(){return tt},Q_:function(){return fe},XA:function(){return At},ZT:function(){return z},_T:function(){return N},ev:function(){return mt},mG:function(){return Z},pi:function(){return D},pr:function(){return ht}});var F=function(zt,Wt){return F=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(Yt,Et){Yt.__proto__=Et}||function(Yt,Et){for(var kt in Et)Object.prototype.hasOwnProperty.call(Et,kt)&&(Yt[kt]=Et[kt])},F(zt,Wt)};function z(zt,Wt){if(typeof Wt!="function"&&Wt!==null)throw new TypeError("Class extends value "+String(Wt)+" is not a constructor or null");F(zt,Wt);function Yt(){this.constructor=zt}zt.prototype=Wt===null?Object.create(Wt):(Yt.prototype=Wt.prototype,new Yt)}var D=function(){return D=Object.assign||function(Wt){for(var Yt,Et=1,kt=arguments.length;Et<kt;Et++){Yt=arguments[Et];for(var Dt in Yt)Object.prototype.hasOwnProperty.call(Yt,Dt)&&(Wt[Dt]=Yt[Dt])}return Wt},D.apply(this,arguments)};function N(zt,Wt){var Yt={};for(var Et in zt)Object.prototype.hasOwnProperty.call(zt,Et)&&Wt.indexOf(Et)<0&&(Yt[Et]=zt[Et]);if(zt!=null&&typeof Object.getOwnPropertySymbols=="function")for(var kt=0,Et=Object.getOwnPropertySymbols(zt);kt<Et.length;kt++)Wt.indexOf(Et[kt])<0&&Object.prototype.propertyIsEnumerable.call(zt,Et[kt])&&(Yt[Et[kt]]=zt[Et[kt]]);return Yt}function O(zt,Wt,Yt,Et){var kt=arguments.length,Dt=kt<3?Wt:Et===null?Et=Object.getOwnPropertyDescriptor(Wt,Yt):Et,ie;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")Dt=Reflect.decorate(zt,Wt,Yt,Et);else for(var xe=zt.length-1;xe>=0;xe--)(ie=zt[xe])&&(Dt=(kt<3?ie(Dt):kt>3?ie(Wt,Yt,Dt):ie(Wt,Yt))||Dt);return kt>3&&Dt&&Object.defineProperty(Wt,Yt,Dt),Dt}function k(zt,Wt){return function(Yt,Et){Wt(Yt,Et,zt)}}function U(zt,Wt,Yt,Et,kt,Dt){function ie(Kr){if(Kr!==void 0&&typeof Kr!="function")throw new TypeError("Function expected");return Kr}for(var xe=Et.kind,_e=xe==="getter"?"get":xe==="setter"?"set":"value",Te=!Wt&&zt?Et.static?zt:zt.prototype:null,an=Wt||(Te?Object.getOwnPropertyDescriptor(Te,Et.name):{}),rr,sr=!1,Ke=Yt.length-1;Ke>=0;Ke--){var ze={};for(var ye in Et)ze[ye]=ye==="access"?{}:Et[ye];for(var ye in Et.access)ze.access[ye]=Et.access[ye];ze.addInitializer=function(Kr){if(sr)throw new TypeError("Cannot add initializers after decoration has completed");Dt.push(ie(Kr||null))};var We=(0,Yt[Ke])(xe==="accessor"?{get:an.get,set:an.set}:an[_e],ze);if(xe==="accessor"){if(We===void 0)continue;if(We===null||typeof We!="object")throw new TypeError("Object expected");(rr=ie(We.get))&&(an.get=rr),(rr=ie(We.set))&&(an.set=rr),(rr=ie(We.init))&&kt.unshift(rr)}else(rr=ie(We))&&(xe==="field"?kt.unshift(rr):an[_e]=rr)}Te&&Object.defineProperty(Te,Et.name,an),sr=!0}function L(zt,Wt,Yt){for(var Et=arguments.length>2,kt=0;kt<Wt.length;kt++)Yt=Et?Wt[kt].call(zt,Yt):Wt[kt].call(zt);return Et?Yt:void 0}function Q(zt){return typeof zt=="symbol"?zt:"".concat(zt)}function _(zt,Wt,Yt){return typeof Wt=="symbol"&&(Wt=Wt.description?"[".concat(Wt.description,"]"):""),Object.defineProperty(zt,"name",{configurable:!0,value:Yt?"".concat(Yt," ",Wt):Wt})}function P(zt,Wt){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(zt,Wt)}function Z(zt,Wt,Yt,Et){function kt(Dt){return Dt instanceof Yt?Dt:new Yt(function(ie){ie(Dt)})}return new(Yt||(Yt=Promise))(function(Dt,ie){function xe(an){try{Te(Et.next(an))}catch(rr){ie(rr)}}function _e(an){try{Te(Et.throw(an))}catch(rr){ie(rr)}}function Te(an){an.done?Dt(an.value):kt(an.value).then(xe,_e)}Te((Et=Et.apply(zt,Wt||[])).next())})}function tt(zt,Wt){var Yt={label:0,sent:function(){if(Dt[0]&1)throw Dt[1];return Dt[1]},trys:[],ops:[]},Et,kt,Dt,ie=Object.create((typeof Iterator=="function"?Iterator:Object).prototype);return ie.next=xe(0),ie.throw=xe(1),ie.return=xe(2),typeof Symbol=="function"&&(ie[Symbol.iterator]=function(){return this}),ie;function xe(Te){return function(an){return _e([Te,an])}}function _e(Te){if(Et)throw new TypeError("Generator is already executing.");for(;ie&&(ie=0,Te[0]&&(Yt=0)),Yt;)try{if(Et=1,kt&&(Dt=Te[0]&2?kt.return:Te[0]?kt.throw||((Dt=kt.return)&&Dt.call(kt),0):kt.next)&&!(Dt=Dt.call(kt,Te[1])).done)return Dt;switch(kt=0,Dt&&(Te=[Te[0]&2,Dt.value]),Te[0]){case 0:case 1:Dt=Te;break;case 4:return Yt.label++,{value:Te[1],done:!1};case 5:Yt.label++,kt=Te[1],Te=[0];continue;case 7:Te=Yt.ops.pop(),Yt.trys.pop();continue;default:if(Dt=Yt.trys,!(Dt=Dt.length>0&&Dt[Dt.length-1])&&(Te[0]===6||Te[0]===2)){Yt=0;continue}if(Te[0]===3&&(!Dt||Te[1]>Dt[0]&&Te[1]<Dt[3])){Yt.label=Te[1];break}if(Te[0]===6&&Yt.label<Dt[1]){Yt.label=Dt[1],Dt=Te;break}if(Dt&&Yt.label<Dt[2]){Yt.label=Dt[2],Yt.ops.push(Te);break}Dt[2]&&Yt.ops.pop(),Yt.trys.pop();continue}Te=Wt.call(zt,Yt)}catch(an){Te=[6,an],kt=0}finally{Et=Dt=0}if(Te[0]&5)throw Te[1];return{value:Te[0]?Te[1]:void 0,done:!0}}}var $=Object.create?function(zt,Wt,Yt,Et){Et===void 0&&(Et=Yt);var kt=Object.getOwnPropertyDescriptor(Wt,Yt);(!kt||("get"in kt?!Wt.__esModule:kt.writable||kt.configurable))&&(kt={enumerable:!0,get:function(){return Wt[Yt]}}),Object.defineProperty(zt,Et,kt)}:function(zt,Wt,Yt,Et){Et===void 0&&(Et=Yt),zt[Et]=Wt[Yt]};function lt(zt,Wt){for(var Yt in zt)Yt!=="default"&&!Object.prototype.hasOwnProperty.call(Wt,Yt)&&$(Wt,zt,Yt)}function At(zt){var Wt=typeof Symbol=="function"&&Symbol.iterator,Yt=Wt&&zt[Wt],Et=0;if(Yt)return Yt.call(zt);if(zt&&typeof zt.length=="number")return{next:function(){return zt&&Et>=zt.length&&(zt=void 0),{value:zt&&zt[Et++],done:!zt}}};throw new TypeError(Wt?"Object is not iterable.":"Symbol.iterator is not defined.")}function rt(zt,Wt){var Yt=typeof Symbol=="function"&&zt[Symbol.iterator];if(!Yt)return zt;var Et=Yt.call(zt),kt,Dt=[],ie;try{for(;(Wt===void 0||Wt-- >0)&&!(kt=Et.next()).done;)Dt.push(kt.value)}catch(xe){ie={error:xe}}finally{try{kt&&!kt.done&&(Yt=Et.return)&&Yt.call(Et)}finally{if(ie)throw ie.error}}return Dt}function ft(){for(var zt=[],Wt=0;Wt<arguments.length;Wt++)zt=zt.concat(rt(arguments[Wt]));return zt}function ht(){for(var zt=0,Wt=0,Yt=arguments.length;Wt<Yt;Wt++)zt+=arguments[Wt].length;for(var Et=Array(zt),kt=0,Wt=0;Wt<Yt;Wt++)for(var Dt=arguments[Wt],ie=0,xe=Dt.length;ie<xe;ie++,kt++)Et[kt]=Dt[ie];return Et}function mt(zt,Wt,Yt){if(Yt||arguments.length===2)for(var Et=0,kt=Wt.length,Dt;Et<kt;Et++)(Dt||!(Et in Wt))&&(Dt||(Dt=Array.prototype.slice.call(Wt,0,Et)),Dt[Et]=Wt[Et]);return zt.concat(Dt||Array.prototype.slice.call(Wt))}function yt(zt){return this instanceof yt?(this.v=zt,this):new yt(zt)}function Tt(zt,Wt,Yt){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var Et=Yt.apply(zt,Wt||[]),kt,Dt=[];return kt=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),xe("next"),xe("throw"),xe("return",ie),kt[Symbol.asyncIterator]=function(){return this},kt;function ie(Ke){return function(ze){return Promise.resolve(ze).then(Ke,rr)}}function xe(Ke,ze){Et[Ke]&&(kt[Ke]=function(ye){return new Promise(function(We,Kr){Dt.push([Ke,ye,We,Kr])>1||_e(Ke,ye)})},ze&&(kt[Ke]=ze(kt[Ke])))}function _e(Ke,ze){try{Te(Et[Ke](ze))}catch(ye){sr(Dt[0][3],ye)}}function Te(Ke){Ke.value instanceof yt?Promise.resolve(Ke.value.v).then(an,rr):sr(Dt[0][2],Ke)}function an(Ke){_e("next",Ke)}function rr(Ke){_e("throw",Ke)}function sr(Ke,ze){Ke(ze),Dt.shift(),Dt.length&&_e(Dt[0][0],Dt[0][1])}}function xt(zt){var Wt,Yt;return Wt={},Et("next"),Et("throw",function(kt){throw kt}),Et("return"),Wt[Symbol.iterator]=function(){return this},Wt;function Et(kt,Dt){Wt[kt]=zt[kt]?function(ie){return(Yt=!Yt)?{value:yt(zt[kt](ie)),done:!1}:Dt?Dt(ie):ie}:Dt}}function Nt(zt){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var Wt=zt[Symbol.asyncIterator],Yt;return Wt?Wt.call(zt):(zt=typeof At=="function"?At(zt):zt[Symbol.iterator](),Yt={},Et("next"),Et("throw"),Et("return"),Yt[Symbol.asyncIterator]=function(){return this},Yt);function Et(Dt){Yt[Dt]=zt[Dt]&&function(ie){return new Promise(function(xe,_e){ie=zt[Dt](ie),kt(xe,_e,ie.done,ie.value)})}}function kt(Dt,ie,xe,_e){Promise.resolve(_e).then(function(Te){Dt({value:Te,done:xe})},ie)}}function bt(zt,Wt){return Object.defineProperty?Object.defineProperty(zt,"raw",{value:Wt}):zt.raw=Wt,zt}var Lt=Object.create?function(zt,Wt){Object.defineProperty(zt,"default",{enumerable:!0,value:Wt})}:function(zt,Wt){zt.default=Wt},Kt=function(zt){return Kt=Object.getOwnPropertyNames||function(Wt){var Yt=[];for(var Et in Wt)Object.prototype.hasOwnProperty.call(Wt,Et)&&(Yt[Yt.length]=Et);return Yt},Kt(zt)};function $t(zt){if(zt&&zt.__esModule)return zt;var Wt={};if(zt!=null)for(var Yt=Kt(zt),Et=0;Et<Yt.length;Et++)Yt[Et]!=="default"&&$(Wt,zt,Yt[Et]);return Lt(Wt,zt),Wt}function oe(zt){return zt&&zt.__esModule?zt:{default:zt}}function fe(zt,Wt,Yt,Et){if(Yt==="a"&&!Et)throw new TypeError("Private accessor was defined without a getter");if(typeof Wt=="function"?zt!==Wt||!Et:!Wt.has(zt))throw new TypeError("Cannot read private member from an object whose class did not declare it");return Yt==="m"?Et:Yt==="a"?Et.call(zt):Et?Et.value:Wt.get(zt)}function He(zt,Wt,Yt,Et,kt){if(Et==="m")throw new TypeError("Private method is not writable");if(Et==="a"&&!kt)throw new TypeError("Private accessor was defined without a setter");if(typeof Wt=="function"?zt!==Wt||!kt:!Wt.has(zt))throw new TypeError("Cannot write private member to an object whose class did not declare it");return Et==="a"?kt.call(zt,Yt):kt?kt.value=Yt:Wt.set(zt,Yt),Yt}function rn(zt,Wt){if(Wt===null||typeof Wt!="object"&&typeof Wt!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof zt=="function"?Wt===zt:zt.has(Wt)}function Dn(zt,Wt,Yt){if(Wt!=null){if(typeof Wt!="object"&&typeof Wt!="function")throw new TypeError("Object expected.");var Et,kt;if(Yt){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");Et=Wt[Symbol.asyncDispose]}if(Et===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");Et=Wt[Symbol.dispose],Yt&&(kt=Et)}if(typeof Et!="function")throw new TypeError("Object not disposable.");kt&&(Et=function(){try{kt.call(this)}catch(Dt){return Promise.reject(Dt)}}),zt.stack.push({value:Wt,dispose:Et,async:Yt})}else Yt&&zt.stack.push({async:!0});return Wt}var Mr=typeof SuppressedError=="function"?SuppressedError:function(zt,Wt,Yt){var Et=new Error(Yt);return Et.name="SuppressedError",Et.error=zt,Et.suppressed=Wt,Et};function Vi(zt){function Wt(Dt){zt.error=zt.hasError?new Mr(Dt,zt.error,"An error was suppressed during disposal."):Dt,zt.hasError=!0}var Yt,Et=0;function kt(){for(;Yt=zt.stack.pop();)try{if(!Yt.async&&Et===1)return Et=0,zt.stack.push(Yt),Promise.resolve().then(kt);if(Yt.dispose){var Dt=Yt.dispose.call(Yt.value);if(Yt.async)return Et|=2,Promise.resolve(Dt).then(kt,function(ie){return Wt(ie),kt()})}else Et|=1}catch(ie){Wt(ie)}if(Et===1)return zt.hasError?Promise.reject(zt.error):Promise.resolve();if(zt.hasError)throw zt.error}return kt()}function is(zt,Wt){return typeof zt=="string"&&/^\.\.?\//.test(zt)?zt.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(Yt,Et,kt,Dt,ie){return Et?Wt?".jsx":".js":kt&&(!Dt||!ie)?Yt:kt+Dt+"."+ie.toLowerCase()+"js"}):zt}var Ao={__extends:z,__assign:D,__rest:N,__decorate:O,__param:k,__esDecorate:U,__runInitializers:L,__propKey:Q,__setFunctionName:_,__metadata:P,__awaiter:Z,__generator:tt,__createBinding:$,__exportStar:lt,__values:At,__read:rt,__spread:ft,__spreadArrays:ht,__spreadArray:mt,__await:yt,__asyncGenerator:Tt,__asyncDelegator:xt,__asyncValues:Nt,__makeTemplateObject:bt,__importStar:$t,__importDefault:oe,__classPrivateFieldGet:fe,__classPrivateFieldSet:He,__classPrivateFieldIn:rn,__addDisposableResource:Dn,__disposeResources:Vi,__rewriteRelativeImportExtension:is}}}]);
|
|
|
}()); |