vscode-behavior3 2.1.3 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,151 @@
1
+ import{a as e,n as t,r as n,t as r}from"./rolldown-runtime-BYbx6iT9.js";function i(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function a(e){if(Array.isArray(e))return i(e)}function o(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function s(e,t){if(e){if(typeof e==`string`)return i(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?i(e,t):void 0}}function c(){throw TypeError(`Invalid attempt to spread non-iterable instance.
2
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function l(e){return a(e)||o(e)||s(e)||c()}function u(e){"@babel/helpers - typeof";return u=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},u(e)}function d(e){if(Array.isArray(e))return e}function f(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function p(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
3
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function m(e,t){return d(e)||f(e,t)||s(e,t)||p()}function h(e,t){if(u(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(u(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function g(e){var t=h(e,`string`);return u(t)==`symbol`?t:t+``}function _(e,t,n){return(t=g(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function v(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function y(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?v(Object(n),!0).forEach(function(t){_(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):v(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function b(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function x(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,g(r.key),r)}}function S(e,t,n){return t&&x(e.prototype,t),n&&x(e,n),Object.defineProperty(e,`prototype`,{writable:!1}),e}function C(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}function w(e,t){return w=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},w(e,t)}function T(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,`prototype`,{writable:!1}),t&&w(e,t)}function E(e){return E=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},E(e)}function D(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(D=function(){return!!e})()}function O(e,t){if(t&&(u(t)==`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return C(e)}function k(e,t,n){return t=E(t),O(e,D()?Reflect.construct(t,n||[],E(e).constructor):t.apply(e,n))}function A(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function j(e,t){if(e==null)return{};var n,r,i=A(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}function ee(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(!n){if(Array.isArray(e)||(n=s(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
4
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a,o=!0,c=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){c=!0,a=e},f:function(){try{o||n.return==null||n.return()}finally{if(c)throw a}}}}var te=e(r(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1).default,M=typeof Float32Array<`u`?Float32Array:Array;Math.PI/180,180/Math.PI;function ne(){var e=new M(9);return M!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e}function re(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[4],e[4]=t[5],e[5]=t[6],e[6]=t[8],e[7]=t[9],e[8]=t[10],e}function ie(e,t,n,r,i,a,o,s,c){var l=new M(9);return l[0]=e,l[1]=t,l[2]=n,l[3]=r,l[4]=i,l[5]=a,l[6]=o,l[7]=s,l[8]=c,l}var N=n({add:()=>Ke,adjoint:()=>de,clone:()=>ae,copy:()=>F,create:()=>P,decompose:()=>Ae,determinant:()=>fe,equals:()=>Ze,exactEquals:()=>Xe,frob:()=>Ge,fromQuat:()=>Ne,fromQuat2:()=>Ee,fromRotation:()=>xe,fromRotationTranslation:()=>Te,fromRotationTranslationScale:()=>je,fromRotationTranslationScaleOrigin:()=>Me,fromScaling:()=>be,fromTranslation:()=>ye,fromValues:()=>oe,fromXRotation:()=>Se,fromYRotation:()=>Ce,fromZRotation:()=>we,frustum:()=>Pe,getRotation:()=>ke,getScaling:()=>Oe,getTranslation:()=>De,identity:()=>ce,invert:()=>ue,lookAt:()=>He,mul:()=>Qe,multiply:()=>pe,multiplyScalar:()=>Je,multiplyScalarAndAdd:()=>Ye,ortho:()=>Be,orthoNO:()=>ze,orthoZO:()=>Ve,perspective:()=>Ie,perspectiveFromFieldOfView:()=>Re,perspectiveNO:()=>Fe,perspectiveZO:()=>Le,rotate:()=>he,rotateX:()=>ge,rotateY:()=>_e,rotateZ:()=>ve,scale:()=>I,set:()=>se,str:()=>We,sub:()=>$e,subtract:()=>qe,targetTo:()=>Ue,translate:()=>me,transpose:()=>le});function P(){var e=new M(16);return M!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function ae(e){var t=new M(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function F(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function oe(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){var g=new M(16);return g[0]=e,g[1]=t,g[2]=n,g[3]=r,g[4]=i,g[5]=a,g[6]=o,g[7]=s,g[8]=c,g[9]=l,g[10]=u,g[11]=d,g[12]=f,g[13]=p,g[14]=m,g[15]=h,g}function se(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g){return e[0]=t,e[1]=n,e[2]=r,e[3]=i,e[4]=a,e[5]=o,e[6]=s,e[7]=c,e[8]=l,e[9]=u,e[10]=d,e[11]=f,e[12]=p,e[13]=m,e[14]=h,e[15]=g,e}function ce(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function le(e,t){if(e===t){var n=t[1],r=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=n,e[6]=t[9],e[7]=t[13],e[8]=r,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}function ue(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11],m=t[12],h=t[13],g=t[14],_=t[15],v=n*s-r*o,y=n*c-i*o,b=n*l-a*o,x=r*c-i*s,S=r*l-a*s,C=i*l-a*c,w=u*h-d*m,T=u*g-f*m,E=u*_-p*m,D=d*g-f*h,O=d*_-p*h,k=f*_-p*g,A=v*k-y*O+b*D+x*E-S*T+C*w;return A?(A=1/A,e[0]=(s*k-c*O+l*D)*A,e[1]=(i*O-r*k-a*D)*A,e[2]=(h*C-g*S+_*x)*A,e[3]=(f*S-d*C-p*x)*A,e[4]=(c*E-o*k-l*T)*A,e[5]=(n*k-i*E+a*T)*A,e[6]=(g*b-m*C-_*y)*A,e[7]=(u*C-f*b+p*y)*A,e[8]=(o*O-s*E+l*w)*A,e[9]=(r*E-n*O-a*w)*A,e[10]=(m*S-h*b+_*v)*A,e[11]=(d*b-u*S-p*v)*A,e[12]=(s*T-o*D-c*w)*A,e[13]=(n*D-r*T+i*w)*A,e[14]=(h*y-m*x-g*v)*A,e[15]=(u*x-d*y+f*v)*A,e):null}function de(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11],m=t[12],h=t[13],g=t[14],_=t[15],v=n*s-r*o,y=n*c-i*o,b=n*l-a*o,x=r*c-i*s,S=r*l-a*s,C=i*l-a*c,w=u*h-d*m,T=u*g-f*m,E=u*_-p*m,D=d*g-f*h,O=d*_-p*h,k=f*_-p*g;return e[0]=s*k-c*O+l*D,e[1]=i*O-r*k-a*D,e[2]=h*C-g*S+_*x,e[3]=f*S-d*C-p*x,e[4]=c*E-o*k-l*T,e[5]=n*k-i*E+a*T,e[6]=g*b-m*C-_*y,e[7]=u*C-f*b+p*y,e[8]=o*O-s*E+l*w,e[9]=r*E-n*O-a*w,e[10]=m*S-h*b+_*v,e[11]=d*b-u*S-p*v,e[12]=s*T-o*D-c*w,e[13]=n*D-r*T+i*w,e[14]=h*y-m*x-g*v,e[15]=u*x-d*y+f*v,e}function fe(e){var t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=e[9],d=e[10],f=e[11],p=e[12],m=e[13],h=e[14],g=e[15],_=t*o-n*a,v=t*s-r*a,y=n*s-r*o,b=l*m-u*p,x=l*h-d*p,S=u*h-d*m,C=t*S-n*x+r*b,w=a*S-o*x+s*b,T=l*y-u*v+d*_,E=p*y-m*v+h*_;return c*C-i*w+g*T-f*E}function pe(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3],s=t[4],c=t[5],l=t[6],u=t[7],d=t[8],f=t[9],p=t[10],m=t[11],h=t[12],g=t[13],_=t[14],v=t[15],y=n[0],b=n[1],x=n[2],S=n[3];return e[0]=y*r+b*s+x*d+S*h,e[1]=y*i+b*c+x*f+S*g,e[2]=y*a+b*l+x*p+S*_,e[3]=y*o+b*u+x*m+S*v,y=n[4],b=n[5],x=n[6],S=n[7],e[4]=y*r+b*s+x*d+S*h,e[5]=y*i+b*c+x*f+S*g,e[6]=y*a+b*l+x*p+S*_,e[7]=y*o+b*u+x*m+S*v,y=n[8],b=n[9],x=n[10],S=n[11],e[8]=y*r+b*s+x*d+S*h,e[9]=y*i+b*c+x*f+S*g,e[10]=y*a+b*l+x*p+S*_,e[11]=y*o+b*u+x*m+S*v,y=n[12],b=n[13],x=n[14],S=n[15],e[12]=y*r+b*s+x*d+S*h,e[13]=y*i+b*c+x*f+S*g,e[14]=y*a+b*l+x*p+S*_,e[15]=y*o+b*u+x*m+S*v,e}function me(e,t,n){var r=n[0],i=n[1],a=n[2],o,s,c,l,u,d,f,p,m,h,g,_;return t===e?(e[12]=t[0]*r+t[4]*i+t[8]*a+t[12],e[13]=t[1]*r+t[5]*i+t[9]*a+t[13],e[14]=t[2]*r+t[6]*i+t[10]*a+t[14],e[15]=t[3]*r+t[7]*i+t[11]*a+t[15]):(o=t[0],s=t[1],c=t[2],l=t[3],u=t[4],d=t[5],f=t[6],p=t[7],m=t[8],h=t[9],g=t[10],_=t[11],e[0]=o,e[1]=s,e[2]=c,e[3]=l,e[4]=u,e[5]=d,e[6]=f,e[7]=p,e[8]=m,e[9]=h,e[10]=g,e[11]=_,e[12]=o*r+u*i+m*a+t[12],e[13]=s*r+d*i+h*a+t[13],e[14]=c*r+f*i+g*a+t[14],e[15]=l*r+p*i+_*a+t[15]),e}function I(e,t,n){var r=n[0],i=n[1],a=n[2];return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function he(e,t,n,r){var i=r[0],a=r[1],o=r[2],s=Math.sqrt(i*i+a*a+o*o),c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j;return s<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,c=Math.sin(n),l=Math.cos(n),u=1-l,d=t[0],f=t[1],p=t[2],m=t[3],h=t[4],g=t[5],_=t[6],v=t[7],y=t[8],b=t[9],x=t[10],S=t[11],C=i*i*u+l,w=a*i*u+o*c,T=o*i*u-a*c,E=i*a*u-o*c,D=a*a*u+l,O=o*a*u+i*c,k=i*o*u+a*c,A=a*o*u-i*c,j=o*o*u+l,e[0]=d*C+h*w+y*T,e[1]=f*C+g*w+b*T,e[2]=p*C+_*w+x*T,e[3]=m*C+v*w+S*T,e[4]=d*E+h*D+y*O,e[5]=f*E+g*D+b*O,e[6]=p*E+_*D+x*O,e[7]=m*E+v*D+S*O,e[8]=d*k+h*A+y*j,e[9]=f*k+g*A+b*j,e[10]=p*k+_*A+x*j,e[11]=m*k+v*A+S*j,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}function ge(e,t,n){var r=Math.sin(n),i=Math.cos(n),a=t[4],o=t[5],s=t[6],c=t[7],l=t[8],u=t[9],d=t[10],f=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+l*r,e[5]=o*i+u*r,e[6]=s*i+d*r,e[7]=c*i+f*r,e[8]=l*i-a*r,e[9]=u*i-o*r,e[10]=d*i-s*r,e[11]=f*i-c*r,e}function _e(e,t,n){var r=Math.sin(n),i=Math.cos(n),a=t[0],o=t[1],s=t[2],c=t[3],l=t[8],u=t[9],d=t[10],f=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-l*r,e[1]=o*i-u*r,e[2]=s*i-d*r,e[3]=c*i-f*r,e[8]=a*r+l*i,e[9]=o*r+u*i,e[10]=s*r+d*i,e[11]=c*r+f*i,e}function ve(e,t,n){var r=Math.sin(n),i=Math.cos(n),a=t[0],o=t[1],s=t[2],c=t[3],l=t[4],u=t[5],d=t[6],f=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+l*r,e[1]=o*i+u*r,e[2]=s*i+d*r,e[3]=c*i+f*r,e[4]=l*i-a*r,e[5]=u*i-o*r,e[6]=d*i-s*r,e[7]=f*i-c*r,e}function ye(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}function be(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function xe(e,t,n){var r=n[0],i=n[1],a=n[2],o=Math.sqrt(r*r+i*i+a*a),s,c,l;return o<1e-6?null:(o=1/o,r*=o,i*=o,a*=o,s=Math.sin(t),c=Math.cos(t),l=1-c,e[0]=r*r*l+c,e[1]=i*r*l+a*s,e[2]=a*r*l-i*s,e[3]=0,e[4]=r*i*l-a*s,e[5]=i*i*l+c,e[6]=a*i*l+r*s,e[7]=0,e[8]=r*a*l+i*s,e[9]=i*a*l-r*s,e[10]=a*a*l+c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}function Se(e,t){var n=Math.sin(t),r=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r,e[6]=n,e[7]=0,e[8]=0,e[9]=-n,e[10]=r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Ce(e,t){var n=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=0,e[2]=-n,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=n,e[9]=0,e[10]=r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function we(e,t){var n=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=n,e[2]=0,e[3]=0,e[4]=-n,e[5]=r,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Te(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3],s=r+r,c=i+i,l=a+a,u=r*s,d=r*c,f=r*l,p=i*c,m=i*l,h=a*l,g=o*s,_=o*c,v=o*l;return e[0]=1-(p+h),e[1]=d+v,e[2]=f-_,e[3]=0,e[4]=d-v,e[5]=1-(u+h),e[6]=m+g,e[7]=0,e[8]=f+_,e[9]=m-g,e[10]=1-(u+p),e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e}function Ee(e,t){var n=new M(3),r=-t[0],i=-t[1],a=-t[2],o=t[3],s=t[4],c=t[5],l=t[6],u=t[7],d=r*r+i*i+a*a+o*o;return d>0?(n[0]=(s*o+u*r+c*a-l*i)*2/d,n[1]=(c*o+u*i+l*r-s*a)*2/d,n[2]=(l*o+u*a+s*i-c*r)*2/d):(n[0]=(s*o+u*r+c*a-l*i)*2,n[1]=(c*o+u*i+l*r-s*a)*2,n[2]=(l*o+u*a+s*i-c*r)*2),Te(e,t,n),e}function De(e,t){return e[0]=t[12],e[1]=t[13],e[2]=t[14],e}function Oe(e,t){var n=t[0],r=t[1],i=t[2],a=t[4],o=t[5],s=t[6],c=t[8],l=t[9],u=t[10];return e[0]=Math.sqrt(n*n+r*r+i*i),e[1]=Math.sqrt(a*a+o*o+s*s),e[2]=Math.sqrt(c*c+l*l+u*u),e}function ke(e,t){var n=new M(3);Oe(n,t);var r=1/n[0],i=1/n[1],a=1/n[2],o=t[0]*r,s=t[1]*i,c=t[2]*a,l=t[4]*r,u=t[5]*i,d=t[6]*a,f=t[8]*r,p=t[9]*i,m=t[10]*a,h=o+u+m,g=0;return h>0?(g=Math.sqrt(h+1)*2,e[3]=.25*g,e[0]=(d-p)/g,e[1]=(f-c)/g,e[2]=(s-l)/g):o>u&&o>m?(g=Math.sqrt(1+o-u-m)*2,e[3]=(d-p)/g,e[0]=.25*g,e[1]=(s+l)/g,e[2]=(f+c)/g):u>m?(g=Math.sqrt(1+u-o-m)*2,e[3]=(f-c)/g,e[0]=(s+l)/g,e[1]=.25*g,e[2]=(d+p)/g):(g=Math.sqrt(1+m-o-u)*2,e[3]=(s-l)/g,e[0]=(f+c)/g,e[1]=(d+p)/g,e[2]=.25*g),e}function Ae(e,t,n,r){t[0]=r[12],t[1]=r[13],t[2]=r[14];var i=r[0],a=r[1],o=r[2],s=r[4],c=r[5],l=r[6],u=r[8],d=r[9],f=r[10];n[0]=Math.sqrt(i*i+a*a+o*o),n[1]=Math.sqrt(s*s+c*c+l*l),n[2]=Math.sqrt(u*u+d*d+f*f);var p=1/n[0],m=1/n[1],h=1/n[2],g=i*p,_=a*m,v=o*h,y=s*p,b=c*m,x=l*h,S=u*p,C=d*m,w=f*h,T=g+b+w,E=0;return T>0?(E=Math.sqrt(T+1)*2,e[3]=.25*E,e[0]=(x-C)/E,e[1]=(S-v)/E,e[2]=(_-y)/E):g>b&&g>w?(E=Math.sqrt(1+g-b-w)*2,e[3]=(x-C)/E,e[0]=.25*E,e[1]=(_+y)/E,e[2]=(S+v)/E):b>w?(E=Math.sqrt(1+b-g-w)*2,e[3]=(S-v)/E,e[0]=(_+y)/E,e[1]=.25*E,e[2]=(x+C)/E):(E=Math.sqrt(1+w-g-b)*2,e[3]=(_-y)/E,e[0]=(S+v)/E,e[1]=(x+C)/E,e[2]=.25*E),e}function je(e,t,n,r){var i=t[0],a=t[1],o=t[2],s=t[3],c=i+i,l=a+a,u=o+o,d=i*c,f=i*l,p=i*u,m=a*l,h=a*u,g=o*u,_=s*c,v=s*l,y=s*u,b=r[0],x=r[1],S=r[2];return e[0]=(1-(m+g))*b,e[1]=(f+y)*b,e[2]=(p-v)*b,e[3]=0,e[4]=(f-y)*x,e[5]=(1-(d+g))*x,e[6]=(h+_)*x,e[7]=0,e[8]=(p+v)*S,e[9]=(h-_)*S,e[10]=(1-(d+m))*S,e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e}function Me(e,t,n,r,i){var a=t[0],o=t[1],s=t[2],c=t[3],l=a+a,u=o+o,d=s+s,f=a*l,p=a*u,m=a*d,h=o*u,g=o*d,_=s*d,v=c*l,y=c*u,b=c*d,x=r[0],S=r[1],C=r[2],w=i[0],T=i[1],E=i[2],D=(1-(h+_))*x,O=(p+b)*x,k=(m-y)*x,A=(p-b)*S,j=(1-(f+_))*S,ee=(g+v)*S,te=(m+y)*C,M=(g-v)*C,ne=(1-(f+h))*C;return e[0]=D,e[1]=O,e[2]=k,e[3]=0,e[4]=A,e[5]=j,e[6]=ee,e[7]=0,e[8]=te,e[9]=M,e[10]=ne,e[11]=0,e[12]=n[0]+w-(D*w+A*T+te*E),e[13]=n[1]+T-(O*w+j*T+M*E),e[14]=n[2]+E-(k*w+ee*T+ne*E),e[15]=1,e}function Ne(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=n+n,s=r+r,c=i+i,l=n*o,u=r*o,d=r*s,f=i*o,p=i*s,m=i*c,h=a*o,g=a*s,_=a*c;return e[0]=1-d-m,e[1]=u+_,e[2]=f-g,e[3]=0,e[4]=u-_,e[5]=1-l-m,e[6]=p+h,e[7]=0,e[8]=f+g,e[9]=p-h,e[10]=1-l-d,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Pe(e,t,n,r,i,a,o){var s=1/(n-t),c=1/(i-r),l=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*c,e[6]=0,e[7]=0,e[8]=(n+t)*s,e[9]=(i+r)*c,e[10]=(o+a)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*l,e[15]=0,e}function Fe(e,t,n,r,i){var a=1/Math.tan(t/2);if(e[0]=a/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,i!=null&&i!==1/0){var o=1/(r-i);e[10]=(i+r)*o,e[14]=2*i*r*o}else e[10]=-1,e[14]=-2*r;return e}var Ie=Fe;function Le(e,t,n,r,i){var a=1/Math.tan(t/2);if(e[0]=a/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,i!=null&&i!==1/0){var o=1/(r-i);e[10]=i*o,e[14]=i*r*o}else e[10]=-1,e[14]=-r;return e}function Re(e,t,n,r){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),c=2/(o+s),l=2/(i+a);return e[0]=c,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=l,e[6]=0,e[7]=0,e[8]=-((o-s)*c*.5),e[9]=(i-a)*l*.5,e[10]=r/(n-r),e[11]=-1,e[12]=0,e[13]=0,e[14]=r*n/(n-r),e[15]=0,e}function ze(e,t,n,r,i,a,o){var s=1/(t-n),c=1/(r-i),l=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*c,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*l,e[11]=0,e[12]=(t+n)*s,e[13]=(i+r)*c,e[14]=(o+a)*l,e[15]=1,e}var Be=ze;function Ve(e,t,n,r,i,a,o){var s=1/(t-n),c=1/(r-i),l=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*c,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=l,e[11]=0,e[12]=(t+n)*s,e[13]=(i+r)*c,e[14]=a*l,e[15]=1,e}function He(e,t,n,r){var i,a,o,s,c,l,u,d,f,p,m=t[0],h=t[1],g=t[2],_=r[0],v=r[1],y=r[2],b=n[0],x=n[1],S=n[2];return Math.abs(m-b)<1e-6&&Math.abs(h-x)<1e-6&&Math.abs(g-S)<1e-6?ce(e):(u=m-b,d=h-x,f=g-S,p=1/Math.sqrt(u*u+d*d+f*f),u*=p,d*=p,f*=p,i=v*f-y*d,a=y*u-_*f,o=_*d-v*u,p=Math.sqrt(i*i+a*a+o*o),p?(p=1/p,i*=p,a*=p,o*=p):(i=0,a=0,o=0),s=d*o-f*a,c=f*i-u*o,l=u*a-d*i,p=Math.sqrt(s*s+c*c+l*l),p?(p=1/p,s*=p,c*=p,l*=p):(s=0,c=0,l=0),e[0]=i,e[1]=s,e[2]=u,e[3]=0,e[4]=a,e[5]=c,e[6]=d,e[7]=0,e[8]=o,e[9]=l,e[10]=f,e[11]=0,e[12]=-(i*m+a*h+o*g),e[13]=-(s*m+c*h+l*g),e[14]=-(u*m+d*h+f*g),e[15]=1,e)}function Ue(e,t,n,r){var i=t[0],a=t[1],o=t[2],s=r[0],c=r[1],l=r[2],u=i-n[0],d=a-n[1],f=o-n[2],p=u*u+d*d+f*f;p>0&&(p=1/Math.sqrt(p),u*=p,d*=p,f*=p);var m=c*f-l*d,h=l*u-s*f,g=s*d-c*u;return p=m*m+h*h+g*g,p>0&&(p=1/Math.sqrt(p),m*=p,h*=p,g*=p),e[0]=m,e[1]=h,e[2]=g,e[3]=0,e[4]=d*g-f*h,e[5]=f*m-u*g,e[6]=u*h-d*m,e[7]=0,e[8]=u,e[9]=d,e[10]=f,e[11]=0,e[12]=i,e[13]=a,e[14]=o,e[15]=1,e}function We(e){return`mat4(`+e[0]+`, `+e[1]+`, `+e[2]+`, `+e[3]+`, `+e[4]+`, `+e[5]+`, `+e[6]+`, `+e[7]+`, `+e[8]+`, `+e[9]+`, `+e[10]+`, `+e[11]+`, `+e[12]+`, `+e[13]+`, `+e[14]+`, `+e[15]+`)`}function Ge(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]+e[3]*e[3]+e[4]*e[4]+e[5]*e[5]+e[6]*e[6]+e[7]*e[7]+e[8]*e[8]+e[9]*e[9]+e[10]*e[10]+e[11]*e[11]+e[12]*e[12]+e[13]*e[13]+e[14]*e[14]+e[15]*e[15])}function Ke(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e[6]=t[6]+n[6],e[7]=t[7]+n[7],e[8]=t[8]+n[8],e[9]=t[9]+n[9],e[10]=t[10]+n[10],e[11]=t[11]+n[11],e[12]=t[12]+n[12],e[13]=t[13]+n[13],e[14]=t[14]+n[14],e[15]=t[15]+n[15],e}function qe(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e[4]=t[4]-n[4],e[5]=t[5]-n[5],e[6]=t[6]-n[6],e[7]=t[7]-n[7],e[8]=t[8]-n[8],e[9]=t[9]-n[9],e[10]=t[10]-n[10],e[11]=t[11]-n[11],e[12]=t[12]-n[12],e[13]=t[13]-n[13],e[14]=t[14]-n[14],e[15]=t[15]-n[15],e}function Je(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*n,e[9]=t[9]*n,e[10]=t[10]*n,e[11]=t[11]*n,e[12]=t[12]*n,e[13]=t[13]*n,e[14]=t[14]*n,e[15]=t[15]*n,e}function Ye(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e[4]=t[4]+n[4]*r,e[5]=t[5]+n[5]*r,e[6]=t[6]+n[6]*r,e[7]=t[7]+n[7]*r,e[8]=t[8]+n[8]*r,e[9]=t[9]+n[9]*r,e[10]=t[10]+n[10]*r,e[11]=t[11]+n[11]*r,e[12]=t[12]+n[12]*r,e[13]=t[13]+n[13]*r,e[14]=t[14]+n[14]*r,e[15]=t[15]+n[15]*r,e}function Xe(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]}function Ze(e,t){var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],c=e[6],l=e[7],u=e[8],d=e[9],f=e[10],p=e[11],m=e[12],h=e[13],g=e[14],_=e[15],v=t[0],y=t[1],b=t[2],x=t[3],S=t[4],C=t[5],w=t[6],T=t[7],E=t[8],D=t[9],O=t[10],k=t[11],A=t[12],j=t[13],ee=t[14],te=t[15];return Math.abs(n-v)<=1e-6*Math.max(1,Math.abs(n),Math.abs(v))&&Math.abs(r-y)<=1e-6*Math.max(1,Math.abs(r),Math.abs(y))&&Math.abs(i-b)<=1e-6*Math.max(1,Math.abs(i),Math.abs(b))&&Math.abs(a-x)<=1e-6*Math.max(1,Math.abs(a),Math.abs(x))&&Math.abs(o-S)<=1e-6*Math.max(1,Math.abs(o),Math.abs(S))&&Math.abs(s-C)<=1e-6*Math.max(1,Math.abs(s),Math.abs(C))&&Math.abs(c-w)<=1e-6*Math.max(1,Math.abs(c),Math.abs(w))&&Math.abs(l-T)<=1e-6*Math.max(1,Math.abs(l),Math.abs(T))&&Math.abs(u-E)<=1e-6*Math.max(1,Math.abs(u),Math.abs(E))&&Math.abs(d-D)<=1e-6*Math.max(1,Math.abs(d),Math.abs(D))&&Math.abs(f-O)<=1e-6*Math.max(1,Math.abs(f),Math.abs(O))&&Math.abs(p-k)<=1e-6*Math.max(1,Math.abs(p),Math.abs(k))&&Math.abs(m-A)<=1e-6*Math.max(1,Math.abs(m),Math.abs(A))&&Math.abs(h-j)<=1e-6*Math.max(1,Math.abs(h),Math.abs(j))&&Math.abs(g-ee)<=1e-6*Math.max(1,Math.abs(g),Math.abs(ee))&&Math.abs(_-te)<=1e-6*Math.max(1,Math.abs(_),Math.abs(te))}var Qe=pe,$e=qe;function et(){var e=new M(3);return M!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function tt(e){var t=new M(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function nt(e){var t=e[0],n=e[1],r=e[2];return Math.sqrt(t*t+n*n+r*r)}function rt(e,t,n){var r=new M(3);return r[0]=e,r[1]=t,r[2]=n,r}function it(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function at(e,t,n,r){return e[0]=t,e[1]=n,e[2]=r,e}function ot(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e}function st(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e}function ct(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e}function lt(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e[2]=Math.min(t[2],n[2]),e}function ut(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e[2]=Math.max(t[2],n[2]),e}function dt(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e}function ft(e,t){var n=t[0]-e[0],r=t[1]-e[1],i=t[2]-e[2];return Math.sqrt(n*n+r*r+i*i)}function pt(e,t){var n=t[0],r=t[1],i=t[2],a=n*n+r*r+i*i;return a>0&&(a=1/Math.sqrt(a)),e[0]=t[0]*a,e[1]=t[1]*a,e[2]=t[2]*a,e}function mt(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function ht(e,t,n){var r=t[0],i=t[1],a=t[2],o=n[0],s=n[1],c=n[2];return e[0]=i*c-a*s,e[1]=a*o-r*c,e[2]=r*s-i*o,e}function gt(e,t,n,r){var i=t[0],a=t[1],o=t[2];return e[0]=i+r*(n[0]-i),e[1]=a+r*(n[1]-a),e[2]=o+r*(n[2]-o),e}function _t(e,t,n){var r=t[0],i=t[1],a=t[2],o=n[3]*r+n[7]*i+n[11]*a+n[15];return o||=1,e[0]=(n[0]*r+n[4]*i+n[8]*a+n[12])/o,e[1]=(n[1]*r+n[5]*i+n[9]*a+n[13])/o,e[2]=(n[2]*r+n[6]*i+n[10]*a+n[14])/o,e}function vt(e,t,n){var r=t[0],i=t[1],a=t[2];return e[0]=r*n[0]+i*n[3]+a*n[6],e[1]=r*n[1]+i*n[4]+a*n[7],e[2]=r*n[2]+i*n[5]+a*n[8],e}function yt(e,t,n){var r=n[0],i=n[1],a=n[2],o=n[3],s=t[0],c=t[1],l=t[2],u=i*l-a*c,d=a*s-r*l,f=r*c-i*s;return u+=u,d+=d,f+=f,e[0]=s+o*u+i*f-a*d,e[1]=c+o*d+a*u-r*f,e[2]=l+o*f+r*d-i*u,e}function bt(e,t){var n=e[0],r=e[1],i=e[2],a=t[0],o=t[1],s=t[2];return Math.abs(n-a)<=1e-6*Math.max(1,Math.abs(n),Math.abs(a))&&Math.abs(r-o)<=1e-6*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(i-s)<=1e-6*Math.max(1,Math.abs(i),Math.abs(s))}var xt=st,St=ft,Ct=nt;(function(){var e=et();return function(t,n,r,i,a,o){var s,c;for(n||=3,r||=0,c=i?Math.min(i*n+r,t.length):t.length,s=r;s<c;s+=n)e[0]=t[s],e[1]=t[s+1],e[2]=t[s+2],a(e,e,o),t[s]=e[0],t[s+1]=e[1],t[s+2]=e[2];return t}})();function wt(){var e=new M(4);return M!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0),e}function Tt(e,t,n,r){var i=new M(4);return i[0]=e,i[1]=t,i[2]=n,i[3]=r,i}function Et(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}function Dt(e,t,n,r,i){return e[0]=t,e[1]=n,e[2]=r,e[3]=i,e}function Ot(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=n*n+r*r+i*i+a*a;return o>0&&(o=1/Math.sqrt(o)),e[0]=n*o,e[1]=r*o,e[2]=i*o,e[3]=a*o,e}function kt(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3];return e[0]=n[0]*r+n[4]*i+n[8]*a+n[12]*o,e[1]=n[1]*r+n[5]*i+n[9]*a+n[13]*o,e[2]=n[2]*r+n[6]*i+n[10]*a+n[14]*o,e[3]=n[3]*r+n[7]*i+n[11]*a+n[15]*o,e}(function(){var e=wt();return function(t,n,r,i,a,o){var s,c;for(n||=4,r||=0,c=i?Math.min(i*n+r,t.length):t.length,s=r;s<c;s+=n)e[0]=t[s],e[1]=t[s+1],e[2]=t[s+2],e[3]=t[s+3],a(e,e,o),t[s]=e[0],t[s+1]=e[1],t[s+2]=e[2],t[s+3]=e[3];return t}})();function At(){var e=new M(4);return M!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function jt(e,t,n){n*=.5;var r=Math.sin(n);return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=Math.cos(n),e}function Mt(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3],s=n[0],c=n[1],l=n[2],u=n[3];return e[0]=r*u+o*s+i*l-a*c,e[1]=i*u+o*c+a*s-r*l,e[2]=a*u+o*l+r*c-i*s,e[3]=o*u-r*s-i*c-a*l,e}function Nt(e,t,n,r){var i=t[0],a=t[1],o=t[2],s=t[3],c=n[0],l=n[1],u=n[2],d=n[3],f,p=i*c+a*l+o*u+s*d,m,h,g;return p<0&&(p=-p,c=-c,l=-l,u=-u,d=-d),1-p>1e-6?(f=Math.acos(p),m=Math.sin(f),h=Math.sin((1-r)*f)/m,g=Math.sin(r*f)/m):(h=1-r,g=r),e[0]=h*i+g*c,e[1]=h*a+g*l,e[2]=h*o+g*u,e[3]=h*s+g*d,e}function Pt(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=n*n+r*r+i*i+a*a,s=o?1/o:0;return e[0]=-n*s,e[1]=-r*s,e[2]=-i*s,e[3]=a*s,e}function Ft(e,t){var n=t[0]+t[4]+t[8],r;if(n>0)r=Math.sqrt(n+1),e[3]=.5*r,r=.5/r,e[0]=(t[5]-t[7])*r,e[1]=(t[6]-t[2])*r,e[2]=(t[1]-t[3])*r;else{var i=0;t[4]>t[0]&&(i=1),t[8]>t[i*3+i]&&(i=2);var a=(i+1)%3,o=(i+2)%3;r=Math.sqrt(t[i*3+i]-t[a*3+a]-t[o*3+o]+1),e[i]=.5*r,r=.5/r,e[3]=(t[a*3+o]-t[o*3+a])*r,e[a]=(t[a*3+i]+t[i*3+a])*r,e[o]=(t[o*3+i]+t[i*3+o])*r}return e}function It(e,t,n,r){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:`zyx`,a=Math.PI/360;t*=a,r*=a,n*=a;var o=Math.sin(t),s=Math.cos(t),c=Math.sin(n),l=Math.cos(n),u=Math.sin(r),d=Math.cos(r);switch(i){case`xyz`:e[0]=o*l*d+s*c*u,e[1]=s*c*d-o*l*u,e[2]=s*l*u+o*c*d,e[3]=s*l*d-o*c*u;break;case`xzy`:e[0]=o*l*d-s*c*u,e[1]=s*c*d-o*l*u,e[2]=s*l*u+o*c*d,e[3]=s*l*d+o*c*u;break;case`yxz`:e[0]=o*l*d+s*c*u,e[1]=s*c*d-o*l*u,e[2]=s*l*u-o*c*d,e[3]=s*l*d+o*c*u;break;case`yzx`:e[0]=o*l*d+s*c*u,e[1]=s*c*d+o*l*u,e[2]=s*l*u-o*c*d,e[3]=s*l*d-o*c*u;break;case`zxy`:e[0]=o*l*d-s*c*u,e[1]=s*c*d+o*l*u,e[2]=s*l*u+o*c*d,e[3]=s*l*d-o*c*u;break;case`zyx`:e[0]=o*l*d-s*c*u,e[1]=s*c*d+o*l*u,e[2]=s*l*u-o*c*d,e[3]=s*l*d+o*c*u;break;default:throw Error(`Unknown angle order `+i)}return e}var Lt=Tt,Rt=Et,zt=Dt,Bt=Mt,Vt=Ot;(function(){var e=et(),t=rt(1,0,0),n=rt(0,1,0);return function(r,i,a){var o=mt(i,a);return o<-.999999?(ht(e,t,i),Ct(e)<1e-6&&ht(e,n,i),pt(e,e),jt(r,e,Math.PI),r):o>.999999?(r[0]=0,r[1]=0,r[2]=0,r[3]=1,r):(ht(e,i,a),r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=1+o,Vt(r,r))}})(),function(){var e=At(),t=At();return function(n,r,i,a,o,s){return Nt(e,r,o,s),Nt(t,i,a,s),Nt(n,e,t,2*s*(1-s)),n}}(),function(){var e=ne();return function(t,n,r,i){return e[0]=r[0],e[3]=r[1],e[6]=r[2],e[1]=i[0],e[4]=i[1],e[7]=i[2],e[2]=-n[0],e[5]=-n[1],e[8]=-n[2],Vt(t,Ft(t,e))}}();function Ht(){var e=new M(2);return M!=Float32Array&&(e[0]=0,e[1]=0),e}function Ut(e,t){return e[0]=t[0],e[1]=t[1],e}function Wt(e,t,n){return e[0]=t,e[1]=n,e}function Gt(e,t){var n=t[0],r=t[1],i=n*n+r*r;return i>0&&(i=1/Math.sqrt(i)),e[0]=t[0]*i,e[1]=t[1]*i,e}function Kt(e,t){return e[0]*t[0]+e[1]*t[1]}function qt(e,t){return e[0]===t[0]&&e[1]===t[1]}(function(){var e=Ht();return function(t,n,r,i,a,o){var s,c;for(n||=2,r||=0,c=i?Math.min(i*n+r,t.length):t.length,s=r;s<c;s+=n)e[0]=t[s],e[1]=t[s+1],a(e,e,o),t[s]=e[0],t[s+1]=e[1];return t}})();var Jt=function(e){return e!==null&&typeof e!=`function`&&isFinite(e.length)},Yt=function(e,t){return Jt(e)?e.indexOf(t)>-1:!1},Xt=function(e,t){if(!Jt(e))return e;for(var n=[],r=0;r<e.length;r++){var i=e[r];t(i,r)&&n.push(i)}return n},Zt=function(e,t){return t===void 0&&(t=[]),Xt(e,function(e){return!Yt(t,e)})};function L(e){return typeof e==`function`}function R(e){return e==null}function Qt(e){return Array.isArray(e)}var $t=(function(e){var t=typeof e;return e!==null&&t===`object`||t===`function`});function en(e,t){if(e){var n;if(Qt(e))for(var r=0,i=e.length;r<i&&(n=t(e[r],r),n!==!1);r++);else if($t(e)){for(var a in e)if(e.hasOwnProperty(a)&&(n=t(e[a],a),n===!1))break}}}var tn=function(e){return typeof e==`object`&&!!e},nn={}.toString,rn=function(e,t){return nn.call(e)===`[object `+t+`]`},an=function(e){if(!tn(e)||!rn(e,`Object`))return!1;if(Object.getPrototypeOf(e)===null)return!0;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t},on=function(e){if(!Qt(e))return[];for(var t=[],n=0;n<e.length;n++)t=t.concat(e[n]);return t};function sn(e){if(!Array.isArray(e))return-1/0;var t=e.length;if(!t)return-1/0;for(var n=e[0],r=1;r<t;r++)n=Math.max(n,e[r]);return n}var cn=(function(e){if(Qt(e))return e.reduce(function(e,t){return Math.min(e,t)},e[0])}),ln=function(e,t,n){if(!Qt(e)&&!an(e))return e;var r=n;return en(e,function(e,n){r=t(r,e,n)}),r};function un(e){return typeof e==`string`}function dn(e,t){t===void 0&&(t=new Map);var n=[];if(Array.isArray(e))for(var r=0,i=e.length;r<i;r++){var a=e[r];t.has(a)||(n.push(a),t.set(a,!0))}return n}var fn=Object.prototype.hasOwnProperty;function pn(e,t){if(!t||!Qt(e))return{};for(var n={},r=L(t)?t:function(e){return e[t]},i,a=0;a<e.length;a++){var o=e[a];i=r(o),fn.call(n,i)?n[i].push(o):n[i]=[o]}return n}var mn=function(e,t,n){return e<t?t:e>n?n:e};function hn(e){return typeof e==`number`}var gn=1e-5;function _n(e,t,n){return n===void 0&&(n=gn),e===t||Math.abs(e-t)<n}var vn=(function(e,t){if(Qt(e)){for(var n,r=-1/0,i=0;i<e.length;i++){var a=e[i],o=L(t)?t(a):a[t];o>r&&(n=a,r=o)}return n}}),yn=(function(e,t){if(Qt(e)){for(var n,r=1/0,i=0;i<e.length;i++){var a=e[i],o=L(t)?t(a):a[t];o<r&&(n=a,r=o)}return n}}),bn=function(e,t){return(e%t+t)%t},xn=(function(e){return R(e)?``:e.toString()}),Sn=function(e){var t=xn(e);return t.charAt(0).toLowerCase()+t.substring(1)};function Cn(e,t){return!e||!t?e:e.replace(/\\?\{([^{}]+)\}/g,function(e,n){return e.charAt(0)===`\\`?e.slice(1):t[n]===void 0?``:t[n]})}var wn=function(e){var t=xn(e);return t.charAt(0).toUpperCase()+t.substring(1)},Tn={}.toString,En=function(e){return Tn.call(e).replace(/^\[object /,``).replace(/]$/,``)},Dn=function(e){return rn(e,`Boolean`)};function On(e){return e instanceof Date}function kn(e){return e===null}var An=Object.prototype,jn=function(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||An)},Mn=function(e){return e===void 0};function Nn(e){return e instanceof Element||e instanceof Document}function Pn(e,t){for(var n in t)t.hasOwnProperty(n)&&n!==`constructor`&&t[n]!==void 0&&(e[n]=t[n])}function Fn(e,t,n,r){return t&&Pn(e,t),n&&Pn(e,n),r&&Pn(e,r),e}var In=function(e){if(typeof e!=`object`||!e)return e;var t;if(Qt(e)){t=[];for(var n=0,r=e.length;n<r;n++)typeof e[n]==`object`&&e[n]!=null?t[n]=In(e[n]):t[n]=e[n]}else for(var i in t={},e)typeof e[i]==`object`&&e[i]!=null?t[i]=In(e[i]):t[i]=e[i];return t};function Ln(e,t,n){var r;return function(){var i=this,a=arguments,o=function(){r=null,n||e.apply(i,a)},s=n&&!r;clearTimeout(r),r=setTimeout(o,t),s&&e.apply(i,a)}}function Rn(e){var t,n,r,i=e||1;function a(e,a){++t>i&&(r=n,o(1),++t),n[e]=a}function o(e){t=0,n=Object.create(null),e||(r=Object.create(null))}return o(),{clear:o,has:function(e){return n[e]!==void 0||r[e]!==void 0},get:function(e){var t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return a(e,t),t},set:function(e,t){n[e]===void 0?a(e,t):n[e]=t}}}var zn=new Map;function Bn(e,t,n){return n===void 0&&(n=128),function(){var r=[...arguments],i=t?t.apply(this,r):r[0];zn.has(e)||zn.set(e,Rn(n));var a=zn.get(e);if(a.has(i))return a.get(i);var o=e.apply(this,r);return a.set(i,o),o}}var Vn=5;function Hn(e,t){if(Object.hasOwn)return Object.hasOwn(e,t);if(e==null)throw TypeError(`Cannot convert undefined or null to object`);return Object.prototype.hasOwnProperty.call(Object(e),t)}function Un(e,t,n,r){for(var i in n||=0,r||=Vn,t)if(Hn(t,i)){var a=t[i];a!==null&&an(a)?(an(e[i])||(e[i]={}),n<r?Un(e[i],a,n+1,r):e[i]=t[i]):Qt(a)?(e[i]=[],e[i]=e[i].concat(a)):a!==void 0&&(e[i]=a)}}var Wn=function(e){for(var t=[...arguments].slice(1),n=0;n<t.length;n+=1)Un(e,t[n]);return e},Gn=Object.prototype.hasOwnProperty;function Kn(e){if(R(e))return!0;if(Jt(e))return!e.length;var t=En(e);if(t===`Map`||t===`Set`)return!e.size;if(jn(e))return!Object.keys(e).length;for(var n in e)if(Gn.call(e,n))return!1;return!0}var qn=function(e,t){if(e===t)return!0;if(!e||!t||un(e)||un(t))return!1;if(Jt(e)||Jt(t)){if(e.length!==t.length)return!1;for(var n=!0,r=0;r<e.length&&(n=qn(e[r],t[r]),n);r++);return n}if(tn(e)||tn(t)){var i=Object.keys(e),a=Object.keys(t);if(i.length!==a.length)return!1;for(var n=!0,r=0;r<i.length&&(n=qn(e[i[r]],t[i[r]]),n);r++);return n}return!1},Jn=(function(e,t,n){for(var r=0,i=un(t)?t.split(`.`):t;e&&r<i.length;)e=e[i[r++]];return e===void 0||r<i.length?n:e}),Yn=(function(e,t,n){var r=e,i=un(t)?t.split(`.`):t;return i.forEach(function(e,t){t<i.length-1?($t(r[e])||(r[e]=hn(i[t+1])?[]:{}),r=r[e]):r[e]=n}),e}),Xn=Object.prototype.hasOwnProperty,Zn=(function(e,t){if(e===null||!an(e))return{};var n={};return en(t,function(t){Xn.call(e,t)&&(n[t]=e[t])}),n}),Qn=(function(e,t){return ln(e,function(e,n,r){return t.includes(r)||(e[r]=n),e},{})}),$n=(function(e,t,n){var r,i,a,o,s=0;n||={};var c=function(){s=n.leading===!1?0:Date.now(),r=null,o=e.apply(i,a),r||(i=a=null)},l=function(){var l=Date.now();!s&&n.leading===!1&&(s=l);var u=t-(l-s);return i=this,a=arguments,u<=0||u>t?(r&&=(clearTimeout(r),null),s=l,o=e.apply(i,a),r||(i=a=null)):!r&&n.trailing!==!1&&(r=setTimeout(c,u)),o};return l.cancel=function(){clearTimeout(r),s=0,r=i=a=null},l}),er={},tr=(function(e){return e||=`g`,er[e]?er[e]+=1:er[e]=1,e+er[e]}),nr=(function(){}),rr=(function(e){return e}),ir=n({__addDisposableResource:()=>Ar,__assign:()=>V,__asyncDelegator:()=>Sr,__asyncGenerator:()=>xr,__asyncValues:()=>Cr,__await:()=>br,__awaiter:()=>mr,__classPrivateFieldGet:()=>Dr,__classPrivateFieldIn:()=>kr,__classPrivateFieldSet:()=>Or,__createBinding:()=>Pr,__decorate:()=>sr,__disposeResources:()=>jr,__esDecorate:()=>lr,__exportStar:()=>gr,__extends:()=>ar,__generator:()=>hr,__importDefault:()=>Er,__importStar:()=>Tr,__makeTemplateObject:()=>wr,__metadata:()=>pr,__param:()=>cr,__propKey:()=>dr,__read:()=>z,__rest:()=>or,__rewriteRelativeImportExtension:()=>Mr,__runInitializers:()=>ur,__setFunctionName:()=>fr,__spread:()=>vr,__spreadArray:()=>B,__spreadArrays:()=>yr,__values:()=>_r,default:()=>Rr});function ar(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Class extends value `+String(t)+` is not a constructor or null`);Nr(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}function or(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function sr(e,t,n,r){var i=arguments.length,a=i<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,n):r,o;if(typeof Reflect==`object`&&typeof Reflect.decorate==`function`)a=Reflect.decorate(e,t,n,r);else for(var s=e.length-1;s>=0;s--)(o=e[s])&&(a=(i<3?o(a):i>3?o(t,n,a):o(t,n))||a);return i>3&&a&&Object.defineProperty(t,n,a),a}function cr(e,t){return function(n,r){t(n,r,e)}}function lr(e,t,n,r,i,a){function o(e){if(e!==void 0&&typeof e!=`function`)throw TypeError(`Function expected`);return e}for(var s=r.kind,c=s===`getter`?`get`:s===`setter`?`set`:`value`,l=!t&&e?r.static?e:e.prototype:null,u=t||(l?Object.getOwnPropertyDescriptor(l,r.name):{}),d,f=!1,p=n.length-1;p>=0;p--){var m={};for(var h in r)m[h]=h===`access`?{}:r[h];for(var h in r.access)m.access[h]=r.access[h];m.addInitializer=function(e){if(f)throw TypeError(`Cannot add initializers after decoration has completed`);a.push(o(e||null))};var g=(0,n[p])(s===`accessor`?{get:u.get,set:u.set}:u[c],m);if(s===`accessor`){if(g===void 0)continue;if(typeof g!=`object`||!g)throw TypeError(`Object expected`);(d=o(g.get))&&(u.get=d),(d=o(g.set))&&(u.set=d),(d=o(g.init))&&i.unshift(d)}else (d=o(g))&&(s===`field`?i.unshift(d):u[c]=d)}l&&Object.defineProperty(l,r.name,u),f=!0}function ur(e,t,n){for(var r=arguments.length>2,i=0;i<t.length;i++)n=r?t[i].call(e,n):t[i].call(e);return r?n:void 0}function dr(e){return typeof e==`symbol`?e:`${e}`}function fr(e,t,n){return typeof t==`symbol`&&(t=t.description?`[${t.description}]`:``),Object.defineProperty(e,`name`,{configurable:!0,value:n?`${n} ${t}`:t})}function pr(e,t){if(typeof Reflect==`object`&&typeof Reflect.metadata==`function`)return Reflect.metadata(e,t)}function mr(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})}function hr(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o=Object.create((typeof Iterator==`function`?Iterator:Object).prototype);return o.next=s(0),o.throw=s(1),o.return=s(2),typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(s){if(r)throw TypeError(`Generator is already executing.`);for(;o&&(o=0,s[0]&&(n=0)),n;)try{if(r=1,i&&(a=s[0]&2?i.return:s[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,s[1])).done)return a;switch(i=0,a&&(s=[s[0]&2,a.value]),s[0]){case 0:case 1:a=s;break;case 4:return n.label++,{value:s[1],done:!1};case 5:n.label++,i=s[1],s=[0];continue;case 7:s=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(s[0]===6||s[0]===2)){n=0;continue}if(s[0]===3&&(!a||s[1]>a[0]&&s[1]<a[3])){n.label=s[1];break}if(s[0]===6&&n.label<a[1]){n.label=a[1],a=s;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(s);break}a[2]&&n.ops.pop(),n.trys.pop();continue}s=t.call(e,n)}catch(e){s=[6,e],i=0}finally{r=a=0}if(s[0]&5)throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}}function gr(e,t){for(var n in e)n!==`default`&&!Object.prototype.hasOwnProperty.call(t,n)&&Pr(t,e,n)}function _r(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)}function z(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-- >0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a}function vr(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(z(arguments[t]));return e}function yr(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var r=Array(e),i=0,t=0;t<n;t++)for(var a=arguments[t],o=0,s=a.length;o<s;o++,i++)r[i]=a[o];return r}function B(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}function br(e){return this instanceof br?(this.v=e,this):new br(e)}function xr(e,t,n){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var r=n.apply(e,t||[]),i,a=[];return i=Object.create((typeof AsyncIterator==`function`?AsyncIterator:Object).prototype),s(`next`),s(`throw`),s(`return`,o),i[Symbol.asyncIterator]=function(){return this},i;function o(e){return function(t){return Promise.resolve(t).then(e,d)}}function s(e,t){r[e]&&(i[e]=function(t){return new Promise(function(n,r){a.push([e,t,n,r])>1||c(e,t)})},t&&(i[e]=t(i[e])))}function c(e,t){try{l(r[e](t))}catch(e){f(a[0][3],e)}}function l(e){e.value instanceof br?Promise.resolve(e.value.v).then(u,d):f(a[0][2],e)}function u(e){c(`next`,e)}function d(e){c(`throw`,e)}function f(e,t){e(t),a.shift(),a.length&&c(a[0][0],a[0][1])}}function Sr(e){var t,n;return t={},r(`next`),r(`throw`,function(e){throw e}),r(`return`),t[Symbol.iterator]=function(){return this},t;function r(r,i){t[r]=e[r]?function(t){return(n=!n)?{value:br(e[r](t)),done:!1}:i?i(t):t}:i}}function Cr(e){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof _r==`function`?_r(e):e[Symbol.iterator](),n={},r(`next`),r(`throw`),r(`return`),n[Symbol.asyncIterator]=function(){return this},n);function r(t){n[t]=e[t]&&function(n){return new Promise(function(r,a){n=e[t](n),i(r,a,n.done,n.value)})}}function i(e,t,n,r){Promise.resolve(r).then(function(t){e({value:t,done:n})},t)}}function wr(e,t){return Object.defineProperty?Object.defineProperty(e,`raw`,{value:t}):e.raw=t,e}function Tr(e){if(e&&e.__esModule)return e;var t={};if(e!=null)for(var n=Ir(e),r=0;r<n.length;r++)n[r]!==`default`&&Pr(t,e,n[r]);return Fr(t,e),t}function Er(e){return e&&e.__esModule?e:{default:e}}function Dr(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)}function Or(e,t,n,r,i){if(r===`m`)throw TypeError(`Private method is not writable`);if(r===`a`&&!i)throw TypeError(`Private accessor was defined without a setter`);if(typeof t==`function`?e!==t||!i:!t.has(e))throw TypeError(`Cannot write private member to an object whose class did not declare it`);return r===`a`?i.call(e,n):i?i.value=n:t.set(e,n),n}function kr(e,t){if(t===null||typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Cannot use 'in' operator on non-object`);return typeof e==`function`?t===e:e.has(t)}function Ar(e,t,n){if(t!=null){if(typeof t!=`object`&&typeof t!=`function`)throw TypeError(`Object expected.`);var r,i;if(n){if(!Symbol.asyncDispose)throw TypeError(`Symbol.asyncDispose is not defined.`);r=t[Symbol.asyncDispose]}if(r===void 0){if(!Symbol.dispose)throw TypeError(`Symbol.dispose is not defined.`);r=t[Symbol.dispose],n&&(i=r)}if(typeof r!=`function`)throw TypeError(`Object not disposable.`);i&&(r=function(){try{i.call(this)}catch(e){return Promise.reject(e)}}),e.stack.push({value:t,dispose:r,async:n})}else n&&e.stack.push({async:!0});return t}function jr(e){function t(t){e.error=e.hasError?new Lr(t,e.error,`An error was suppressed during disposal.`):t,e.hasError=!0}var n,r=0;function i(){for(;n=e.stack.pop();)try{if(!n.async&&r===1)return r=0,e.stack.push(n),Promise.resolve().then(i);if(n.dispose){var a=n.dispose.call(n.value);if(n.async)return r|=2,Promise.resolve(a).then(i,function(e){return t(e),i()})}else r|=1}catch(e){t(e)}if(r===1)return e.hasError?Promise.reject(e.error):Promise.resolve();if(e.hasError)throw e.error}return i()}function Mr(e,t){return typeof e==`string`&&/^\.\.?\//.test(e)?e.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i,function(e,n,r,i,a){return n?t?`.jsx`:`.js`:r&&(!i||!a)?e:r+i+`.`+a.toLowerCase()+`js`}):e}var Nr,V,Pr,Fr,Ir,Lr,Rr,H=t((()=>{Nr=function(e,t){return Nr=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Nr(e,t)},V=function(){return V=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},V.apply(this,arguments)},Pr=Object.create?(function(e,t,n,r){r===void 0&&(r=n);var i=Object.getOwnPropertyDescriptor(t,n);(!i||(`get`in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,i)}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]}),Fr=Object.create?(function(e,t){Object.defineProperty(e,`default`,{enumerable:!0,value:t})}):function(e,t){e.default=t},Ir=function(e){return Ir=Object.getOwnPropertyNames||function(e){var t=[];for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[t.length]=n);return t},Ir(e)},Lr=typeof SuppressedError==`function`?SuppressedError:function(e,t,n){var r=Error(n);return r.name=`SuppressedError`,r.error=e,r.suppressed=t,r},Rr={__extends:ar,__assign:V,__rest:or,__decorate:sr,__param:cr,__esDecorate:lr,__runInitializers:ur,__propKey:dr,__setFunctionName:fr,__metadata:pr,__awaiter:mr,__generator:hr,__createBinding:Pr,__exportStar:gr,__values:_r,__read:z,__spread:vr,__spreadArrays:yr,__spreadArray:B,__await:br,__asyncGenerator:xr,__asyncDelegator:Sr,__asyncValues:Cr,__makeTemplateObject:wr,__importStar:Tr,__importDefault:Er,__classPrivateFieldGet:Dr,__classPrivateFieldSet:Or,__classPrivateFieldIn:kr,__addDisposableResource:Ar,__disposeResources:jr,__rewriteRelativeImportExtension:Mr}}));H();var zr={x1:0,y1:0,x2:0,y2:0,x:0,y:0,qx:null,qy:null};function Br(e,t,n){if(e[n].length>7){e[n].shift();for(var r=e[n],i=n;r.length;)t[n]=`A`,e.splice(i+=1,0,[`C`].concat(r.splice(0,6)));e.splice(n,1)}}var Vr={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0};function Hr(e){return Array.isArray(e)&&e.every(function(e){var t=e[0].toLowerCase();return Vr[t]===e.length-1&&`achlmqstvz`.includes(t)})}function Ur(e){return Hr(e)&&e.every(function(e){var t=e[0];return t===t.toUpperCase()})}function Wr(e){return Ur(e)&&e.every(function(e){var t=e[0];return`ACLMQZ`.includes(t)})}function Gr(e){for(var t=e.pathValue[e.segmentStart],n=t.toLowerCase(),r=e.data;r.length>=Vr[n]&&(n===`m`&&r.length>2?(e.segments.push([t].concat(r.splice(0,2))),n=`l`,t=t===`m`?`l`:`L`):e.segments.push([t].concat(r.splice(0,Vr[n]))),Vr[n]););}function Kr(e){var t=e.index,n=e.pathValue,r=n.charCodeAt(t);if(r===48){e.param=0,e.index+=1;return}if(r===49){e.param=1,e.index+=1;return}e.err=`[path-util]: invalid Arc flag "${n[t]}", expecting 0 or 1 at index ${t}`}function qr(e){return e>=48&&e<=57||e===43||e===45||e===46}function Jr(e){return e>=48&&e<=57}function Yr(e){var t=e.max,n=e.pathValue,r=e.index,i=r,a=!1,o=!1,s=!1,c=!1,l;if(i>=t){e.err=`[path-util]: Invalid path value at index ${i}, "pathValue" is missing param`;return}if(l=n.charCodeAt(i),(l===43||l===45)&&(i+=1,l=n.charCodeAt(i)),!Jr(l)&&l!==46){e.err=`[path-util]: Invalid path value at index ${i}, "${n[i]}" is not a number`;return}if(l!==46){if(a=l===48,i+=1,l=n.charCodeAt(i),a&&i<t&&l&&Jr(l)){e.err=`[path-util]: Invalid path value at index ${r}, "${n[r]}" illegal number`;return}for(;i<t&&Jr(n.charCodeAt(i));)i+=1,o=!0;l=n.charCodeAt(i)}if(l===46){for(c=!0,i+=1;Jr(n.charCodeAt(i));)i+=1,s=!0;l=n.charCodeAt(i)}if(l===101||l===69){if(c&&!o&&!s){e.err=`[path-util]: Invalid path value at index ${i}, "${n[i]}" invalid float exponent`;return}if(i+=1,l=n.charCodeAt(i),(l===43||l===45)&&(i+=1),i<t&&Jr(n.charCodeAt(i)))for(;i<t&&Jr(n.charCodeAt(i));)i+=1;else{e.err=`[path-util]: Invalid path value at index ${i}, "${n[i]}" invalid integer exponent`;return}}e.index=i,e.param=+e.pathValue.slice(r,i)}function Xr(e){return e===10||e===13||e===8232||e===8233||e===32||e===9||e===11||e===12||e===160||e>=5760&&[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].includes(e)}function Zr(e){for(var t=e.pathValue,n=e.max;e.index<n&&Xr(t.charCodeAt(e.index));)e.index+=1}function Qr(e){switch(e|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 $r(e){return(e|32)==97}function ei(e){var t=e.max,n=e.pathValue,r=e.index,i=n.charCodeAt(r),a=Vr[n[r].toLowerCase()];if(e.segmentStart=r,!Qr(i)){e.err=`[path-util]: Invalid path value "${n[r]}" is not a path command`;return}if(e.index+=1,Zr(e),e.data=[],!a){Gr(e);return}for(;;){for(var o=a;o>0;--o){if($r(i)&&(o===3||o===4)?Kr(e):Yr(e),e.err.length)return;e.data.push(e.param),Zr(e),e.index<t&&n.charCodeAt(e.index)===44&&(e.index+=1,Zr(e))}if(e.index>=e.max||!qr(n.charCodeAt(e.index)))break}Gr(e)}var ti=function(){function e(e){this.pathValue=e,this.segments=[],this.max=e.length,this.index=0,this.param=0,this.segmentStart=0,this.data=[],this.err=``}return e}();function ni(e){if(Hr(e))return[].concat(e);var t=new ti(e);for(Zr(t);t.index<t.max&&!t.err.length;)ei(t);return t.err?t.err:t.segments}function ri(e){if(Ur(e))return[].concat(e);var t=ni(e),n=0,r=0,i=0,a=0;return t.map(function(e){var t=e.slice(1).map(Number),o=e[0],s=o.toUpperCase();if(o===`M`)return n=t[0],r=t[1],i=n,a=r,[`M`,n,r];var c;if(o!==s)switch(s){case`A`:c=[s,t[0],t[1],t[2],t[3],t[4],t[5]+n,t[6]+r];break;case`V`:c=[s,t[0]+r];break;case`H`:c=[s,t[0]+n];break;default:var l=t.map(function(e,t){return e+(t%2?r:n)});c=[s].concat(l)}else c=[s].concat(t);var u=c.length;switch(s){case`Z`:n=i,r=a;break;case`H`:n=c[1];break;case`V`:r=c[1];break;default:n=c[u-2],r=c[u-1],s===`M`&&(i=n,a=r)}return c})}function ii(e,t){var n=e[0],r=t.x1,i=t.y1,a=t.x2,o=t.y2,s=e.slice(1).map(Number),c=e;if(`TQ`.includes(n)||(t.qx=null,t.qy=null),n===`H`)c=[`L`,e[1],i];else if(n===`V`)c=[`L`,r,e[1]];else if(n===`S`){var l=r*2-a,u=i*2-o;t.x1=l,t.y1=u,c=[`C`,l,u].concat(s)}else if(n===`T`){var d=r*2-t.qx,f=i*2-t.qy;t.qx=d,t.qy=f,c=[`Q`,d,f].concat(s)}else if(n===`Q`){var p=s[0],m=s[1];t.qx=p,t.qy=m}return c}function ai(e){if(Wr(e))return[].concat(e);for(var t=ri(e),n=V({},zr),r=0;r<t.length;r+=1){t[r]=ii(t[r],n);var i=t[r],a=i.length;n.x1=+i[a-2],n.y1=+i[a-1],n.x2=+i[a-4]||n.x1,n.y2=+i[a-3]||n.y1}return t}function oi(e){return Wr(e)&&e.every(function(e){var t=e[0];return`MC`.includes(t)})}function si(e,t,n){return{x:e*Math.cos(n)-t*Math.sin(n),y:e*Math.sin(n)+t*Math.cos(n)}}function ci(e,t,n,r,i,a,o,s,c,l){var u=e,d=t,f=n,p=r,m=s,h=c,g=Math.PI*120/180,_=Math.PI/180*(+i||0),v=[],y,b,x,S,C;if(l)b=l[0],x=l[1],S=l[2],C=l[3];else{y=si(u,d,-_),u=y.x,d=y.y,y=si(m,h,-_),m=y.x,h=y.y;var w=(u-m)/2,T=(d-h)/2,E=w*w/(f*f)+T*T/(p*p);E>1&&(E=Math.sqrt(E),f*=E,p*=E);var D=f*f,O=p*p,k=(a===o?-1:1)*Math.sqrt(Math.abs((D*O-D*T*T-O*w*w)/(D*T*T+O*w*w)));S=k*f*T/p+(u+m)/2,C=k*-p*w/f+(d+h)/2,b=Math.asin(((d-C)/p*10**9>>0)/10**9),x=Math.asin(((h-C)/p*10**9>>0)/10**9),b=u<S?Math.PI-b:b,x=m<S?Math.PI-x:x,b<0&&(b=Math.PI*2+b),x<0&&(x=Math.PI*2+x),o&&b>x&&(b-=Math.PI*2),!o&&x>b&&(x-=Math.PI*2)}var A=x-b;if(Math.abs(A)>g){var j=x,ee=m,te=h;x=b+g*(o&&x>b?1:-1),m=S+f*Math.cos(x),h=C+p*Math.sin(x),v=ci(m,h,f,p,i,0,o,ee,te,[x,j,S,C])}A=x-b;var M=Math.cos(b),ne=Math.sin(b),re=Math.cos(x),ie=Math.sin(x),N=Math.tan(A/4),P=4/3*f*N,ae=4/3*p*N,F=[u,d],oe=[u+P*ne,d-ae*M],se=[m+P*ie,h-ae*re],ce=[m,h];if(oe[0]=2*F[0]-oe[0],oe[1]=2*F[1]-oe[1],l)return oe.concat(se,ce,v);v=oe.concat(se,ce,v);for(var le=[],ue=0,de=v.length;ue<de;ue+=1)le[ue]=ue%2?si(v[ue-1],v[ue],_).y:si(v[ue],v[ue+1],_).x;return le}function li(e,t,n,r,i,a){var o=1/3,s=2/3;return[o*e+s*n,o*t+s*r,o*i+s*n,o*a+s*r,i,a]}function ui(e,t,n){var r=e[0],i=e[1],a=t[0],o=t[1];return[r+(a-r)*n,i+(o-i)*n]}H();var di=function(e,t,n,r){return B(B([],ui([e,t],[n,r],.5),!0),[n,r,n,r],!1)};function fi(e,t){var n=e[0],r=e.slice(1).map(Number),i=r[0],a=r[1],o,s=t.x1,c=t.y1,l=t.x,u=t.y;switch(`TQ`.includes(n)||(t.qx=null,t.qy=null),n){case`M`:return t.x=i,t.y=a,e;case`A`:return o=[s,c].concat(r),[`C`].concat(ci(o[0],o[1],o[2],o[3],o[4],o[5],o[6],o[7],o[8],o[9]));case`Q`:return t.qx=i,t.qy=a,o=[s,c].concat(r),[`C`].concat(li(o[0],o[1],o[2],o[3],o[4],o[5]));case`L`:return[`C`].concat(di(s,c,i,a));case`Z`:return s===l&&c===u?[`C`,s,c,l,u,l,u]:[`C`].concat(di(s,c,l,u));default:}return e}H();function pi(e,t){if(t===void 0&&(t=!1),oi(e)){var n=[].concat(e);return t?[n,[]]:n}for(var r=ai(e),i=V({},zr),a=[],o=``,s=r.length,c,l,u=[],d=0;d<s;d+=1)r[d]&&(o=r[d][0]),a[d]=o,r[d]=fi(r[d],i),Br(r,a,d),s=r.length,o===`Z`&&u.push(d),c=r[d],l=c.length,i.x1=+c[l-2],i.y1=+c[l-1],i.x2=+c[l-4]||i.x1,i.y2=+c[l-3]||i.y1;return t?[r,u]:r}function mi(e){return e.map(function(e){return Array.isArray(e)?[].concat(e):e})}function hi(e){var t=e.slice(1).map(function(t,n,r){return n?r[n-1].slice(-2).concat(t.slice(1)):e[0].slice(1).concat(t.slice(1))}).map(function(e){return e.map(function(t,n){return e[e.length-n-2*(1-n%2)]})}).reverse();return[[`M`].concat(t[0].slice(0,2))].concat(t.map(function(e){return[`C`].concat(e.slice(2))}))}function gi(e,t){return Math.sqrt((e[0]-t[0])*(e[0]-t[0])+(e[1]-t[1])*(e[1]-t[1]))}function _i(e,t,n,r,i){var a=gi([e,t],[n,r]),o={x:0,y:0};if(typeof i==`number`)if(i<=0)o={x:e,y:t};else if(i>=a)o={x:n,y:r};else{var s=ui([e,t],[n,r],i/a);o={x:s[0],y:s[1]}}return{length:a,point:o,min:{x:Math.min(e,n),y:Math.min(t,r)},max:{x:Math.max(e,n),y:Math.max(t,r)}}}function vi(e,t){var n=e.x,r=e.y,i=t.x,a=t.y,o=n*i+r*a,s=Math.sqrt((n**2+r**2)*(i**2+a**2));return(n*a-r*i<0?-1:1)*Math.acos(o/s)}function yi(e,t,n,r,i,a,o,s,c,l){var u=Math.abs,d=Math.sin,f=Math.cos,p=Math.sqrt,m=Math.PI,h=u(n),g=u(r),_=(i%360+360)%360*(m/180);if(e===s&&t===c)return{x:e,y:t};if(h===0||g===0)return _i(e,t,s,c,l).point;var v=(e-s)/2,y=(t-c)/2,b={x:f(_)*v+d(_)*y,y:-d(_)*v+f(_)*y},x=b.x**2/h**2+b.y**2/g**2;x>1&&(h*=p(x),g*=p(x));var S=(h**2*g**2-h**2*b.y**2-g**2*b.x**2)/(h**2*b.y**2+g**2*b.x**2);S=S<0?0:S;var C=(a===o?-1:1)*p(S),w={x:C*(h*b.y/g),y:C*(-(g*b.x)/h)},T={x:f(_)*w.x-d(_)*w.y+(e+s)/2,y:d(_)*w.x+f(_)*w.y+(t+c)/2},E={x:(b.x-w.x)/h,y:(b.y-w.y)/g},D=vi({x:1,y:0},E),O=vi(E,{x:(-b.x-w.x)/h,y:(-b.y-w.y)/g});!o&&O>0?O-=2*m:o&&O<0&&(O+=2*m),O%=2*m;var k=D+O*l,A=h*f(k),j=g*d(k);return{x:f(_)*A-d(_)*j+T.x,y:d(_)*A+f(_)*j+T.y}}function bi(e,t,n,r,i,a,o,s,c,l,u){var d,f=u.bbox,p=f===void 0?!0:f,m=u.length,h=m===void 0?!0:m,g=u.sampleSize,_=g===void 0?30:g,v=typeof l==`number`,y=e,b=t,x=0,S=[y,b,x],C=[y,b],w=0,T={x:0,y:0},E=[{x:y,y:b}];v&&l<=0&&(T={x:y,y:b});for(var D=0;D<=_;D+=1){if(w=D/_,d=yi(e,t,n,r,i,a,o,s,c,w),y=d.x,b=d.y,p&&E.push({x:y,y:b}),h&&(x+=gi(C,[y,b])),C=[y,b],v&&x>=l&&l>S[2]){var O=(x-l)/(x-S[2]);T={x:C[0]*(1-O)+S[0]*O,y:C[1]*(1-O)+S[1]*O}}S=[y,b,x]}return v&&l>=x&&(T={x:s,y:c}),{length:x,point:T,min:{x:Math.min.apply(null,E.map(function(e){return e.x})),y:Math.min.apply(null,E.map(function(e){return e.y}))},max:{x:Math.max.apply(null,E.map(function(e){return e.x})),y:Math.max.apply(null,E.map(function(e){return e.y}))}}}function xi(e,t,n,r,i,a,o,s,c){var l=1-c;return{x:l**3*e+3*l**2*c*n+3*l*c**2*i+c**3*o,y:l**3*t+3*l**2*c*r+3*l*c**2*a+c**3*s}}function Si(e,t,n,r,i,a,o,s,c,l){var u,d=l.bbox,f=d===void 0?!0:d,p=l.length,m=p===void 0?!0:p,h=l.sampleSize,g=h===void 0?10:h,_=typeof c==`number`,v=e,y=t,b=0,x=[v,y,b],S=[v,y],C=0,w={x:0,y:0},T=[{x:v,y}];_&&c<=0&&(w={x:v,y});for(var E=0;E<=g;E+=1){if(C=E/g,u=xi(e,t,n,r,i,a,o,s,C),v=u.x,y=u.y,f&&T.push({x:v,y}),m&&(b+=gi(S,[v,y])),S=[v,y],_&&b>=c&&c>x[2]){var D=(b-c)/(b-x[2]);w={x:S[0]*(1-D)+x[0]*D,y:S[1]*(1-D)+x[1]*D}}x=[v,y,b]}return _&&c>=b&&(w={x:o,y:s}),{length:b,point:w,min:{x:Math.min.apply(null,T.map(function(e){return e.x})),y:Math.min.apply(null,T.map(function(e){return e.y}))},max:{x:Math.max.apply(null,T.map(function(e){return e.x})),y:Math.max.apply(null,T.map(function(e){return e.y}))}}}function Ci(e,t,n,r,i,a,o){var s=1-o;return{x:s**2*e+2*s*o*n+o**2*i,y:s**2*t+2*s*o*r+o**2*a}}function wi(e,t,n,r,i,a,o,s){var c,l=s.bbox,u=l===void 0?!0:l,d=s.length,f=d===void 0?!0:d,p=s.sampleSize,m=p===void 0?10:p,h=typeof o==`number`,g=e,_=t,v=0,y=[g,_,v],b=[g,_],x=0,S={x:0,y:0},C=[{x:g,y:_}];h&&o<=0&&(S={x:g,y:_});for(var w=0;w<=m;w+=1){if(x=w/m,c=Ci(e,t,n,r,i,a,x),g=c.x,_=c.y,u&&C.push({x:g,y:_}),f&&(v+=gi(b,[g,_])),b=[g,_],h&&v>=o&&o>y[2]){var T=(v-o)/(v-y[2]);S={x:b[0]*(1-T)+y[0]*T,y:b[1]*(1-T)+y[1]*T}}y=[g,_,v]}return h&&o>=v&&(S={x:i,y:a}),{length:v,point:S,min:{x:Math.min.apply(null,C.map(function(e){return e.x})),y:Math.min.apply(null,C.map(function(e){return e.y}))},max:{x:Math.max.apply(null,C.map(function(e){return e.x})),y:Math.max.apply(null,C.map(function(e){return e.y}))}}}function Ti(e,t,n){for(var r,i,a,o,s,c,l=ai(e),u=typeof t==`number`,d,f=[],p,m=0,h=0,g=0,_=0,v,y=[],b=[],x=0,S={x:0,y:0},C=S,w=S,T=S,E=0,D=0,O=l.length;D<O;D+=1)v=l[D],p=v[0],d=p===`M`,f=d?f:[m,h].concat(v.slice(1)),d?(g=v[1],_=v[2],S={x:g,y:_},C=S,x=0,u&&t<.001&&(T=S)):p===`L`?(r=_i(f[0],f[1],f[2],f[3],(t||0)-E),x=r.length,S=r.min,C=r.max,w=r.point):p===`A`?(i=bi(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8],(t||0)-E,n||{}),x=i.length,S=i.min,C=i.max,w=i.point):p===`C`?(a=Si(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],(t||0)-E,n||{}),x=a.length,S=a.min,C=a.max,w=a.point):p===`Q`?(o=wi(f[0],f[1],f[2],f[3],f[4],f[5],(t||0)-E,n||{}),x=o.length,S=o.min,C=o.max,w=o.point):p===`Z`&&(f=[m,h,g,_],s=_i(f[0],f[1],f[2],f[3],(t||0)-E),x=s.length,S=s.min,C=s.max,w=s.point),u&&E<t&&E+x>=t&&(T=w),b.push(C),y.push(S),E+=x,c=p===`Z`?[g,_]:v.slice(-2),m=c[0],h=c[1];return u&&t>=E&&(T={x:m,y:h}),{length:E,point:T,min:{x:Math.min.apply(null,y.map(function(e){return e.x})),y:Math.min.apply(null,y.map(function(e){return e.y}))},max:{x:Math.max.apply(null,b.map(function(e){return e.x})),y:Math.max.apply(null,b.map(function(e){return e.y}))}}}H();function Ei(e,t){return Ti(e,void 0,V(V({},t),{bbox:!1,length:!0})).length}function Di(e){var t=e.length,n=t-1;return e.map(function(r,i){return e.map(function(r,a){var o=i+a,s;return a===0||e[o]&&e[o][0]===`M`?(s=e[o],[`M`].concat(s.slice(-2))):(o>=t&&(o-=n),e[o])})})}function Oi(e,t){var n=e.length-1,r=[],i=0,a=0,o=Di(e);return o.forEach(function(i,o){e.slice(1).forEach(function(r,i){a+=gi(e[(o+i)%n].slice(-2),t[i%n].slice(-2))}),r[o]=a,a=0}),i=r.indexOf(Math.min.apply(null,r)),o[i]}function ki(e,t,n,r,i,a,o,s){return 3*((s-t)*(n+i)-(o-e)*(r+a)+r*(e-i)-n*(t-a)+s*(i+e/3)-o*(a+t/3))/20}function Ai(e){var t=0,n=0,r=0;return pi(e).map(function(e){var i;switch(e[0]){case`M`:return t=e[1],n=e[2],0;default:var a=e.slice(1),o=a[0],s=a[1],c=a[2],l=a[3],u=a[4],d=a[5];return r=ki(t,n,o,s,c,l,u,d),i=e.slice(-2),t=i[0],n=i[1],r}}).reduce(function(e,t){return e+t},0)}function ji(e){return Ai(e)>=0}H();function Mi(e,t,n){return Ti(e,t,V(V({},n),{bbox:!1,length:!0})).point}var Ni=50;function Pi(e,t){t===void 0&&(t=.5);var n=e.slice(0,2),r=e.slice(2,4),i=e.slice(4,6),a=e.slice(6,8),o=ui(n,r,t),s=ui(r,i,t),c=ui(i,a,t),l=ui(o,s,t),u=ui(s,c,t),d=ui(l,u,t);return[[`C`].concat(o,l,d),[`C`].concat(u,c,a)]}function Fi(e){return e.map(function(e,t,n){var r=t&&n[t-1].slice(-2).concat(e.slice(1)),i=t?Si(r[0],r[1],r[2],r[3],r[4],r[5],r[6],r[7],r[8],{bbox:!1}).length:0;return{s:e,ss:t?i?Pi(r):[e,e]:[e],l:i}})}function Ii(e,t,n,r){if(r===void 0&&(r=0),r>Ni)return console.warn(`Maximum recursion depth reached in equalizeSegments`),[e,t];var i=Fi(e),a=Fi(t),o=i.length,s=a.length,c=i.filter(function(e){return e.l}).length,l=a.filter(function(e){return e.l}).length,u=i.filter(function(e){return e.l}).reduce(function(e,t){return e+t.l},0)/c||0,d=a.filter(function(e){return e.l}).reduce(function(e,t){return e+t.l},0)/l||0,f=n||Math.max(o,s),p=[u,d],m=[f-o,f-s],h=0,g=[i,a].map(function(e,t){return e.l===f?e.map(function(e){return e.s}):e.map(function(e,n){return h=n&&m[t]&&e.l>=p[t],m[t]-=+!!h,h?e.ss:[e.s]}).flat()});return g[0].length===g[1].length?g:Ii(g[0],g[1],f,r+1)}function Li(e){var t=document.createElement(`div`);t.innerHTML=e;var n=t.childNodes[0];return n&&t.contains(n)&&t.removeChild(n),n}function Ri(e,t){for(;!{}.hasOwnProperty.call(e,t)&&(e=E(e))!==null;);return e}function zi(){return zi=typeof Reflect<`u`&&Reflect.get?Reflect.get.bind():function(e,t,n){var r=Ri(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(arguments.length<3?e:n):i.value}},zi.apply(null,arguments)}function Bi(e,t,n,r){var i=zi(E(1&r?e.prototype:e),t,n);return 2&r&&typeof i==`function`?function(e){return i.apply(n,e)}:i}function Vi(e,t,n,r){var i=e-n,a=t-r;return Math.sqrt(i*i+a*a)}function Hi(e,t){var n=Math.min.apply(Math,l(e)),r=Math.min.apply(Math,l(t)),i=Math.max.apply(Math,l(e)),a=Math.max.apply(Math,l(t));return{x:n,y:r,width:i-n,height:a-r}}function Ui(e,t,n){return Math.atan(-t/e*Math.tan(n))}function Wi(e,t,n){return Math.atan(t/(e*Math.tan(n)))}function Gi(e,t,n,r,i,a){return n*Math.cos(i)*Math.cos(a)-r*Math.sin(i)*Math.sin(a)+e}function Ki(e,t,n,r,i,a){return n*Math.sin(i)*Math.cos(a)+r*Math.cos(i)*Math.sin(a)+t}function qi(e,t,n,r,i,a,o){for(var s=Ui(n,r,i),c=1/0,l=-1/0,u=[a,o],d=-Math.PI*2;d<=Math.PI*2;d+=Math.PI){var f=s+d;a<o?a<f&&f<o&&u.push(f):o<f&&f<a&&u.push(f)}for(var p=0;p<u.length;p++){var m=Gi(e,t,n,r,i,u[p]);m<c&&(c=m),m>l&&(l=m)}for(var h=Wi(n,r,i),g=1/0,_=-1/0,v=[a,o],y=-Math.PI*2;y<=Math.PI*2;y+=Math.PI){var b=h+y;a<o?a<b&&b<o&&v.push(b):o<b&&b<a&&v.push(b)}for(var x=0;x<v.length;x++){var S=Ki(e,t,n,r,i,v[x]);S<g&&(g=S),S>_&&(_=S)}return{x:c,y:g,width:l-c,height:_-g}}var Ji=1e-4;function Yi(e,t,n,r,i,a){var o=-1,s=1/0,c=[n,r],u=20;a&&a>200&&(u=a/10);for(var d=1/u,f=d/10,p=0;p<=u;p++){var m=p*d,h=[i.apply(void 0,l(e.concat([m]))),i.apply(void 0,l(t.concat([m])))],g=Vi(c[0],c[1],h[0],h[1]);g<s&&(o=m,s=g)}if(o===0)return{x:e[0],y:t[0]};if(o===1){var _=e.length;return{x:e[_-1],y:t[_-1]}}s=1/0;for(var v=0;v<32&&!(f<Ji);v++){var y=o-f,b=o+f,x=[i.apply(void 0,l(e.concat([y]))),i.apply(void 0,l(t.concat([y])))],S=Vi(c[0],c[1],x[0],x[1]);if(y>=0&&S<s)o=y,s=S;else{var C=[i.apply(void 0,l(e.concat([b]))),i.apply(void 0,l(t.concat([b])))],w=Vi(c[0],c[1],C[0],C[1]);b<=1&&w<s?(o=b,s=w):f*=.5}}return{x:i.apply(void 0,l(e.concat([o]))),y:i.apply(void 0,l(t.concat([o])))}}function Xi(e,t,n,r){return Vi(e,t,n,r)}function Zi(e,t,n,r,i){return{x:(1-i)*e+i*n,y:(1-i)*t+i*r}}function Qi(e,t,n,r,i,a){var o=[n-e,r-t];if(qt(o,[0,0]))return Math.sqrt((i-e)*(i-e)+(a-t)*(a-t));var s=[-o[1],o[0]];Gt(s,s);var c=[i-e,a-t];return Math.abs(Kt(c,s))}function $i(e,t,n,r,i){var a=1-i;return a*a*a*e+3*t*i*a*a+3*n*i*i*a+r*i*i*i}function ea(e,t,n,r){var i=-3*e+9*t-9*n+3*r,a=6*e-12*t+6*n,o=3*t-3*e,s=[],c,l,u;if(_n(i,0))_n(a,0)||(c=-o/a,c>=0&&c<=1&&s.push(c));else{var d=a*a-4*i*o;_n(d,0)?s.push(-a/(2*i)):d>0&&(u=Math.sqrt(d),c=(-a+u)/(2*i),l=(-a-u)/(2*i),c>=0&&c<=1&&s.push(c),l>=0&&l<=1&&s.push(l))}return s}function ta(e,t,n,r,i,a,o,s){for(var c=[e,o],l=[t,s],u=ea(e,n,i,o),d=ea(t,r,a,s),f=0;f<u.length;f++)c.push($i(e,n,i,o,u[f]));for(var p=0;p<d.length;p++)l.push($i(t,r,a,s,d[p]));return Hi(c,l)}function na(e,t,n,r,i,a,o,s,c,l,u){return Yi([e,n,i,o],[t,r,a,s],c,l,$i,u)}function ra(e,t,n,r,i,a,o,s,c,l,u){var d=na(e,t,n,r,i,a,o,s,c,l,u);return Vi(d.x,d.y,c,l)}function ia(e){if(e.length<2)return 0;for(var t=0,n=0;n<e.length-1;n++){var r=e[n],i=e[n+1];t+=Vi(r[0],r[1],i[0],i[1])}return t}function aa(e){return ia(e)}function oa(e,t,n,r){var i=1-r;return i*i*e+2*r*i*t+r*r*n}function sa(e,t,n){var r=e+n-2*t;if(_n(r,0))return[.5];var i=(e-t)/r;return i<=1&&i>=0?[i]:[]}function ca(e,t,n,r,i,a){var o=sa(e,n,i)[0],s=sa(t,r,a)[0],c=[e,i],l=[t,a];return o!==void 0&&c.push(oa(e,n,i,o)),s!==void 0&&l.push(oa(t,r,a,s)),Hi(c,l)}function la(e,t,n,r,i,a,o,s){return Yi([e,n,i],[t,r,a],o,s,oa)}function ua(e,t,n,r,i,a,o,s){var c=la(e,t,n,r,i,a,o,s);return Vi(c.x,c.y,o,s)}function da(e,t){this.v=e,this.k=t}function fa(e,t,n,r){var i=Object.defineProperty;try{i({},``,{})}catch{i=0}fa=function(e,t,n,r){function a(t,n){fa(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(a(`next`,0),a(`throw`,1),a(`return`,2))},fa(e,t,n,r)}function pa(){var e,t,n=typeof Symbol==`function`?Symbol:{},r=n.iterator||`@@iterator`,i=n.toStringTag||`@@toStringTag`;function a(n,r,i,a){var c=r&&r.prototype instanceof s?r:s,l=Object.create(c.prototype);return fa(l,`_invoke`,function(n,r,i){var a,s,c,l=0,u=i||[],d=!1,f={p:0,n:0,v:e,a:p,f:p.bind(e,4),d:function(t,n){return a=t,s=0,c=e,f.n=n,o}};function p(n,r){for(s=n,c=r,t=0;!d&&l&&!i&&t<u.length;t++){var i,a=u[t],p=f.p,m=a[2];n>3?(i=m===r)&&(c=a[(s=a[4])?5:(s=3,3)],a[4]=a[5]=e):a[0]<=p&&((i=n<2&&p<a[1])?(s=0,f.v=r,f.n=a[1]):p<m&&(i=n<3||a[0]>r||r>m)&&(a[4]=n,a[5]=r,f.n=m,s=0))}if(i||n>1)return o;throw d=!0,r}return function(i,u,m){if(l>1)throw TypeError(`Generator is already running`);for(d&&u===1&&p(u,m),s=u,c=m;(t=s<2?e:c)||!d;){a||(s?s<3?(s>1&&(f.n=-1),p(s,c)):f.n=c:f.v=c);try{if(l=2,a){if(s||(i=`next`),t=a[i]){if(!(t=t.call(a,c)))throw TypeError(`iterator result is not an object`);if(!t.done)return t;c=t.value,s<2&&(s=0)}else s===1&&(t=a.return)&&t.call(a),s<2&&(c=TypeError(`The iterator does not provide a '`+i+`' method`),s=1);a=e}else if((t=(d=f.n<0)?c:n.call(r,f))!==o)break}catch(t){a=e,s=1,c=t}finally{l=1}}return{value:t,done:d}}}(n,i,a),!0),l}var o={};function s(){}function c(){}function l(){}t=Object.getPrototypeOf;var u=[][r]?t(t([][r]())):(fa(t={},r,function(){return this}),t),d=l.prototype=s.prototype=Object.create(u);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,l):(e.__proto__=l,fa(e,i,`GeneratorFunction`)),e.prototype=Object.create(d),e}return c.prototype=l,fa(d,`constructor`,l),fa(l,`constructor`,c),c.displayName=`GeneratorFunction`,fa(l,i,`GeneratorFunction`),fa(d),fa(d,i,`Generator`),fa(d,r,function(){return this}),fa(d,`toString`,function(){return`[object Generator]`}),(pa=function(){return{w:a,m:f}})()}function ma(e,t){function n(r,i,a,o){try{var s=e[r](i),c=s.value;return c instanceof da?t.resolve(c.v).then(function(e){n(`next`,e,a,o)},function(e){n(`throw`,e,a,o)}):t.resolve(c).then(function(e){s.value=e,a(s)},function(e){return n(`throw`,e,a,o)})}catch(e){o(e)}}var r;this.next||(fa(ma.prototype),fa(ma.prototype,typeof Symbol==`function`&&Symbol.asyncIterator||`@asyncIterator`,function(){return this})),fa(this,`_invoke`,function(e,i,a){function o(){return new t(function(t,r){n(e,a,t,r)})}return r=r?r.then(o,o):o()},!0)}function ha(e,t,n,r,i){return new ma(pa().w(e,t,n,r),i||Promise)}function ga(e,t,n,r,i){var a=ha(e,t,n,r,i);return a.next().then(function(e){return e.done?e.value:a.next()})}function _a(e){var t=Object(e),n=[];for(var r in t)n.unshift(r);return function e(){for(;n.length;)if((r=n.pop())in t)return e.value=r,e.done=!1,e;return e.done=!0,e}}function va(e){if(e!=null){var t=e[typeof Symbol==`function`&&Symbol.iterator||`@@iterator`],n=0;if(t)return t.call(e);if(typeof e.next==`function`)return e;if(!isNaN(e.length))return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}}}throw TypeError(u(e)+` is not iterable`)}function ya(){var e=pa(),t=e.m(ya),n=(Object.getPrototypeOf?Object.getPrototypeOf(t):t.__proto__).constructor;function r(e){var t=typeof e==`function`&&e.constructor;return!!t&&(t===n||(t.displayName||t.name)===`GeneratorFunction`)}var i={throw:1,return:2,break:3,continue:3};function a(e){var t,n;return function(r){t||(t={stop:function(){return n(r.a,2)},catch:function(){return r.v},abrupt:function(e,t){return n(r.a,i[e],t)},delegateYield:function(e,i,a){return t.resultName=i,n(r.d,va(e),a)},finish:function(e){return n(r.f,e)}},n=function(e,n,i){r.p=t.prev,r.n=t.next;try{return e(n,i)}finally{t.next=r.n}}),t.resultName&&(t[t.resultName]=r.v,t.resultName=void 0),t.sent=r.v,t.next=r.n;try{return e.call(this,t)}finally{r.p=t.prev,r.n=t.next}}}return(ya=function(){return{wrap:function(t,n,r,i){return e.w(a(t),n,r,i&&i.reverse())},isGeneratorFunction:r,mark:e.m,awrap:function(e,t){return new da(e,t)},AsyncIterator:ma,async:function(e,t,n,i,o){return(r(t)?ha:ga)(a(e),t,n,i,o)},keys:_a,values:va}})()}function ba(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){n(e);return}s.done?t(c):Promise.resolve(c).then(r,i)}function xa(e){return function(){var t=this,n=arguments;return new Promise(function(r,i){var a=e.apply(t,n);function o(e){ba(a,r,i,o,s,`next`,e)}function s(e){ba(a,r,i,o,s,`throw`,e)}o(void 0)})}}var U=function(e){return e.GROUP=`g`,e.FRAGMENT=`fragment`,e.CIRCLE=`circle`,e.ELLIPSE=`ellipse`,e.IMAGE=`image`,e.RECT=`rect`,e.LINE=`line`,e.POLYLINE=`polyline`,e.POLYGON=`polygon`,e.TEXT=`text`,e.PATH=`path`,e.HTML=`html`,e.MESH=`mesh`,e}({}),Sa=function(e){return e[e.ZERO=0]=`ZERO`,e[e.NEGATIVE_ONE=1]=`NEGATIVE_ONE`,e}({}),Ca=function(){function e(){b(this,e),this.plugins=[]}return S(e,[{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(t){var n=e.context.renderingPlugins.indexOf(t);n>=0&&e.context.renderingPlugins.splice(n,1)})}}])}(),wa=function(){function e(t){b(this,e),this.clipSpaceNearZ=Sa.NEGATIVE_ONE,this.plugins=[],this.config=y({enableDirtyCheck:!0,enableCulling:!1,enableAutoRendering:!0,enableDirtyRectangleRendering:!0,enableDirtyRectangleRenderingDebug:!1,enableSizeAttenuation:!0,enableRenderingOptimization:!1},t)}return S(e,[{key:`registerPlugin`,value:function(e){this.plugins.findIndex(function(t){return t===e})===-1&&this.plugins.push(e)}},{key:`unregisterPlugin`,value:function(e){var t=this.plugins.findIndex(function(t){return t===e});t>-1&&this.plugins.splice(t,1)}},{key:`getPlugins`,value:function(){return this.plugins}},{key:`getPlugin`,value:function(e){return this.plugins.find(function(t){return t.name===e})}},{key:`getConfig`,value:function(){return this.config}},{key:`setConfig`,value:function(e){Object.assign(this.config,e)}}])}(),Ta=ot,Ea=it,Da=ut,Oa=lt,ka=dt,Aa=xt,ja=function(){function e(){b(this,e),this.center=[0,0,0],this.halfExtents=[0,0,0],this.min=[0,0,0],this.max=[0,0,0]}return S(e,[{key:`update`,value:function(e,t){Ea(this.center,e),Ea(this.halfExtents,t),Aa(this.min,this.center,this.halfExtents),Ta(this.max,this.center,this.halfExtents)}},{key:`setMinMax`,value:function(e,t){Ta(this.center,t,e),ka(this.center,this.center,.5),Aa(this.halfExtents,t,e),ka(this.halfExtents,this.halfExtents,.5),Ea(this.min,e),Ea(this.max,t)}},{key:`getMin`,value:function(){return this.min}},{key:`getMax`,value:function(){return this.max}},{key:`add`,value:function(t){if(!e.isEmpty(t)){if(e.isEmpty(this)){this.setMinMax(t.getMin(),t.getMax());return}var n=this.center,r=n[0],i=n[1],a=n[2],o=this.halfExtents,s=o[0],c=o[1],l=o[2],u=r-s,d=r+s,f=i-c,p=i+c,m=a-l,h=a+l,g=t.center,_=g[0],v=g[1],y=g[2],b=t.halfExtents,x=b[0],S=b[1],C=b[2],w=_-x,T=_+x,E=v-S,D=v+S,O=y-C,k=y+C;w<u&&(u=w),T>d&&(d=T),E<f&&(f=E),D>p&&(p=D),O<m&&(m=O),k>h&&(h=k),n[0]=(u+d)*.5,n[1]=(f+p)*.5,n[2]=(m+h)*.5,o[0]=(d-u)*.5,o[1]=(p-f)*.5,o[2]=(h-m)*.5,this.min[0]=u,this.min[1]=f,this.min[2]=m,this.max[0]=d,this.max[1]=p,this.max[2]=h}}},{key:`setFromTransformedAABB`,value:function(e,t){var n=this.center,r=this.halfExtents,i=e.center,a=e.halfExtents,o=t[0],s=t[4],c=t[8],l=t[1],u=t[5],d=t[9],f=t[2],p=t[6],m=t[10],h=Math.abs(o),g=Math.abs(s),_=Math.abs(c),v=Math.abs(l),y=Math.abs(u),b=Math.abs(d),x=Math.abs(f),S=Math.abs(p),C=Math.abs(m);n[0]=t[12]+o*i[0]+s*i[1]+c*i[2],n[1]=t[13]+l*i[0]+u*i[1]+d*i[2],n[2]=t[14]+f*i[0]+p*i[1]+m*i[2],r[0]=h*a[0]+g*a[1]+_*a[2],r[1]=v*a[0]+y*a[1]+b*a[2],r[2]=x*a[0]+S*a[1]+C*a[2],Aa(this.min,n,r),Ta(this.max,n,r)}},{key:`intersects`,value:function(e){var t=this.getMax(),n=this.getMin(),r=e.getMax(),i=e.getMin();return n[0]<=r[0]&&t[0]>=i[0]&&n[1]<=r[1]&&t[1]>=i[1]&&n[2]<=r[2]&&t[2]>=i[2]}},{key:`intersection`,value:function(t){if(!this.intersects(t))return null;var n=new e,r=Da([0,0,0],this.getMin(),t.getMin()),i=Oa([0,0,0],this.getMax(),t.getMax());return n.setMinMax(r,i),n}},{key:`getNegativeFarPoint`,value:function(e){return e.pnVertexFlag===273?Ea([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?Ea([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}}])}(),Ma=function(){function e(t,n){b(this,e),this.distance=t||0,this.normal=n||rt(0,1,0),this.updatePNVertexFlag()}return S(e,[{key:`updatePNVertexFlag`,value:function(){this.pnVertexFlag=(Number(this.normal[0]>=0)<<8)+(Number(this.normal[1]>=0)<<4)+Number(this.normal[2]>=0)}},{key:`distanceToPoint`,value:function(e){return mt(e,this.normal)-this.distance}},{key:`normalize`,value:function(){var e=1/Ct(this.normal);dt(this.normal,this.normal,e),this.distance*=e}},{key:`intersectsLine`,value:function(e,t,n){var r=this.distanceToPoint(e),i=r/(r-this.distanceToPoint(t)),a=i>=0&&i<=1;return a&&n&&gt(n,e,t,i),a}}])}(),W=function(e){return e[e.OUTSIDE=4294967295]=`OUTSIDE`,e[e.INSIDE=0]=`INSIDE`,e[e.INDETERMINATE=2147483647]=`INDETERMINATE`,e}({}),Na=function(){function e(t){if(b(this,e),this.planes=[],t)this.planes=t;else for(var n=0;n<6;n++)this.planes.push(new Ma)}return S(e,[{key:`extractFromVPMatrix`,value:function(e){var t=m(e,16),n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11],h=t[12],g=t[13],_=t[14],v=t[15];at(this.planes[0].normal,a-n,l-o,p-u),this.planes[0].distance=v-h,at(this.planes[1].normal,a+n,l+o,p+u),this.planes[1].distance=v+h,at(this.planes[2].normal,a+r,l+s,p+d),this.planes[2].distance=v+g,at(this.planes[3].normal,a-r,l-s,p-d),this.planes[3].distance=v-g,at(this.planes[4].normal,a-i,l-c,p-f),this.planes[4].distance=v-_,at(this.planes[5].normal,a+i,l+c,p+f),this.planes[5].distance=v+_,this.planes.forEach(function(e){e.normalize(),e.updatePNVertexFlag()})}}])}(),Pa=function(){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;b(this,e),this.x=0,this.y=0,this.x=t,this.y=n}return S(e,[{key:`clone`,value:function(){return new e(this.x,this.y)}},{key:`copyFrom`,value:function(e){this.x=e.x,this.y=e.y}}])}(),Fa=function(){function e(t,n,r,i){b(this,e),this.x=t,this.y=n,this.width=r,this.height=i,this.left=t,this.right=t+r,this.top=n,this.bottom=n+i}return S(e,[{key:`toJSON`,value:function(){}}],[{key:`fromRect`,value:function(t){return new e(t.x,t.y,t.width,t.height)}},{key:`applyTransform`,value:function(t,n){var r=Tt(t.x,t.y,0,1),i=Tt(t.x+t.width,t.y,0,1),a=Tt(t.x,t.y+t.height,0,1),o=Tt(t.x+t.width,t.y+t.height,0,1),s=wt(),c=wt(),l=wt(),u=wt();kt(s,r,n),kt(c,i,n),kt(l,a,n),kt(u,o,n);var d=Math.min(s[0],c[0],l[0],u[0]),f=Math.min(s[1],c[1],l[1],u[1]),p=Math.max(s[0],c[0],l[0],u[0]),m=Math.max(s[1],c[1],l[1],u[1]);return e.fromRect({x:d,y:f,width:p-d,height:m-f})}}])}(),Ia=`Method not implemented.`,La=`Use document.documentElement instead.`,Ra=`Cannot append a destroyed element.`;function za(e){return e===void 0?0:e>360||e<-360?e%360:e}var Ba=et();function Va(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;return Array.isArray(e)&&e.length===3?r?tt(e):it(Ba,e):hn(e)?r?rt(e,t,n):at(Ba,e,t,n):r?rt(e[0],e[1]||t,e[2]||n):at(Ba,e[0],e[1]||t,e[2]||n)}var Ha=Math.PI/180;function Ua(e){return e*Ha}var Wa=180/Math.PI;function Ga(e){return e*Wa}function Ka(e){return 360*e}var qa=Math.PI/2;function Ja(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=n*n,s=r*r,c=i*i,l=a*a,u=o+s+c+l,d=n*a-r*i;return d>.499995*u?(e[0]=qa,e[1]=2*Math.atan2(r,n),e[2]=0):d<-.499995*u?(e[0]=-qa,e[1]=2*Math.atan2(r,n),e[2]=0):(e[0]=Math.asin(2*(n*i-a*r)),e[1]=Math.atan2(2*(n*a+r*i),1-2*(c+l)),e[2]=Math.atan2(2*(n*r+i*a),1-2*(s+c))),e}function Ya(e,t){var n,r,i=m(Oe(et(),t),3),a=i[0],o=i[1],s=i[2],c=Math.asin(-t[2]/a);return c<qa?c>-qa?(n=Math.atan2(t[6]/o,t[10]/s),r=Math.atan2(t[1]/a,t[0]/a)):(r=0,n=-Math.atan2(t[4]/o,t[5]/o)):(r=0,n=Math.atan2(t[4]/o,t[5]/o)),e[0]=n,e[1]=c,e[2]=r,e}function Xa(e,t){return t.length===16?Ya(e,t):Ja(e,t)}function Za(e,t,n,r,i){var a=Math.cos(e),o=Math.sin(e);return ie(r*a,i*o,0,-r*o,i*a,0,t,n,1)}function Qa(e,t,n,r,i,a,o){var s=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,c=2*a,l=n-t,u=r-i,d=c/l,f=c/u,p=(n+t)/l,m=(r+i)/u,h,g,_=o-a,v=o*a;return s?(h=-o/_,g=-v/_):(h=-(o+a)/_,g=-2*v/_),e[0]=d,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=f,e[6]=0,e[7]=0,e[8]=p,e[9]=m,e[10]=h,e[11]=-1,e[12]=0,e[13]=0,e[14]=g,e[15]=0,e}function $a(e){var t=e[0],n=e[1],r=e[3],i=e[4],a=Math.sqrt(t*t+n*n),o=Math.sqrt(r*r+i*i);if(t*i-n*r<0&&(t<i?a=-a:o=-o),a){var s=1/a;t*=s,n*=s}if(o){var c=1/o;r*=c,i*=c}var l=Ga(Math.atan2(n,t));return[e[6],e[7],a,o,l]}var eo=P(),to=P(),no=wt(),G=[et(),et(),et()],ro=et();function io(e,t,n,r,i,a){if(!ao(eo,e)||(F(to,eo),to[3]=0,to[7]=0,to[11]=0,to[15]=1,Math.abs(fe(to))<1e-8))return!1;var o=eo[3],s=eo[7],c=eo[11],l=eo[12],u=eo[13],d=eo[14],f=eo[15];if(o!==0||s!==0||c!==0){if(no[0]=o,no[1]=s,no[2]=c,no[3]=f,!ue(to,to))return!1;le(to,to),kt(i,no,to)}else i[0]=i[1]=i[2]=0,i[3]=1;if(t[0]=l,t[1]=u,t[2]=d,oo(G,eo),n[0]=nt(G[0]),pt(G[0],G[0]),r[0]=mt(G[0],G[1]),so(G[1],G[1],G[0],1,-r[0]),n[1]=nt(G[1]),pt(G[1],G[1]),r[0]/=n[1],r[1]=mt(G[0],G[2]),so(G[2],G[2],G[0],1,-r[1]),r[2]=mt(G[1],G[2]),so(G[2],G[2],G[1],1,-r[2]),n[2]=nt(G[2]),pt(G[2],G[2]),r[1]/=n[2],r[2]/=n[2],ht(ro,G[1],G[2]),mt(G[0],ro)<0)for(var p=0;p<3;p++)n[p]*=-1,G[p][0]*=-1,G[p][1]*=-1,G[p][2]*=-1;return a[0]=.5*Math.sqrt(Math.max(1+G[0][0]-G[1][1]-G[2][2],0)),a[1]=.5*Math.sqrt(Math.max(1-G[0][0]+G[1][1]-G[2][2],0)),a[2]=.5*Math.sqrt(Math.max(1-G[0][0]-G[1][1]+G[2][2],0)),a[3]=.5*Math.sqrt(Math.max(1+G[0][0]+G[1][1]+G[2][2],0)),G[2][1]>G[1][2]&&(a[0]=-a[0]),G[0][2]>G[2][0]&&(a[1]=-a[1]),G[1][0]>G[0][1]&&(a[2]=-a[2]),!0}function ao(e,t){var n=t[15];if(n===0)return!1;for(var r=1/n,i=0;i<16;i++)e[i]=t[i]*r;return!0}function oo(e,t){e[0][0]=t[0],e[0][1]=t[1],e[0][2]=t[2],e[1][0]=t[4],e[1][1]=t[5],e[1][2]=t[6],e[2][0]=t[8],e[2][1]=t[9],e[2][2]=t[10]}function so(e,t,n,r,i){e[0]=t[0]*r+n[0]*i,e[1]=t[1]*r+n[1]*i,e[2]=t[2]*r+n[2]*i}var co=function(e){return e[e.ORBITING=0]=`ORBITING`,e[e.EXPLORING=1]=`EXPLORING`,e[e.TRACKING=2]=`TRACKING`,e}({}),lo=function(e){return e[e.DEFAULT=0]=`DEFAULT`,e[e.ROTATIONAL=1]=`ROTATIONAL`,e[e.TRANSLATIONAL=2]=`TRANSLATIONAL`,e[e.CINEMATIC=3]=`CINEMATIC`,e}({}),uo=function(e){return e[e.ORTHOGRAPHIC=0]=`ORTHOGRAPHIC`,e[e.PERSPECTIVE=1]=`PERSPECTIVE`,e}({}),fo={UPDATED:`updated`},po=2e-4,mo=function(){function e(){b(this,e),this.clipSpaceNearZ=Sa.NEGATIVE_ONE,this.eventEmitter=new te,this.matrix=P(),this.right=rt(1,0,0),this.up=rt(0,1,0),this.forward=rt(0,0,1),this.position=rt(0,0,1),this.focalPoint=rt(0,0,0),this.distanceVector=rt(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=P(),this.projectionMatrixInverse=P(),this.jitteredProjectionMatrix=void 0,this.enableUpdate=!0,this.type=co.EXPLORING,this.trackingMode=lo.DEFAULT,this.projectionMode=uo.PERSPECTIVE,this.frustum=new Na,this.orthoMatrix=P()}return S(e,[{key:`isOrtho`,value:function(){return this.projectionMode===uo.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,t){return this.type=e,this.type===co.EXPLORING?this.setWorldRotation(!0):this.setWorldRotation(!1),this._getAngles(),this.type===co.TRACKING&&t!==void 0&&this.setTrackingMode(t),this}},{key:`setProjectionMode`,value:function(e){return this.projectionMode=e,this}},{key:`setTrackingMode`,value:function(e){if(this.type!==co.TRACKING)throw 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 ue(P(),this.matrix)}},{key:`getWorldTransform`,value:function(){return this.matrix}},{key:`jitterProjectionMatrix`,value:function(e,t){var n=ye(P(),[e,t,0]);this.jitteredProjectionMatrix=pe(P(),n,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===uo.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===uo.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,t,n,r,i,a){return this.aspect=e/t,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=t,this.view.offsetX=n,this.view.offsetY=r,this.view.width=i,this.view.height=a,this.projectionMode===uo.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===uo.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===uo.ORTHOGRAPHIC?this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far):this.projectionMode===uo.PERSPECTIVE&&this.setPerspective(this.near,this.far,this.fov,this.aspect),this}},{key:`setZoomByViewportPoint`,value:function(e,t){var n=this.canvas.viewport2Canvas({x:t[0],y:t[1]}),r=n.x,i=n.y,a=this.roll;this.rotate(0,0,-a),this.setPosition(r,i),this.setFocalPoint(r,i),this.setZoom(e),this.rotate(0,0,a);var o=this.canvas.viewport2Canvas({x:t[0],y:t[1]}),s=o.x,c=o.y,l=rt(s-r,c-i,0),u=mt(l,this.right)/nt(this.right),d=mt(l,this.up)/nt(this.up),f=m(this.getPosition(),2),p=f[0],h=f[1],g=m(this.getFocalPoint(),2),_=g[0],v=g[1];return this.setPosition(p-u,h-d),this.setFocalPoint(_-u,v-d),this}},{key:`setPerspective`,value:function(e,t,n,r){var i;this.projectionMode=uo.PERSPECTIVE,this.fov=n,this.near=e,this.far=t,this.aspect=r;var a=this.near*Math.tan(Ua(.5*this.fov))/this.zoom,o=2*a,s=this.aspect*o,c=-.5*s;if((i=this.view)!=null&&i.enabled){var l=this.view.fullWidth,u=this.view.fullHeight;c+=this.view.offsetX*s/l,a-=this.view.offsetY*o/u,s*=this.view.width/l,o*=this.view.height/u}return Qa(this.projectionMatrix,c,c+s,a-o,a,e,this.far,this.clipSpaceNearZ===Sa.ZERO),ue(this.projectionMatrixInverse,this.projectionMatrix),this.triggerUpdate(),this}},{key:`setOrthographic`,value:function(e,t,n,r,i,a){var o;this.projectionMode=uo.ORTHOGRAPHIC,this.rright=t,this.left=e,this.top=n,this.bottom=r,this.near=i,this.far=a;var s=(this.rright-this.left)/(2*this.zoom),c=(this.top-this.bottom)/(2*this.zoom),l=(this.rright+this.left)/2,u=(this.top+this.bottom)/2,d=l-s,f=l+s,p=u+c,m=u-c;if((o=this.view)!=null&&o.enabled){var h=(this.rright-this.left)/this.view.fullWidth/this.zoom,g=(this.top-this.bottom)/this.view.fullHeight/this.zoom;d+=h*this.view.offsetX,f=d+h*this.view.width,p-=g*this.view.offsetY,m=p-g*this.view.height}return this.clipSpaceNearZ===Sa.NEGATIVE_ONE?Be(this.projectionMatrix,d,f,p,m,i,a):Ve(this.projectionMatrix,d,f,p,m,i,a),ue(this.projectionMatrixInverse,this.projectionMatrix),this._getOrthoMatrix(),this.triggerUpdate(),this}},{key:`setPosition`,value:function(e){var t=Va(e,arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.position[1],arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.position[2]);return this._setPosition(t),this.setFocalPoint(this.focalPoint),this.triggerUpdate(),this}},{key:`setFocalPoint`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.focalPoint[1],n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.focalPoint[2],r=rt(0,1,0);if(this.focalPoint=Va(e,t,n),this.trackingMode===lo.CINEMATIC){var i=st(et(),this.focalPoint,this.position);e=i[0],t=i[1],n=i[2];var a=nt(i),o=Ga(Math.asin(t/a)),s=90+Ga(Math.atan2(n,e)),c=P();_e(c,c,Ua(s)),ge(c,c,Ua(o)),r=_t(et(),[0,1,0],c)}return ue(this.matrix,He(P(),this.position,this.focalPoint,r)),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<po&&(this.distance=po),this.dollyingStep=this.distance/100;var t=et();e=this.distance;var n=this.forward,r=this.focalPoint;return t[0]=e*n[0]+r[0],t[1]=e*n[1]+r[1],t[2]=e*n[2]+r[2],this._setPosition(t),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=za(e),this.computeMatrix(),this._getAxes(),this.type===co.ORBITING||this.type===co.EXPLORING?this._getPosition():this.type===co.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:`getAzimuth`,value:function(){return this.azimuth}},{key:`setElevation`,value:function(e){return this.elevation=za(e),this.computeMatrix(),this._getAxes(),this.type===co.ORBITING||this.type===co.EXPLORING?this._getPosition():this.type===co.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:`getElevation`,value:function(){return this.elevation}},{key:`setRoll`,value:function(e){return this.roll=za(e),this.computeMatrix(),this._getAxes(),this.type===co.ORBITING||this.type===co.EXPLORING?this._getPosition():this.type===co.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=jt(At(),[0,0,1],Ua(this.roll));ce(this.matrix);var t=jt(At(),[1,0,0],Ua((this.rotateWorld&&this.type!==co.TRACKING||this.type===co.TRACKING?1:-1)*this.elevation)),n=jt(At(),[0,1,0],Ua((this.rotateWorld&&this.type!==co.TRACKING||this.type===co.TRACKING?1:-1)*this.azimuth)),r=Mt(At(),n,t);r=Mt(At(),r,e);var i=Ne(P(),r);this.type===co.ORBITING||this.type===co.EXPLORING?(me(this.matrix,this.matrix,this.focalPoint),pe(this.matrix,this.matrix,i),me(this.matrix,this.matrix,[0,0,this.distance])):this.type===co.TRACKING&&(me(this.matrix,this.matrix,this.position),pe(this.matrix,this.matrix,i))}},{key:`_setPosition`,value:function(e,t,n){this.position=Va(e,t,n);var r=this.matrix;r[12]=this.position[0],r[13]=this.position[1],r[14]=this.position[2],r[15]=1,this._getOrthoMatrix()}},{key:`_getAxes`,value:function(){it(this.right,Va(kt(wt(),[1,0,0,0],this.matrix))),it(this.up,Va(kt(wt(),[0,1,0,0],this.matrix))),it(this.forward,Va(kt(wt(),[0,0,1,0],this.matrix))),pt(this.right,this.right),pt(this.up,this.up),pt(this.forward,this.forward)}},{key:`_getAngles`,value:function(){var e=this.distanceVector[0],t=this.distanceVector[1],n=this.distanceVector[2],r=nt(this.distanceVector);if(r===0){this.elevation=0,this.azimuth=0;return}this.type===co.TRACKING||this.rotateWorld?(this.elevation=Ga(Math.asin(t/r)),this.azimuth=Ga(Math.atan2(-e,-n))):(this.elevation=-Ga(Math.asin(t/r)),this.azimuth=-Ga(Math.atan2(-e,-n)))}},{key:`_getPosition`,value:function(){it(this.position,Va(kt(wt(),[0,0,0,1],this.matrix))),this._getDistance()}},{key:`_getFocalPoint`,value:function(){vt(this.distanceVector,[0,0,-this.distance],re(ne(),this.matrix)),ot(this.focalPoint,this.position,this.distanceVector),this._getDistance()}},{key:`_getDistance`,value:function(){this.distanceVector=st(et(),this.focalPoint,this.position),this.distance=nt(this.distanceVector),this.dollyingStep=this.distance/100}},{key:`_getOrthoMatrix`,value:function(){if(this.projectionMode===uo.ORTHOGRAPHIC){var e=this.position,t=jt(At(),[0,0,1],-this.roll*Math.PI/180);Me(this.orthoMatrix,t,rt((this.rright-this.left)/2-e[0],(this.top-this.bottom)/2-e[1],0),rt(this.zoom,this.zoom,1),e)}}},{key:`triggerUpdate`,value:function(){if(this.enableUpdate){var e=this.getViewTransform(),t=pe(P(),this.getPerspective(),e);this.getFrustum().extractFromVPMatrix(t),this.eventEmitter.emit(fo.UPDATED)}}},{key:`rotate`,value:function(e,t,n){throw Error(Ia)}},{key:`pan`,value:function(e,t){throw Error(Ia)}},{key:`dolly`,value:function(e){throw Error(Ia)}},{key:`createLandmark`,value:function(e,t){throw Error(Ia)}},{key:`gotoLandmark`,value:function(e,t){throw Error(Ia)}},{key:`cancelLandmarkAnimation`,value:function(){throw Error(Ia)}}])}(),ho=function(e){return e[e.Standard=0]=`Standard`,e}({}),go=function(e){return e[e.ADDED=0]=`ADDED`,e[e.REMOVED=1]=`REMOVED`,e[e.Z_INDEX_CHANGED=2]=`Z_INDEX_CHANGED`,e}({}),_o=et(),vo=P(),yo=At();function bo(e){if(e.localDirtyFlag){if(e.localSkew[0]!==0||e.localSkew[1]!==0){Me(e.localTransform,e.localRotation,e.localPosition,rt(1,1,1),e.origin),(e.localSkew[0]!==0||e.localSkew[1]!==0)&&(ce(vo),vo[4]=Math.tan(e.localSkew[0]),vo[1]=Math.tan(e.localSkew[1]),pe(e.localTransform,e.localTransform,vo));var t=Me(vo,zt(yo,0,0,0,1),at(_o,1,1,1),e.localScale,e.origin);pe(e.localTransform,e.localTransform,t)}else{var n=e.localTransform,r=e.localPosition,i=e.localRotation,a=e.localScale,o=e.origin,s=r[0]!==0||r[1]!==0||r[2]!==0,c=i[3]!==1||i[0]!==0||i[1]!==0||i[2]!==0,l=a[0]!==1||a[1]!==1||a[2]!==1,u=o[0]!==0||o[1]!==0||o[2]!==0;!c&&!l&&!u?s?ye(n,r):ce(n):Me(n,i,r,a,o)}e.localDirtyFlag=!1}}function xo(e,t){e.dirtyFlag&&=(t?pe(e.worldTransform,t.worldTransform,e.localTransform):F(e.worldTransform,e.localTransform),!1)}var So={absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new Fa(0,0,0,0)},K=function(e){return e.COORDINATE=`<coordinate>`,e.COLOR=`<color>`,e.PAINT=`<paint>`,e.NUMBER=`<number>`,e.ANGLE=`<angle>`,e.OPACITY_VALUE=`<opacity-value>`,e.SHADOW_BLUR=`<shadow-blur>`,e.LENGTH=`<length>`,e.PERCENTAGE=`<percentage>`,e.LENGTH_PERCENTAGE=`<length> | <percentage>`,e.LENGTH_PERCENTAGE_12=`[<length> | <percentage>]{1,2}`,e.LENGTH_PERCENTAGE_14=`[<length> | <percentage>]{1,4}`,e.LIST_OF_POINTS=`<list-of-points>`,e.PATH=`<path>`,e.FILTER=`<filter>`,e.Z_INDEX=`<z-index>`,e.OFFSET_DISTANCE=`<offset-distance>`,e.DEFINED_PATH=`<defined-path>`,e.MARKER=`<marker>`,e.TRANSFORM=`<transform>`,e.TRANSFORM_ORIGIN=`<transform-origin>`,e.TEXT=`<text>`,e.TEXT_TRANSFORM=`<text-transform>`,e}({});function Co(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function wo(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function To(){}var Eo=.7,Do=1/Eo,Oo=`\\s*([+-]?\\d+)\\s*`,ko=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,Ao=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,jo=/^#([0-9a-f]{3,8})$/,Mo=RegExp(`^rgb\\(${Oo},${Oo},${Oo}\\)$`),No=RegExp(`^rgb\\(${Ao},${Ao},${Ao}\\)$`),Po=RegExp(`^rgba\\(${Oo},${Oo},${Oo},${ko}\\)$`),Fo=RegExp(`^rgba\\(${Ao},${Ao},${Ao},${ko}\\)$`),Io=RegExp(`^hsl\\(${ko},${Ao},${Ao}\\)$`),Lo=RegExp(`^hsla\\(${ko},${Ao},${Ao},${ko}\\)$`),Ro={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};Co(To,Uo,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:zo,formatHex:zo,formatHex8:Bo,formatHsl:Vo,formatRgb:Ho,toString:Ho});function zo(){return this.rgb().formatHex()}function Bo(){return this.rgb().formatHex8()}function Vo(){return ns(this).formatHsl()}function Ho(){return this.rgb().formatRgb()}function Uo(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=jo.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?Wo(t):n===3?new Jo(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Go(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Go(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=Mo.exec(e))?new Jo(t[1],t[2],t[3],1):(t=No.exec(e))?new Jo(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Po.exec(e))?Go(t[1],t[2],t[3],t[4]):(t=Fo.exec(e))?Go(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Io.exec(e))?ts(t[1],t[2]/100,t[3]/100,1):(t=Lo.exec(e))?ts(t[1],t[2]/100,t[3]/100,t[4]):Ro.hasOwnProperty(e)?Wo(Ro[e]):e===`transparent`?new Jo(NaN,NaN,NaN,0):null}function Wo(e){return new Jo(e>>16&255,e>>8&255,e&255,1)}function Go(e,t,n,r){return r<=0&&(e=t=n=NaN),new Jo(e,t,n,r)}function Ko(e){return e instanceof To||(e=Uo(e)),e?(e=e.rgb(),new Jo(e.r,e.g,e.b,e.opacity)):new Jo}function qo(e,t,n,r){return arguments.length===1?Ko(e):new Jo(e,t,n,r??1)}function Jo(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Co(Jo,qo,wo(To,{brighter(e){return e=e==null?Do:Do**+e,new Jo(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Eo:Eo**+e,new Jo(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Jo($o(this.r),$o(this.g),$o(this.b),Qo(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:Yo,formatHex:Yo,formatHex8:Xo,formatRgb:Zo,toString:Zo}));function Yo(){return`#${es(this.r)}${es(this.g)}${es(this.b)}`}function Xo(){return`#${es(this.r)}${es(this.g)}${es(this.b)}${es((isNaN(this.opacity)?1:this.opacity)*255)}`}function Zo(){let e=Qo(this.opacity);return`${e===1?`rgb(`:`rgba(`}${$o(this.r)}, ${$o(this.g)}, ${$o(this.b)}${e===1?`)`:`, ${e})`}`}function Qo(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function $o(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function es(e){return e=$o(e),(e<16?`0`:``)+e.toString(16)}function ts(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new is(e,t,n,r)}function ns(e){if(e instanceof is)return new is(e.h,e.s,e.l,e.opacity);if(e instanceof To||(e=Uo(e)),!e)return new is;if(e instanceof is)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new is(o,s,c,e.opacity)}function rs(e,t,n,r){return arguments.length===1?ns(e):new is(e,t,n,r??1)}function is(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Co(is,rs,wo(To,{brighter(e){return e=e==null?Do:Do**+e,new is(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Eo:Eo**+e,new is(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new Jo(ss(e>=240?e-240:e+120,i,r),ss(e,i,r),ss(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new is(as(this.h),os(this.s),os(this.l),Qo(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(){let e=Qo(this.opacity);return`${e===1?`hsl(`:`hsla(`}${as(this.h)}, ${os(this.s)*100}%, ${os(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function as(e){return e=(e||0)%360,e<0?e+360:e}function os(e){return Math.max(0,Math.min(1,e||0))}function ss(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}function cs(e,t){if(typeof e!=`function`||t!=null&&typeof t!=`function`)throw TypeError(`Expected a function`);var n=function(){var r=[...arguments],i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(cs.Cache||Map),cs.cacheList.push(n.cache),n}cs.Cache=Map,cs.cacheList=[],cs.clearCache=function(){cs.cacheList.forEach(function(e){return e.clear()})};var q=function(e){return e[e.kUnknown=0]=`kUnknown`,e[e.kNumber=1]=`kNumber`,e[e.kPercentage=2]=`kPercentage`,e[e.kEms=3]=`kEms`,e[e.kPixels=4]=`kPixels`,e[e.kRems=5]=`kRems`,e[e.kDegrees=6]=`kDegrees`,e[e.kRadians=7]=`kRadians`,e[e.kGradians=8]=`kGradians`,e[e.kTurns=9]=`kTurns`,e[e.kMilliseconds=10]=`kMilliseconds`,e[e.kSeconds=11]=`kSeconds`,e[e.kInteger=12]=`kInteger`,e}({}),ls=function(e){return e[e.kUNumber=0]=`kUNumber`,e[e.kUPercent=1]=`kUPercent`,e[e.kULength=2]=`kULength`,e[e.kUAngle=3]=`kUAngle`,e[e.kUTime=4]=`kUTime`,e[e.kUOther=5]=`kUOther`,e}({}),us=function(e){return e[e.kYes=0]=`kYes`,e[e.kNo=1]=`kNo`,e}({}),ds=function(e){return e[e.kYes=0]=`kYes`,e[e.kNo=1]=`kNo`,e}({}),fs=[{name:`em`,unit_type:q.kEms},{name:`px`,unit_type:q.kPixels},{name:`deg`,unit_type:q.kDegrees},{name:`rad`,unit_type:q.kRadians},{name:`grad`,unit_type:q.kGradians},{name:`ms`,unit_type:q.kMilliseconds},{name:`s`,unit_type:q.kSeconds},{name:`rem`,unit_type:q.kRems},{name:`turn`,unit_type:q.kTurns}],ps=function(e){return e[e.kUnknownType=0]=`kUnknownType`,e[e.kUnparsedType=1]=`kUnparsedType`,e[e.kKeywordType=2]=`kKeywordType`,e[e.kUnitType=3]=`kUnitType`,e[e.kSumType=4]=`kSumType`,e[e.kProductType=5]=`kProductType`,e[e.kNegateType=6]=`kNegateType`,e[e.kInvertType=7]=`kInvertType`,e[e.kMinType=8]=`kMinType`,e[e.kMaxType=9]=`kMaxType`,e[e.kClampType=10]=`kClampType`,e[e.kTransformType=11]=`kTransformType`,e[e.kPositionType=12]=`kPositionType`,e[e.kURLImageType=13]=`kURLImageType`,e[e.kColorType=14]=`kColorType`,e[e.kUnsupportedColorType=15]=`kUnsupportedColorType`,e}({}),ms=function(e){return fs.find(function(t){return t.name===e}).unit_type},hs=function(e){return e?e===`number`?q.kNumber:e===`percent`||e===`%`?q.kPercentage:ms(e):q.kUnknown},gs=function(e){switch(e){case q.kNumber:case q.kInteger:return ls.kUNumber;case q.kPercentage:return ls.kUPercent;case q.kPixels:return ls.kULength;case q.kMilliseconds:case q.kSeconds:return ls.kUTime;case q.kDegrees:case q.kRadians:case q.kGradians:case q.kTurns:return ls.kUAngle;default:return ls.kUOther}},_s=function(e){switch(e){case ls.kUNumber:return q.kNumber;case ls.kULength:return q.kPixels;case ls.kUPercent:return q.kPercentage;case ls.kUTime:return q.kSeconds;case ls.kUAngle:return q.kDegrees;default:return q.kUnknown}},vs=function(e){var t=1;switch(e){case q.kPixels:case q.kDegrees:case q.kSeconds:break;case q.kMilliseconds:t=.001;break;case q.kRadians:t=180/Math.PI;break;case q.kGradians:t=.9;break;case q.kTurns:t=360;break}return t},ys=function(e){switch(e){case q.kNumber:case q.kInteger:return``;case q.kPercentage:return`%`;case q.kEms:return`em`;case q.kRems:return`rem`;case q.kPixels:return`px`;case q.kDegrees:return`deg`;case q.kRadians:return`rad`;case q.kGradians:return`grad`;case q.kMilliseconds:return`ms`;case q.kSeconds:return`s`;case q.kTurns:return`turn`}return``},bs=function(){function e(){b(this,e)}return S(e,[{key:`toString`,value:function(){return this.buildCSSText(us.kNo,ds.kNo,``)}},{key:`isNumericValue`,value:function(){return this.getType()>=ps.kUnitType&&this.getType()<=ps.kClampType}}],[{key:`isAngle`,value:function(e){return e===q.kDegrees||e===q.kRadians||e===q.kGradians||e===q.kTurns}},{key:`isLength`,value:function(e){return e>=q.kEms&&e<q.kDegrees}},{key:`isRelativeUnit`,value:function(e){return e===q.kPercentage||e===q.kEms||e===q.kRems}},{key:`isTime`,value:function(e){return e===q.kSeconds||e===q.kMilliseconds}}])}(),xs=function(e){function t(e){var n;return b(this,t),n=k(this,t),n.colorSpace=e,n}return T(t,e),S(t,[{key:`getType`,value:function(){return ps.kColorType}},{key:`to`,value:function(e){return this}}])}(bs),Ss=function(e){return e[e.Constant=0]=`Constant`,e[e.LinearGradient=1]=`LinearGradient`,e[e.RadialGradient=2]=`RadialGradient`,e}({}),Cs=function(e){function t(e,n){var r;return b(this,t),r=k(this,t),r.type=e,r.value=n,r}return T(t,e),S(t,[{key:`clone`,value:function(){return new t(this.type,this.value)}},{key:`buildCSSText`,value:function(e,t,n){return n}},{key:`getType`,value:function(){return ps.kColorType}}])}(bs),ws=function(e){function t(e){var n;return b(this,t),n=k(this,t),n.value=e,n}return T(t,e),S(t,[{key:`clone`,value:function(){return new t(this.value)}},{key:`getType`,value:function(){return ps.kKeywordType}},{key:`buildCSSText`,value:function(e,t,n){return n+this.value}}])}(bs),Ts=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:``,n=``;return n=Number.isFinite(e)?`NaN`:e>0?`infinity`:`-infinity`,n+=t},Es=function(e){return _s(gs(e))},Ds=function(e){function t(e){var n,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:q.kNumber;b(this,t),n=k(this,t);var i=typeof r==`string`?hs(r):r;return n.unit=i,n.value=e,n}return T(t,e),S(t,[{key:`clone`,value:function(){return new t(this.value,this.unit)}},{key:`equals`,value:function(e){var t=e;return this.value===t.value&&this.unit===t.unit}},{key:`getType`,value:function(){return ps.kUnitType}},{key:`convertTo`,value:function(e){if(this.unit===e)return new t(this.value,this.unit);var n=Es(this.unit);if(n!==Es(e)||n===q.kUnknown)return null;var r=vs(this.unit)/vs(e);return new t(this.value*r,e)}},{key:`buildCSSText`,value:function(e,t,n){var r;switch(this.unit){case q.kUnknown:break;case q.kInteger:r=Number(this.value).toFixed(0);break;case q.kNumber:case q.kPercentage:case q.kEms:case q.kRems:case q.kPixels:case q.kDegrees:case q.kRadians:case q.kGradians:case q.kMilliseconds:case q.kSeconds:case q.kTurns:var i=-999999,a=999999,o=this.value,s=ys(this.unit);if(o<i||o>a){var c=ys(this.unit);r=!Number.isFinite(o)||Number.isNaN(o)?Ts(o,c):o+(c||``)}else r=`${o}${s}`}return n+=r,n}}])}(bs),Os=new Ds(0,`px`);new Ds(1,`px`);var ks=new Ds(0,`deg`),As=function(e){function t(e,n,r){var i,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;return b(this,t),i=k(this,t,[`rgb`]),i.r=e,i.g=n,i.b=r,i.alpha=a,i.isNone=o,i}return T(t,e),S(t,[{key:`clone`,value:function(){return new t(this.r,this.g,this.b,this.alpha)}},{key:`buildCSSText`,value:function(e,t,n){return`${n}rgba(${this.r},${this.g},${this.b},${this.alpha})`}}])}(xs),js=new ws(`unset`),Ms={"":js,unset:js,initial:new ws(`initial`),inherit:new ws(`inherit`)},Ns=function(e){return Ms[e]||(Ms[e]=new ws(e)),Ms[e]},Ps=new As(0,0,0,0,!0),Fs=new As(0,0,0,0),Is=cs(function(e,t,n,r){return new As(e,t,n,r)},function(e,t,n,r){return`rgba(${e},${t},${n},${r})`}),Ls=function(e){return new Ds(e,arguments.length>1&&arguments[1]!==void 0?arguments[1]:q.kNumber)};new Ds(50,`%`);function Rs(e){var t=e.type,n=e.value;return t===`hex`?`#${n}`:t===`literal`?n:t===`rgb`?`rgb(${n.join(`,`)})`:`rgba(${n.join(`,`)})`}var zs=function(){var e={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 n(e){throw Error(`${t}: ${e}`)}function r(){var e=i();return t.length>0&&n(`Invalid input not EOF`),e}function i(){return y(a)}function a(){return o(`linear-gradient`,e.linearGradient,c)||o(`repeating-linear-gradient`,e.repeatingLinearGradient,c)||o(`radial-gradient`,e.radialGradient,d)||o(`repeating-radial-gradient`,e.repeatingRadialGradient,d)||o(`conic-gradient`,e.conicGradient,d)}function o(t,r,i){return s(r,function(r){var a=i();return a&&(j(e.comma)||n(`Missing comma before color stops`)),{type:t,orientation:a,colorStops:y(b)}})}function s(t,r){var i=j(t);if(i){j(e.startCall)||n(`Missing (`);var a=r(i);return j(e.endCall)||n(`Missing )`),a}}function c(){return l()||u()}function l(){return A(`directional`,e.sideOrCorner,1)}function u(){return A(`angular`,e.angleValue,1)}function d(){var n,r=f(),i;return r&&(n=[],n.push(r),i=t,j(e.comma)&&(r=f(),r?n.push(r):t=i)),n}function f(){var e=p()||m();if(e)e.at=g();else{var t=h();if(t){e=t;var n=g();n&&(e.at=n)}else{var r=_();r&&(e={type:`default-radial`,at:r})}}return e}function p(){var e=A(`shape`,/^(circle)/i,0);return e&&(e.style=k()||h()),e}function m(){var e=A(`shape`,/^(ellipse)/i,0);return e&&(e.style=D()||h()),e}function h(){return A(`extent-keyword`,e.extentKeywords,1)}function g(){if(A(`position`,/^at/,0)){var e=_();return e||n(`Missing positioning value`),e}}function _(){var e=v();if(e.x||e.y)return{type:`position`,value:e}}function v(){return{x:D(),y:D()}}function y(t){var r=t(),i=[];if(r)for(i.push(r);j(e.comma);)r=t(),r?i.push(r):n(`One extra comma`);return i}function b(){var e=x();return e||n(`Expected color definition`),e.length=D(),e}function x(){return C()||T()||w()||S()}function S(){return A(`literal`,e.literalColor,0)}function C(){return A(`hex`,e.hexColor,1)}function w(){return s(e.rgbColor,function(){return{type:`rgb`,value:y(E)}})}function T(){return s(e.rgbaColor,function(){return{type:`rgba`,value:y(E)}})}function E(){return j(e.number)[1]}function D(){return A(`%`,e.percentageValue,1)||O()||k()}function O(){return A(`position-keyword`,e.positionKeywords,1)}function k(){return A(`px`,e.pixelValue,1)||A(`em`,e.emValue,1)}function A(e,t,n){var r=j(t);if(r)return{type:e,value:r[n]}}function j(e){var n=/^[\n\r\t\s]+/.exec(t);n&&ee(n[0].length);var r=e.exec(t);return r&&ee(r[0].length),r}function ee(e){t=t.substring(e)}return function(e){return t=e,r()}}();function Bs(e,t,n,r){var i=Ua(r.value),a=0,o=0,s=a+t/2,c=o+n/2,l=Math.abs(t*Math.cos(i))+Math.abs(n*Math.sin(i));return{x1:e[0]+s-Math.cos(i)*l/2,y1:e[1]+c-Math.sin(i)*l/2,x2:e[0]+s+Math.cos(i)*l/2,y2:e[1]+c+Math.sin(i)*l/2}}function Vs(e,t,n,r,i,a){var o=r.value,s=i.value;r.unit===q.kPercentage&&(o=r.value/100*t),i.unit===q.kPercentage&&(s=i.value/100*n);var c=Math.max(gi([0,0],[o,s]),gi([0,n],[o,s]),gi([t,n],[o,s]),gi([t,0],[o,s]));return a&&(a instanceof Ds?c=a.value:a instanceof ws&&(a.value===`closest-side`?c=Math.min(o,t-o,s,n-s):a.value===`farthest-side`?c=Math.max(o,t-o,s,n-s):a.value===`closest-corner`&&(c=Math.min(gi([0,0],[o,s]),gi([0,n],[o,s]),gi([t,n],[o,s]),gi([t,0],[o,s]))))),{x:o+e[0],y:s+e[1],r:c}}var Hs=/^l\s*\(\s*([\d.]+)\s*\)\s*(.*)/i,Us=/^r\s*\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)\s*(.*)/i,Ws=/^p\s*\(\s*([axyn])\s*\)\s*(.*)/i,Gs=/[\d.]+:(#[^\s]+|[^\)]+\))/gi;function Ks(e){var t=e.length;e[t-1].length=e[t-1].length??{type:`%`,value:`100`},t>1&&(e[0].length=e[0].length??{type:`%`,value:`0`});for(var n=0,r=Number(e[0].length.value),i=1;i<t;i++){var a=e[i].length?.value;if(!R(a)&&!R(r)){for(var o=1;o<i-n;o++)e[n+o].length={type:`%`,value:`${r+(Number(a)-r)*o/(i-n)}`};n=i,r=Number(a)}}}var qs={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},Js=cs(function(e){return Ls(e.type===`angular`?Number(e.value):qs[e.value]||0,`deg`)}),Ys=cs(function(e){var t=50,n=50,r=`%`,i=`%`;if(e?.type===`position`){var a=e.value,o=a.x,s=a.y;o?.type===`position-keyword`&&(o.value===`left`?t=0:o.value===`center`?t=50:o.value===`right`?t=100:o.value===`top`?n=0:o.value===`bottom`&&(n=100)),s?.type===`position-keyword`&&(s.value===`left`?t=0:s.value===`center`?n=50:s.value===`right`?t=100:s.value===`top`?n=0:s.value===`bottom`&&(n=100)),(o?.type===`px`||o?.type===`%`||o?.type===`em`)&&(r=o?.type,t=Number(o.value)),(s?.type===`px`||s?.type===`%`||s?.type===`em`)&&(i=s?.type,n=Number(s.value))}return{cx:Ls(t,r),cy:Ls(n,i)}}),Xs=cs(function(e){if(e.indexOf(`linear`)>-1||e.indexOf(`radial`)>-1)return zs(e).map(function(e){var t=e.type,n=e.orientation,r=e.colorStops;Ks(r);var i=r.map(function(e){return{offset:Ls(Number(e.length.value),`%`),color:Rs(e)}});if(t===`linear-gradient`)return new Cs(Ss.LinearGradient,{angle:n?Js(n):ks,steps:i});if(t===`radial-gradient`&&(n||=[{type:`shape`,value:`circle`}],n[0].type===`shape`&&n[0].value===`circle`)){var a=Ys(n[0].at),o=a.cx,s=a.cy,c;if(n[0].style){var l=n[0].style,u=l.type,d=l.value;c=u===`extent-keyword`?Ns(d):Ls(d,u)}return new Cs(Ss.RadialGradient,{cx:o,cy:s,size:c,steps:i})}});var t=e[0];if(e[1]===`(`||e[2]===`(`){if(t===`l`){var n=Hs.exec(e);if(n){var r=n[2].match(Gs)?.map(function(e){return e.split(`:`)})||[];return[new Cs(Ss.LinearGradient,{angle:Ls(parseFloat(n[1]),`deg`),steps:r.map(function(e){var t=m(e,2),n=t[0],r=t[1];return{offset:Ls(Number(n)*100,`%`),color:r}})})]}}else if(t===`r`){var i=Zs(e);if(i)if(un(i))e=i;else return[new Cs(Ss.RadialGradient,i)]}else if(t===`p`)return Qs(e)}});function Zs(e){var t=Us.exec(e);if(t){var n=t[4].match(Gs)?.map(function(e){return e.split(`:`)})||[];return{cx:Ls(50,`%`),cy:Ls(50,`%`),steps:n.map(function(e){var t=m(e,2),n=t[0],r=t[1];return{offset:Ls(Number(n)*100,`%`),color:r}})}}return null}function Qs(e){var t=Ws.exec(e);if(t){var n=t[1],r=t[2];switch(n){case`a`:n=`repeat`;break;case`x`:n=`repeat-x`;break;case`y`:n=`repeat-y`;break;case`n`:n=`no-repeat`;break;default:n=`no-repeat`}return{image:r,repetition:n}}return null}function $s(e){return e&&!!e.image}function ec(e){return e&&!R(e.r)&&!R(e.g)&&!R(e.b)}var tc=cs(function(e){if($s(e))return y({repetition:`repeat`},e);if(R(e)&&(e=``),e===`transparent`)return Fs;if(e===`currentColor`)e=`black`;else if(e===`none`)return Ps;var t=Xs(e);if(t)return t;var n=Uo(e),r=[0,0,0,0];return n!==null&&(r[0]=n.r||0,r[1]=n.g||0,r[2]=n.b||0,r[3]=n.opacity),Is.apply(void 0,r)});function nc(e,t){if(!(!ec(e)||!ec(t)))return[[Number(e.r),Number(e.g),Number(e.b),Number(e.alpha)],[Number(t.r),Number(t.g),Number(t.b),Number(t.alpha)],function(e){var t=e.slice();if(t[3])for(var n=0;n<3;n++)t[n]=Math.round(mn(t[n],0,255));return t[3]=mn(t[3],0,1),`rgba(${t.join(`,`)})`}]}function rc(e,t){if(R(t))return Ls(0,`px`);if(t=`${t}`.trim().toLowerCase(),isFinite(Number(t))){if(`px`.search(e)>=0)return Ls(Number(t),`px`);if(`deg`.search(e)>=0)return Ls(Number(t),`deg`)}var n=[];t=t.replace(e,function(e){return n.push(e),`U${e}`});var r=`U(${e.source})`;return n.map(function(e){return Ls(Number(t.replace(RegExp(`U${e}`,`g`),``).replace(new RegExp(r,`g`),`*0`)),e)})[0]}var ic=function(e){return rc(RegExp(`px`,`g`),e)},ac=cs(ic);cs(function(e){return rc(RegExp(`%`,`g`),e)});var oc=function(e){return hn(e)||isFinite(Number(e))?Ls(Number(e)||0,`px`):rc(RegExp(`px|%|em|rem`,`g`),e)},sc=cs(oc),cc=function(e){return rc(RegExp(`deg|rad|grad|turn`,`g`),e)},lc=cs(cc);function uc(e,t,n,r){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,a=``,o=e.value||0,s=t.value||0,c=Es(e.unit),l=e.convertTo(c),u=t.convertTo(c);return l&&u?(o=l.value,s=u.value,a=ys(e.unit)):(Ds.isLength(e.unit)||Ds.isLength(t.unit))&&(o=pc(e,i,n),s=pc(t,i,n),a=`px`),[o,s,function(e){return r&&(e=Math.max(e,0)),e+a}]}function dc(e){var t=0;return e.unit===q.kDegrees?t=e.value:e.unit===q.kRadians?t=Ga(Number(e.value)):e.unit===q.kTurns?t=Ka(Number(e.value)):e.value&&(t=e.value),t}function fc(e,t){var n;return Array.isArray(e)?n=e.map(function(e){return Number(e)}):un(e)?n=e.split(` `).map(function(e){return Number(e)}):hn(e)&&(n=[e]),t===2?n.length===1?[n[0],n[0]]:[n[0],n[1]]:t===4?n.length===1?[n[0],n[0],n[0],n[0]]:n.length===2?[n[0],n[1],n[0],n[1]]:n.length===3?[n[0],n[1],n[2],n[1]]:[n[0],n[1],n[2],n[3]]:t===`even`&&n.length%2==1?[].concat(l(n),l(n)):n}function pc(e,t,n){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e.unit===q.kPixels)return Number(e.value);if(e.unit===q.kPercentage&&n){var i=n.nodeName===U.GROUP?n.getLocalBounds():n.getGeometryBounds();return(r?i.min[t]:0)+e.value/100*i.halfExtents[t]*2}return 0}var mc=function(e){return rc(/deg|rad|grad|turn|px|%/g,e)},hc=[`blur`,`brightness`,`drop-shadow`,`contrast`,`grayscale`,`sepia`,`saturate`,`hue-rotate`,`invert`];function gc(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:``;if(e=e.toLowerCase().trim(),e===`none`)return[];for(var t=/\s*([\w-]+)\(([^)]*)\)/g,n=[],r,i=0;r=t.exec(e);){if(r.index!==i)return[];if(i=r.index+r[0].length,hc.indexOf(r[1])>-1&&n.push({name:r[1],params:r[2].split(` `).map(function(e){return mc(e)||tc(e)})}),t.lastIndex===e.length)return n}return[]}function _c(e){return e.toString()}var vc=function(e){return typeof e==`number`?Ls(e):/^\s*[-+]?(\d*\.)?\d+\s*$/.test(e)?Ls(Number(e)):Ls(0)},yc=cs(vc);cs(function(e){return un(e)?e.split(` `).map(yc):e.map(yc)});function bc(e,t){return[e,t,_c]}function xc(e,t){return function(n,r){return[n,r,function(n){return _c(mn(n,e,t))}]}}function Sc(e,t){if(e.length===t.length)return[e,t,function(e){return e}]}function Cc(e){return e.parsedStyle.d.totalLength===0&&(e.parsedStyle.d.totalLength=Ei(e.parsedStyle.d.absolutePath)),e.parsedStyle.d.totalLength}function wc(e){return e.parsedStyle.points.totalLength===0&&(e.parsedStyle.points.totalLength=aa(e.parsedStyle.points.points)),e.parsedStyle.points.totalLength}function Tc(e){for(var t=0;t<e.length;t++){var n=e[t-1],r=e[t];if(r[0]===`M`&&n){var i=n[0],a=[r[1],r[2]],o=void 0;i===`L`||i===`M`?o=[n[1],n[2]]:(i===`C`||i===`A`||i===`Q`)&&(o=[n[n.length-2],n[n.length-1]]),o&&Oc(a,o)&&(e.splice(t,1),t--)}}}function Ec(e){for(var t=!1,n=e.length,r=0;r<n;r++){var i=e[r][0];if(i===`C`||i===`A`||i===`Q`){t=!0;break}}return t}function Dc(e){for(var t=[],n=[],r=[],i=0;i<e.length;i++){var a=e[i],o=a[0];o===`M`?(r.length&&(n.push(r),r=[]),r.push([a[1],a[2]])):o===`Z`?r.length&&(t.push(r),r=[]):r.push([a[1],a[2]])}return r.length>0&&n.push(r),{polygons:t,polylines:n}}function Oc(e,t){return e[0]===t[0]&&e[1]===t[1]}function kc(e,t){for(var n=[],r=[],i=[],a=0;a<e.length;a++){var o=e[a],s=o.currentPoint,c=o.params,l=o.prePoint,u=void 0;switch(o.command){case`Q`:u=ca(l[0],l[1],c[1],c[2],c[3],c[4]);break;case`C`:u=ta(l[0],l[1],c[1],c[2],c[3],c[4],c[5],c[6]);break;case`A`:var d=o.arcParams;u=qi(d.cx,d.cy,d.rx,d.ry,d.xRotation,d.startAngle,d.endAngle);break;default:n.push(s[0]),r.push(s[1]);break}u&&(o.box=u,n.push(u.x,u.x+u.width),r.push(u.y,u.y+u.height)),t&&(o.command===`L`||o.command===`M`)&&o.prePoint&&o.nextPoint&&i.push(o)}n=n.filter(function(e){return!Number.isNaN(e)&&e!==1/0&&e!==-1/0}),r=r.filter(function(e){return!Number.isNaN(e)&&e!==1/0&&e!==-1/0});var f=cn(n),p=cn(r),m=sn(n),h=sn(r);if(i.length===0)return{x:f,y:p,width:m-f,height:h-p};for(var g=0;g<i.length;g++){var _=i[g],v=_.currentPoint,y=void 0;v[0]===f?(y=Ac(_,t),f-=y.xExtra):v[0]===m&&(y=Ac(_,t),m+=y.xExtra),v[1]===p?(y=Ac(_,t),p-=y.yExtra):v[1]===h&&(y=Ac(_,t),h+=y.yExtra)}return{x:f,y:p,width:m-f,height:h-p}}function Ac(e,t){var n=e.prePoint,r=e.currentPoint,i=e.nextPoint,a=(r[0]-n[0])**2+(r[1]-n[1])**2,o=(r[0]-i[0])**2+(r[1]-i[1])**2,s=(n[0]-i[0])**2+(n[1]-i[1])**2,c=Math.acos((a+o-s)/(2*Math.sqrt(a)*Math.sqrt(o)));if(!c||Math.sin(c)===0||_n(c,0))return{xExtra:0,yExtra:0};var l=Math.abs(Math.atan2(i[1]-r[1],i[0]-r[0])),u=Math.abs(Math.atan2(i[0]-r[0],i[1]-r[1]));return l=l>Math.PI/2?Math.PI-l:l,u=u>Math.PI/2?Math.PI-u:u,{xExtra:Math.cos(c/2-l)*(t/2*(1/Math.sin(c/2)))-t/2||0,yExtra:Math.cos(u-c/2)*(t/2*(1/Math.sin(c/2)))-t/2||0}}function jc(e,t){return[t[0]+(t[0]-e[0]),t[1]+(t[1]-e[1])]}var Mc=function(e,t){var n=e.x*t.x+e.y*t.y,r=Math.sqrt((e.x**2+e.y**2)*(t.x**2+t.y**2));return(e.x*t.y-e.y*t.x<0?-1:1)*Math.acos(n/r)},J=function(e,t,n,r,i,a,o,s){t=Math.abs(t),n=Math.abs(n),r=bn(r,360);var c=Ua(r);if(e.x===o.x&&e.y===o.y)return{x:e.x,y:e.y,ellipticalArcAngle:0};if(t===0||n===0)return{x:0,y:0,ellipticalArcAngle:0};var l=(e.x-o.x)/2,u=(e.y-o.y)/2,d={x:Math.cos(c)*l+Math.sin(c)*u,y:-Math.sin(c)*l+Math.cos(c)*u},f=d.x**2/t**2+d.y**2/n**2;f>1&&(t*=Math.sqrt(f),n*=Math.sqrt(f));var p=(t**2*n**2-t**2*d.y**2-n**2*d.x**2)/(t**2*d.y**2+n**2*d.x**2);p=p<0?0:p;var m=(i===a?-1:1)*Math.sqrt(p),h={x:m*(t*d.y/n),y:m*(-(n*d.x)/t)},g={x:Math.cos(c)*h.x-Math.sin(c)*h.y+(e.x+o.x)/2,y:Math.sin(c)*h.x+Math.cos(c)*h.y+(e.y+o.y)/2},_={x:(d.x-h.x)/t,y:(d.y-h.y)/n},v=Mc({x:1,y:0},_),y=Mc(_,{x:(-d.x-h.x)/t,y:(-d.y-h.y)/n});!a&&y>0?y-=2*Math.PI:a&&y<0&&(y+=2*Math.PI),y%=2*Math.PI;var b=v+y*s,x=t*Math.cos(b),S=n*Math.sin(b);return{x:Math.cos(c)*x-Math.sin(c)*S+g.x,y:Math.sin(c)*x+Math.cos(c)*S+g.y,ellipticalArcStartAngle:v,ellipticalArcEndAngle:v+y,ellipticalArcAngle:b,ellipticalArcCenter:g,resultantRx:t,resultantRy:n}};function Nc(e){for(var t=[],n=null,r=null,i=null,a=0,o=e.length,s=0;s<o;s++){var c=e[s];r=e[s+1];var l=c[0],u={command:l,prePoint:n,params:c,startTangent:null,endTangent:null,currentPoint:null,nextPoint:null,arcParams:null,box:null,cubicParams:null};switch(l){case`M`:i=[c[1],c[2]],a=s;break;case`A`:u.arcParams=Rc(n,c);break}if(l===`Z`)n=i,r=e[a+1];else{var d=c.length;n=[c[d-2],c[d-1]]}r&&r[0]===`Z`&&(r=e[a],t[a]&&(t[a].prePoint=n)),u.currentPoint=n,t[a]&&Oc(n,t[a].currentPoint)&&(t[a].prePoint=u.prePoint),u.nextPoint=r?[r[r.length-2],r[r.length-1]]:null;var f=u.prePoint;if([`L`,`H`,`V`].includes(l))u.startTangent=[f[0]-n[0],f[1]-n[1]],u.endTangent=[n[0]-f[0],n[1]-f[1]];else if(l===`Q`){var p=[c[1],c[2]];u.startTangent=[f[0]-p[0],f[1]-p[1]],u.endTangent=[n[0]-p[0],n[1]-p[1]]}else if(l===`T`){var m=t[s-1],h=jc(m.currentPoint,f);m.command===`Q`?(u.command=`Q`,u.startTangent=[f[0]-h[0],f[1]-h[1]],u.endTangent=[n[0]-h[0],n[1]-h[1]]):(u.command=`TL`,u.startTangent=[f[0]-n[0],f[1]-n[1]],u.endTangent=[n[0]-f[0],n[1]-f[1]])}else if(l===`C`){var g=[c[1],c[2]],_=[c[3],c[4]];u.startTangent=[f[0]-g[0],f[1]-g[1]],u.endTangent=[n[0]-_[0],n[1]-_[1]],u.startTangent[0]===0&&u.startTangent[1]===0&&(u.startTangent=[g[0]-_[0],g[1]-_[1]]),u.endTangent[0]===0&&u.endTangent[1]===0&&(u.endTangent=[_[0]-g[0],_[1]-g[1]])}else if(l===`S`){var v=t[s-1],y=jc(v.currentPoint,f),b=[c[1],c[2]];v.command===`C`?(u.command=`C`,u.startTangent=[f[0]-y[0],f[1]-y[1]],u.endTangent=[n[0]-b[0],n[1]-b[1]]):(u.command=`SQ`,u.startTangent=[f[0]-b[0],f[1]-b[1]],u.endTangent=[n[0]-b[0],n[1]-b[1]])}else if(l===`A`){var x=Pc(u,0),S=x.x,C=x.y,w=Pc(u,1,!1),T=w.x,E=w.y;u.startTangent=[S,C],u.endTangent=[T,E]}t.push(u)}return t}function Pc(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=e.arcParams,i=r.rx,a=i===void 0?0:i,o=r.ry,s=o===void 0?0:o,c=r.xRotation,l=r.arcFlag,u=r.sweepFlag,d=J({x:e.prePoint[0],y:e.prePoint[1]},a,s,c,!!l,!!u,{x:e.currentPoint[0],y:e.currentPoint[1]},t),f=J({x:e.prePoint[0],y:e.prePoint[1]},a,s,c,!!l,!!u,{x:e.currentPoint[0],y:e.currentPoint[1]},n?t+.005:t-.005),p=f.x-d.x,m=f.y-d.y,h=Math.sqrt(p*p+m*m);return{x:-p/h,y:-m/h}}function Fc(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function Ic(e,t){return Fc(e)*Fc(t)?(e[0]*t[0]+e[1]*t[1])/(Fc(e)*Fc(t)):1}function Lc(e,t){return(e[0]*t[1]<e[1]*t[0]?-1:1)*Math.acos(Ic(e,t))}function Rc(e,t){var n=t[1],r=t[2],i=bn(Ua(t[3]),Math.PI*2),a=t[4],o=t[5],s=e[0],c=e[1],l=t[6],u=t[7],d=Math.cos(i)*(s-l)/2+Math.sin(i)*(c-u)/2,f=-1*Math.sin(i)*(s-l)/2+Math.cos(i)*(c-u)/2,p=d*d/(n*n)+f*f/(r*r);p>1&&(n*=Math.sqrt(p),r*=Math.sqrt(p));var m=n*n*(f*f)+r*r*(d*d),h=m?Math.sqrt((n*n*(r*r)-m)/m):1;a===o&&(h*=-1),isNaN(h)&&(h=0);var g=r?h*n*f/r:0,_=n?h*-r*d/n:0,v=(s+l)/2+Math.cos(i)*g-Math.sin(i)*_,y=(c+u)/2+Math.sin(i)*g+Math.cos(i)*_,b=[(d-g)/n,(f-_)/r],x=[(-1*d-g)/n,(-1*f-_)/r],S=Lc([1,0],b),C=Lc(b,x);return Ic(b,x)<=-1&&(C=Math.PI),Ic(b,x)>=1&&(C=0),o===0&&C>0&&(C-=2*Math.PI),o===1&&C<0&&(C+=2*Math.PI),{cx:v,cy:y,rx:Oc(e,[l,u])?0:n,ry:Oc(e,[l,u])?0:r,startAngle:S,endAngle:S+C,xRotation:i,arcFlag:a,sweepFlag:o}}var zc=function(e){if(e===``||Array.isArray(e)&&e.length===0)return{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:{x:0,y:0,width:0,height:0}};var t;try{t=ai(e)}catch{t=ai(``),console.error(`[g]: Invalid SVG Path definition: ${e}`)}Tc(t);var n=Ec(t),r=Dc(t),i=r.polygons,a=r.polylines,o=Nc(t),s=kc(o,0),c=s.x,l=s.y,u=s.width,d=s.height;return{absolutePath:t,hasArc:n,segments:o,polygons:i,polylines:a,totalLength:0,rect:{x:Number.isFinite(c)?c:0,y:Number.isFinite(l)?l:0,width:Number.isFinite(u)?u:0,height:Number.isFinite(d)?d:0}}},Bc=cs(zc);function Vc(e){return un(e)?Bc(e):zc(e)}function Hc(e,t,n){var r=e.curve,i=t.curve;(!r||r.length===0)&&(r=pi(e.absolutePath,!1),e.curve=r),(!i||i.length===0)&&(i=pi(t.absolutePath,!1),t.curve=i);var a=[r,i];r.length!==i.length&&(a=Ii(r,i));var o=ji(a[0])===ji(a[1])?mi(a[0]):hi(a[0]);return[o,Oi(a[1],o),function(e){return e}]}function Uc(e,t){return{points:un(e)?e.split(` `).map(function(e){var t=m(e.split(`,`),2),n=t[0],r=t[1];return[Number(n),Number(r)]}):e,totalLength:0,segments:[]}}function Wc(e,t){return[e.points,t.points,function(e){return e}]}var Gc=null,Kc=/\s*(\w+)\(([^)]*)\)/g;function qc(e){return function(t){var n=0;return e.map(function(e){return e===Gc?t[n++]:e})}}function Jc(e){return e}var Yc={matrix:[`NNNNNN`,[Gc,Gc,0,0,Gc,Gc,0,0,0,0,1,0,Gc,Gc,0,1],Jc],matrix3d:[`NNNNNNNNNNNNNNNN`,Jc],rotate:[`A`],rotateX:[`A`],rotateY:[`A`],rotateZ:[`A`],rotate3d:[`NNNA`],perspective:[`L`],scale:[`Nn`,qc([Gc,Gc,new Ds(1)]),Jc],scaleX:[`N`,qc([Gc,new Ds(1),new Ds(1)]),qc([Gc,new Ds(1)])],scaleY:[`N`,qc([new Ds(1),Gc,new Ds(1)]),qc([new Ds(1),Gc])],scaleZ:[`N`,qc([new Ds(1),new Ds(1),Gc])],scale3d:[`NNN`,Jc],skew:[`Aa`,null,Jc],skewX:[`A`,null,qc([Gc,ks])],skewY:[`A`,null,qc([ks,Gc])],translate:[`Tt`,qc([Gc,Gc,Os]),Jc],translateX:[`T`,qc([Gc,Os,Os]),qc([Gc,Os])],translateY:[`T`,qc([Os,Gc,Os]),qc([Os,Gc])],translateZ:[`L`,qc([Os,Os,Gc])],translate3d:[`TTL`,Jc]};function Xc(e){for(var t=[],n=e.length,r=0;r<n;r++){var i=e[r],a=i[0],o=i.slice(1);if(a===`translate`||a===`skew`?o.length===1&&o.push(0):a===`scale`&&o.length===1&&o.push(o[0]),!Yc[a])return[];var s=o.map(function(e){return Ls(e)});t.push({t:a,d:s})}return t}function Zc(e){if(Array.isArray(e))return Xc(e);if(e=(e||`none`).trim(),e===`none`)return[];var t=[],n,r=0;for(Kc.lastIndex=0;n=Kc.exec(e);){if(n.index!==r)return[];r=n.index+n[0].length;var i=n[1],a=Yc[i];if(!a)return[];var o=n[2].split(`,`),s=a[0];if(s.length<o.length)return[];for(var c=[],l=0;l<s.length;l++){var u=o[l],d=s[l],f=void 0;if(f=u?{A:function(e){return e.trim()===`0`?ks:lc(e)},N:yc,T:sc,L:ac}[d.toUpperCase()](u):{a:ks,n:c[0],t:Os}[d],f===void 0)return[];c.push(f)}if(t.push({t:i,d:c}),Kc.lastIndex===e.length)return t}return[]}function Qc(e){if(Array.isArray(e))return Xc(e);if(e=(e||`none`).trim(),e===`none`)return[];var t=[],n,r=0;for(Kc.lastIndex=0;n=Kc.exec(e);){if(n.index!==r)return[];r=n.index+n[0].length;var i=n[1],a=Yc[i];if(!a)return[];var o=n[2].split(`,`),s=a[0];if(s.length<o.length)return[];for(var c=[],l=0;l<s.length;l++){var u=o[l],d=s[l],f=void 0;if(f=u?{A:function(e){return e.trim()===`0`?ks:cc(e)},N:vc,T:oc,L:ic}[d.toUpperCase()](u):{a:ks,n:c[0],t:Os}[d],f===void 0)return[];c.push(f)}if(t.push({t:i,d:c}),Kc.lastIndex===e.length)return t}return[]}function $c(e){var t,n,r,i;switch(e.t){case`rotateX`:return i=Ua(dc(e.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=Ua(dc(e.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=Ua(dc(e.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=e.d[0].value,n=e.d[1].value,r=e.d[2].value,i=Ua(dc(e.d[3]));var a=t*t+n*n+r*r;if(a===0)t=1,n=0,r=0;else if(a!==1){var o=Math.sqrt(a);t/=o,n/=o,r/=o}var s=Math.sin(i/2),c=s*Math.cos(i/2),l=s*s;return[1-2*(n*n+r*r)*l,2*(t*n*l+r*c),2*(t*r*l-n*c),0,2*(t*n*l-r*c),1-2*(t*t+r*r)*l,2*(n*r*l+t*c),0,2*(t*r*l+n*c),2*(n*r*l-t*c),1-2*(t*t+n*n)*l,0,0,0,0,1];case`scale`:return[e.d[0].value,0,0,0,0,e.d[1].value,0,0,0,0,1,0,0,0,0,1];case`scaleX`:return[e.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,e.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,e.d[0].value,0,0,0,0,1];case`scale3d`:return[e.d[0].value,0,0,0,0,e.d[1].value,0,0,0,0,e.d[2].value,0,0,0,0,1];case`skew`:var u=Ua(dc(e.d[0])),d=Ua(dc(e.d[1]));return[1,Math.tan(d),0,0,Math.tan(u),1,0,0,0,0,1,0,0,0,0,1];case`skewX`:return i=Ua(dc(e.d[0])),[1,0,0,0,Math.tan(i),1,0,0,0,0,1,0,0,0,0,1];case`skewY`:return i=Ua(dc(e.d[0])),[1,Math.tan(i),0,0,0,1,0,0,0,0,1,0,0,0,0,1];case`translate`:return t=pc(e.d[0],0,null)||0,n=pc(e.d[1],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,t,n,0,1];case`translateX`:return t=pc(e.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,t,0,0,1];case`translateY`:return n=pc(e.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,n,0,1];case`translateZ`:return r=pc(e.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,0,r,1];case`translate3d`:return t=pc(e.d[0],0,null)||0,n=pc(e.d[1],0,null)||0,r=pc(e.d[2],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,t,n,r,1];case`perspective`:var f=pc(e.d[0],0,null)||0;return[1,0,0,0,0,1,0,0,0,0,1,f?-1/f:0,0,0,0,1];case`matrix`:return[e.d[0].value,e.d[1].value,0,0,e.d[2].value,e.d[3].value,0,0,0,0,1,0,e.d[4].value,e.d[5].value,0,1];case`matrix3d`:return e.d.map(function(e){return e.value})}}function el(e,t){return[e[0]*t[0]+e[4]*t[1]+e[8]*t[2]+e[12]*t[3],e[1]*t[0]+e[5]*t[1]+e[9]*t[2]+e[13]*t[3],e[2]*t[0]+e[6]*t[1]+e[10]*t[2]+e[14]*t[3],e[3]*t[0]+e[7]*t[1]+e[11]*t[2]+e[15]*t[3],e[0]*t[4]+e[4]*t[5]+e[8]*t[6]+e[12]*t[7],e[1]*t[4]+e[5]*t[5]+e[9]*t[6]+e[13]*t[7],e[2]*t[4]+e[6]*t[5]+e[10]*t[6]+e[14]*t[7],e[3]*t[4]+e[7]*t[5]+e[11]*t[6]+e[15]*t[7],e[0]*t[8]+e[4]*t[9]+e[8]*t[10]+e[12]*t[11],e[1]*t[8]+e[5]*t[9]+e[9]*t[10]+e[13]*t[11],e[2]*t[8]+e[6]*t[9]+e[10]*t[10]+e[14]*t[11],e[3]*t[8]+e[7]*t[9]+e[11]*t[10]+e[15]*t[11],e[0]*t[12]+e[4]*t[13]+e[8]*t[14]+e[12]*t[15],e[1]*t[12]+e[5]*t[13]+e[9]*t[14]+e[13]*t[15],e[2]*t[12]+e[6]*t[13]+e[10]*t[14]+e[14]*t[15],e[3]*t[12]+e[7]*t[13]+e[11]*t[14]+e[15]*t[15]]}function tl(e){return e.length===0?[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]:e.map($c).reduce(el)}function nl(e){var t=[0,0,0],n=[1,1,1],r=[0,0,0],i=[0,0,0,1],a=[0,0,0,1];return io(tl(e),t,n,r,i,a),[[t,n,r,a,i]]}var rl=function(){function e(e,t){for(var n=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],r=0;r<4;r++)for(var i=0;i<4;i++)for(var a=0;a<4;a++)n[r][i]+=t[r][a]*e[a][i];return n}function t(e){return e[0][2]===0&&e[0][3]===0&&e[1][2]===0&&e[1][3]===0&&e[2][0]===0&&e[2][1]===0&&e[2][2]===1&&e[2][3]===0&&e[3][2]===0&&e[3][3]===1}function n(n,r,i,a,o){for(var s=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]],c=0;c<4;c++)s[c][3]=o[c];for(var l=0;l<3;l++)for(var u=0;u<3;u++)s[3][l]+=n[u]*s[u][l];var d=a[0],f=a[1],p=a[2],m=a[3],h=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];h[0][0]=1-2*(f*f+p*p),h[0][1]=2*(d*f-p*m),h[0][2]=2*(d*p+f*m),h[1][0]=2*(d*f+p*m),h[1][1]=1-2*(d*d+p*p),h[1][2]=2*(f*p-d*m),h[2][0]=2*(d*p-f*m),h[2][1]=2*(f*p+d*m),h[2][2]=1-2*(d*d+f*f),s=e(s,h);var g=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];i[2]&&(g[2][1]=i[2],s=e(s,g)),i[1]&&(g[2][1]=0,g[2][0]=i[0],s=e(s,g)),i[0]&&(g[2][0]=0,g[1][0]=i[0],s=e(s,g));for(var _=0;_<3;_++)for(var v=0;v<3;v++)s[_][v]*=r[_];return t(s)?[s[0][0],s[0][1],s[1][0],s[1][1],s[3][0],s[3][1]]:s[0].concat(s[1],s[2],s[3])}return n}();function il(e){return e.toFixed(6).replace(`.000000`,``)}function al(e,t){var n,r;return e.decompositionPair!==t&&(e.decompositionPair=t,n=nl(e)),t.decompositionPair!==e&&(t.decompositionPair=e,r=nl(t)),n[0]===null||r[0]===null?[[!1],[!0],function(n){return n?t[0].d:e[0].d}]:(n[0].push(0),r[0].push(1),[n,r,function(e){var t=sl(n[0][3],r[0][3],e[5]);return rl(e[0],e[1],e[2],t,e[4]).map(il).join(`,`)}])}function ol(e,t){for(var n=0,r=0;r<e.length;r++)n+=e[r]*t[r];return n}function sl(e,t,n){var r=ol(e,t);r=mn(r,-1,1);var i=[];if(r===1)i=e;else for(var a=Math.acos(r),o=Math.sin(n*a)*1/Math.sqrt(1-r*r),s=0;s<4;s++)i.push(e[s]*(Math.cos(n*a)-r*o)+t[s]*o);return i}function cl(e){return e.replace(/[XY]/,``)}function ll(e){return e.replace(/(X|Y|Z|3d)?$/,`3d`)}var ul=function(e,t){return e===`perspective`&&t===`perspective`||(e===`matrix`||e===`matrix3d`)&&(t===`matrix`||t===`matrix3d`)};function dl(e,t,n){var r=!1;if(!e.length||!t.length){e.length||(r=!0,e=t,t=[]);for(var i=function(){var n=e[a],r=n.t,i=n.d,o=+(r.substring(0,5)===`scale`);t.push({t:r,d:i.map(function(e){return typeof e==`number`?Ls(o):Ls(o,e.unit)})})},a=0;a<e.length;a++)i()}var o=[],s=[],c=[];if(e.length!==t.length){var l=al(e,t);o=[l[0]],s=[l[1]],c=[[`matrix`,[l[2]]]]}else for(var u=0;u<e.length;u++){var d=e[u].t,f=t[u].t,p=e[u].d,m=t[u].d,h=Yc[d],g=Yc[f],_=void 0;if(ul(d,f)){var v=al([e[u]],[t[u]]);o.push(v[0]),s.push(v[1]),c.push([`matrix`,[v[2]]]);continue}else if(d===f)_=d;else if(h[2]&&g[2]&&cl(d)===cl(f))_=cl(d),p=h[2](p),m=g[2](m);else if(h[1]&&g[1]&&ll(d)===ll(f))_=ll(d),p=h[1](p),m=g[1](m);else{var y=al(e,t);o=[y[0]],s=[y[1]],c=[[`matrix`,[y[2]]]];break}for(var b=[],x=[],S=[],C=0;C<p.length;C++){var w=uc(p[C],m[C],n,!1,C);b[C]=w[0],x[C]=w[1],S.push(w[2])}o.push(b),s.push(x),c.push([_,S])}if(r){var T=o;o=s,s=T}return[o,s,function(e){return e.map(function(e,t){var n=e.map(function(e,n){return c[t][1][n](e)}).join(`,`);return c[t][0]===`matrix`&&n.split(`,`).length===16&&(c[t][0]=`matrix3d`),c[t][0]===`matrix3d`&&n.split(`,`).length===6&&(c[t][0]=`matrix`),`${c[t][0]}(${n})`}).join(` `)}]}var fl=cs(function(e){if(un(e)){if(e===`text-anchor`)return[Ls(0,`px`),Ls(0,`px`)];var t=e.split(` `);return t.length===1&&(t[0]===`top`||t[0]===`bottom`?(t[1]=t[0],t[0]=`center`):t[1]=`center`),t.length===2?[sc(pl(t[0])),sc(pl(t[1]))]:null}return[Ls(e[0]||0,`px`),Ls(e[1]||0,`px`)]});function pl(e){return e===`center`?`50%`:e===`left`||e===`top`?`0%`:e===`right`||e===`bottom`?`100%`:e}var ml=[{n:`display`,k:[`none`]},{n:`opacity`,int:!0,inh:!0,d:`1`,syntax:K.OPACITY_VALUE},{n:`fillOpacity`,int:!0,inh:!0,d:`1`,syntax:K.OPACITY_VALUE},{n:`strokeOpacity`,int:!0,inh:!0,d:`1`,syntax:K.OPACITY_VALUE},{n:`fill`,int:!0,k:[`none`],d:`none`,syntax:K.PAINT},{n:`fillRule`,k:[`nonzero`,`evenodd`],d:`nonzero`},{n:`stroke`,int:!0,k:[`none`],d:`none`,syntax:K.PAINT,l:!0},{n:`shadowType`,k:[`inner`,`outer`,`both`],d:`outer`,l:!0},{n:`shadowColor`,int:!0,syntax:K.COLOR},{n:`shadowOffsetX`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`shadowOffsetY`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`shadowBlur`,int:!0,l:!0,d:`0`,syntax:K.SHADOW_BLUR},{n:`lineWidth`,int:!0,inh:!0,d:`1`,l:!0,a:[`strokeWidth`],syntax:K.LENGTH_PERCENTAGE},{n:`increasedLineWidthForHitTesting`,inh:!0,d:`0`,l:!0,syntax:K.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:K.LENGTH_PERCENTAGE_12},{n:`lineDashOffset`,int:!0,inh:!0,d:`0`,a:[`strokeDashoffset`],syntax:K.LENGTH_PERCENTAGE},{n:`offsetPath`,syntax:K.DEFINED_PATH},{n:`offsetDistance`,int:!0,syntax:K.OFFSET_DISTANCE},{n:`dx`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`dy`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`zIndex`,ind:!0,int:!0,d:`0`,k:[`auto`],syntax:K.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:K.FILTER},{n:`clipPath`,syntax:K.DEFINED_PATH},{n:`textPath`,syntax:K.DEFINED_PATH},{n:`textPathSide`,k:[`left`,`right`],d:`left`},{n:`textPathStartOffset`,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`transform`,p:100,int:!0,k:[`none`],d:`none`,syntax:K.TRANSFORM},{n:`transformOrigin`,p:100,d:`0 0`,l:!0,syntax:K.TRANSFORM_ORIGIN},{n:`cx`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`cy`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`cz`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`r`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`rx`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`ry`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`x`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`y`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`z`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`width`,int:!0,l:!0,k:[`auto`,`fit-content`,`min-content`,`max-content`],d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`height`,int:!0,l:!0,k:[`auto`,`fit-content`,`min-content`,`max-content`],d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`radius`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE_14},{n:`x1`,int:!0,l:!0,syntax:K.COORDINATE},{n:`y1`,int:!0,l:!0,syntax:K.COORDINATE},{n:`z1`,int:!0,l:!0,syntax:K.COORDINATE},{n:`x2`,int:!0,l:!0,syntax:K.COORDINATE},{n:`y2`,int:!0,l:!0,syntax:K.COORDINATE},{n:`z2`,int:!0,l:!0,syntax:K.COORDINATE},{n:`d`,int:!0,l:!0,d:``,syntax:K.PATH,p:50},{n:`points`,int:!0,l:!0,syntax:K.LIST_OF_POINTS,p:50},{n:`text`,l:!0,d:``,syntax:K.TEXT,p:50},{n:`textTransform`,l:!0,inh:!0,k:[`capitalize`,`uppercase`,`lowercase`,`none`],d:`none`,syntax:K.TEXT_TRANSFORM,p:51},{n:`font`,l:!0},{n:`fontSize`,int:!0,inh:!0,d:`16px`,l:!0,syntax:K.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:K.LENGTH,int:!0,d:`0`},{n:`letterSpacing`,l:!0,syntax:K.LENGTH,int:!0,d:`0`},{n:`miterLimit`,l:!0,syntax:K.NUMBER,d:function(e){return e===U.PATH||e===U.POLYGON||e===U.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:K.MARKER},{n:`markerEnd`,syntax:K.MARKER},{n:`markerMid`,syntax:K.MARKER},{n:`markerStartOffset`,syntax:K.LENGTH,l:!0,int:!0,d:`0`},{n:`markerEndOffset`,syntax:K.LENGTH,l:!0,int:!0,d:`0`}],hl=new Set(ml.filter(function(e){return!!e.l}).map(function(e){return e.n})),gl={},_l=function(){function e(t){var n=this;b(this,e),this.runtime=t,ml.forEach(function(e){n.registerMetadata(e)})}return S(e,[{key:`registerMetadata`,value:function(e){[e.n].concat(l(e.a||[])).forEach(function(t){gl[t]=e})}},{key:`getPropertySyntax`,value:function(e){return this.runtime.CSSPropertySyntaxFactory[e]}},{key:`processProperties`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{skipUpdateAttribute:!1,skipParse:!1,forceUpdateGeometry:!1,usedAttributes:[],memoize:!0};Object.assign(e.attributes,t);var r=e.parsedStyle.clipPath,i=e.parsedStyle.offsetPath;vl(e,t);var a=!!n.forceUpdateGeometry;if(!a){for(var o in t)if(hl.has(o)){a=!0;break}}var s=yl(e);s.has(`fill`)&&t.fill&&(e.parsedStyle.fill=tc(t.fill)),s.has(`stroke`)&&t.stroke&&(e.parsedStyle.stroke=tc(t.stroke)),s.has(`shadowColor`)&&t.shadowColor&&(e.parsedStyle.shadowColor=tc(t.shadowColor)),s.has(`filter`)&&t.filter&&(e.parsedStyle.filter=gc(t.filter)),s.has(`radius`)&&!R(t.radius)&&(e.parsedStyle.radius=fc(t.radius,4)),s.has(`lineDash`)&&!R(t.lineDash)&&(e.parsedStyle.lineDash=fc(t.lineDash,`even`)),s.has(`points`)&&t.points&&(e.parsedStyle.points=Uc(t.points)),s.has(`d`)&&t.d===``&&(e.parsedStyle.d=y({},So)),s.has(`d`)&&t.d&&(e.parsedStyle.d=Vc(t.d)),s.has(`textTransform`)&&t.textTransform&&this.runtime.CSSPropertySyntaxFactory[K.TEXT_TRANSFORM].calculator(null,null,{value:t.textTransform},e,null),s.has(`clipPath`)&&!Mn(t.clipPath)&&this.runtime.CSSPropertySyntaxFactory[K.DEFINED_PATH].calculator(`clipPath`,r,t.clipPath,e,this.runtime),s.has(`offsetPath`)&&t.offsetPath&&this.runtime.CSSPropertySyntaxFactory[K.DEFINED_PATH].calculator(`offsetPath`,i,t.offsetPath,e,this.runtime),s.has(`transform`)&&t.transform&&(e.parsedStyle.transform=Zc(t.transform)),s.has(`transformOrigin`)&&t.transformOrigin&&(e.parsedStyle.transformOrigin=fl(t.transformOrigin)),s.has(`markerStart`)&&t.markerStart&&(e.parsedStyle.markerStart=this.runtime.CSSPropertySyntaxFactory[K.MARKER].calculator(null,t.markerStart,t.markerStart,null,null)),s.has(`markerEnd`)&&t.markerEnd&&(e.parsedStyle.markerEnd=this.runtime.CSSPropertySyntaxFactory[K.MARKER].calculator(null,t.markerEnd,t.markerEnd,null,null)),s.has(`markerMid`)&&t.markerMid&&(e.parsedStyle.markerMid=this.runtime.CSSPropertySyntaxFactory[K.MARKER].calculator(``,t.markerMid,t.markerMid,null,null)),s.has(`zIndex`)&&!R(t.zIndex)&&this.runtime.CSSPropertySyntaxFactory[K.Z_INDEX].postProcessor(e),s.has(`offsetDistance`)&&!R(t.offsetDistance)&&this.runtime.CSSPropertySyntaxFactory[K.OFFSET_DISTANCE].postProcessor(e),s.has(`transform`)&&t.transform&&this.runtime.CSSPropertySyntaxFactory[K.TRANSFORM].postProcessor(e),s.has(`transformOrigin`)&&t.transformOrigin&&this.runtime.CSSPropertySyntaxFactory[K.TRANSFORM_ORIGIN].postProcessor(e),a&&(e.dirty(!0,!0),n.forceUpdateGeometry||this.runtime.sceneGraphService.dirtyToRoot(e))}},{key:`updateGeometry`,value:function(e){var t=e.nodeName,n=this.runtime.geometryUpdaterFactory[t];if(n){var r=e.geometry;r.contentBounds||=new ja,r.renderBounds||=new ja;var i=e.parsedStyle,a=n.update(i,e),o=a.cx,s=o===void 0?0:o,c=a.cy,l=c===void 0?0:c,u=a.cz,d=u===void 0?0:u,f=a.hwidth,p=f===void 0?0:f,m=a.hheight,h=m===void 0?0:m,g=a.hdepth,_=[Math.abs(p),Math.abs(h),g===void 0?0:g],v=i.stroke,y=i.lineWidth,b=y===void 0?1:y,x=i.increasedLineWidthForHitTesting,S=x===void 0?0:x,C=i.shadowType,w=C===void 0?`outer`:C,T=i.shadowColor,E=i.filter,D=E===void 0?[]:E,O=i.transformOrigin,k=[s,l,d];r.contentBounds.update(k,_);var A=t===U.POLYLINE||t===U.POLYGON||t===U.PATH?Math.SQRT2:.5;if(v&&!v.isNone){var j=((b||0)+(S||0))*A;_[0]+=j,_[1]+=j}if(r.renderBounds.update(k,_),T&&w&&w!==`inner`){var ee=r.renderBounds,te=ee.min,M=ee.max,ne=i.shadowBlur,re=i.shadowOffsetX,ie=i.shadowOffsetY,N=ne||0,P=re||0,ae=ie||0,F=te[0]-N+P,oe=M[0]+N+P,se=te[1]-N+ae,ce=M[1]+N+ae;te[0]=Math.min(te[0],F),M[0]=Math.max(M[0],oe),te[1]=Math.min(te[1],se),M[1]=Math.max(M[1],ce),r.renderBounds.setMinMax(te,M)}D.forEach(function(e){var t=e.name,n=e.params;if(t===`blur`){var i=n[0].value;r.renderBounds.update(r.renderBounds.center,ot(r.renderBounds.halfExtents,r.renderBounds.halfExtents,[i,i,0]))}else if(t===`drop-shadow`){var a=n[0].value,o=n[1].value,s=n[2].value,c=r.renderBounds,l=c.min,u=c.max,d=l[0]-s+a,f=u[0]+s+a,p=l[1]-s+o,m=u[1]+s+o;l[0]=Math.min(l[0],d),u[0]=Math.max(u[0],f),l[1]=Math.min(l[1],p),u[1]=Math.max(u[1],m),r.renderBounds.setMinMax(l,u)}}),e.geometry.dirty=!1;var le=p<0,ue=h<0,de=(le?-1:1)*(O?pc(O[0],0,e,!0):0),fe=(ue?-1:1)*(O?pc(O[1],1,e,!0):0);(de||fe)&&e.setOrigin(de,fe)}}},{key:`updateSizeAttenuation`,value:function(e,t){e.style.isSizeAttenuation?(e.style.rawLineWidth||(e.style.rawLineWidth=e.style.lineWidth),e.style.lineWidth=(e.style.rawLineWidth||1)/t,e.nodeName===U.CIRCLE&&(e.style.rawR||(e.style.rawR=e.style.r),e.style.r=(e.style.rawR||1)/t)):(e.style.rawLineWidth&&(e.style.lineWidth=e.style.rawLineWidth,delete e.style.rawLineWidth),e.nodeName===U.CIRCLE&&e.style.rawR&&(e.style.r=e.style.rawR,delete e.style.rawR))}}])}();function vl(e,t){var n=yl(e);for(var r in t)n.has(r)&&(e.parsedStyle[r]=t[r])}function yl(e){return e.constructor.PARSED_STYLE_LIST}var bl=function(){function e(){b(this,e),this.mixer=bc}return S(e,[{key:`calculator`,value:function(e,t,n,r){return dc(n)}}])}(),xl=function(){function e(){b(this,e)}return S(e,[{key:`calculator`,value:function(e,t,n,r,i){return n instanceof ws&&(n=null),i.sceneGraphService.updateDisplayObjectDependency(e,t,n,r),e===`clipPath`&&r.forEach(function(e){e.childNodes.length===0&&i.sceneGraphService.dirtyToRoot(e)}),n}}])}(),Sl=function(){function e(){b(this,e),this.parser=tc,this.mixer=nc}return S(e,[{key:`calculator`,value:function(e,t,n,r){return n instanceof ws?n.value===`none`?Ps:Fs:n}}])}(),Cl=function(){function e(){b(this,e)}return S(e,[{key:`calculator`,value:function(e,t,n){return n instanceof ws?[]:n}}])}();function wl(e){var t=e.parsedStyle.fontSize;return R(t)?null:t}var Tl=function(){function e(){b(this,e),this.mixer=bc}return S(e,[{key:`calculator`,value:function(e,t,n,r,i){if(hn(n))return n;if(Ds.isRelativeUnit(n.unit)){if(n.unit===q.kPercentage)return 0;if(n.unit===q.kEms){if(r.parentNode){var a=wl(r.parentNode);if(a)return a*=n.value,a}return 0}if(n.unit===q.kRems){var o;if(r!=null&&(o=r.ownerDocument)!=null&&o.documentElement){var s=wl(r.ownerDocument.documentElement);if(s)return s*=n.value,s}return 0}}else return n.value}}])}(),El=function(){function e(){b(this,e),this.mixer=Sc}return S(e,[{key:`calculator`,value:function(e,t,n){return n.map(function(e){return e.value})}}])}(),Dl=function(){function e(){b(this,e),this.mixer=Sc}return S(e,[{key:`calculator`,value:function(e,t,n){return n.map(function(e){return e.value})}}])}(),Ol=function(){function e(){b(this,e)}return S(e,[{key:`calculator`,value:function(e,t,n,r){n instanceof ws&&(n=null);var i=n?.cloneNode(!0);return i&&(i.style.isMarker=!0),i}}])}(),kl=function(){function e(){b(this,e),this.mixer=bc}return S(e,[{key:`calculator`,value:function(e,t,n){return n.value}}])}(),Al=function(){function e(){b(this,e),this.mixer=xc(0,1)}return S(e,[{key:`calculator`,value:function(e,t,n){return n.value}},{key:`postProcessor`,value:function(e){var t=e.parsedStyle,n=t.offsetPath,r=t.offsetDistance;if(n){var i=n.nodeName;if(i===U.LINE||i===U.PATH||i===U.POLYLINE){var a=n.getPoint(r);a&&e.setLocalPosition(a.x,a.y)}}}}])}(),jl=function(){function e(){b(this,e),this.mixer=xc(0,1)}return S(e,[{key:`calculator`,value:function(e,t,n){return n.value}}])}(),Ml=function(){function e(){b(this,e),this.parser=Vc,this.mixer=Hc}return S(e,[{key:`calculator`,value:function(e,t,n){return n instanceof ws&&n.value===`unset`?{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new Fa(0,0,0,0)}:n}}])}(),Nl=S(function e(){b(this,e),this.mixer=Wc}),Pl=function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.mixer=xc(0,1/0),e}return T(t,e),S(t)}(Tl),Fl=function(){function e(){b(this,e)}return S(e,[{key:`calculator`,value:function(e,t,n,r){return n instanceof ws?n.value===`unset`?``:n.value:`${n}`}},{key:`postProcessor`,value:function(e){e.nodeValue=`${e.parsedStyle.text}`||``}}])}(),Il=function(){function e(){b(this,e)}return S(e,[{key:`calculator`,value:function(e,t,n,r){var i=r.getAttribute(`text`);if(i){var a=i;n.value===`capitalize`?a=i.charAt(0).toUpperCase()+i.slice(1):n.value===`lowercase`?a=i.toLowerCase():n.value===`uppercase`&&(a=i.toUpperCase()),r.parsedStyle.text=a}return n.value}}])}(),Ll=new WeakMap;function Rl(e,t,n){if(e){var r=typeof e==`string`?document.getElementById(e):e;Ll.has(r)&&Ll.get(r).destroy(n),Ll.set(r,t)}}var zl=typeof window<`u`&&window.document!==void 0;function Bl(e){return!!e.getAttribute}function Vl(e,t){for(var n=0,r=e.length;n<r;){var i=n+r>>>1;Hl(e[i],t)<0?n=i+1:r=i}return n}function Hl(e,t){var n=Number(e.parsedStyle.zIndex||0),r=Number(t.parsedStyle.zIndex||0);if(n===r){var i=e.parentNode;if(i){var a=i.childNodes||[];return a.indexOf(e)-a.indexOf(t)}}return n-r}function Ul(e){var t=e;do{if(t.parsedStyle?.clipPath)return t;t=t.parentElement}while(t!==null);return null}var Wl=`px`;function Gl(e,t,n){zl&&e.style&&(e.style.width=t+Wl,e.style.height=n+Wl)}function Kl(e,t){if(zl)return document.defaultView.getComputedStyle(e,null).getPropertyValue(t)}function ql(e){var t=Kl(e,`width`);return t===`auto`?e.offsetWidth:parseFloat(t)}function Jl(e){var t=Kl(e,`height`);return t===`auto`?e.offsetHeight:parseFloat(t)}var Yl=1,Xl={touchstart:`pointerdown`,touchend:`pointerup`,touchendoutside:`pointerupoutside`,touchmove:`pointermove`,touchcancel:`pointercancel`},Zl=typeof performance==`object`&&performance.now?performance:Date;function Ql(e){return e.nodeName===U.FRAGMENT?!0:e.getRootNode().nodeName===U.FRAGMENT}function $l(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`auto`,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,r=!1,i=!1,a=!!t&&!t.isNone,o=!!n&&!n.isNone;return e===`visiblepainted`||e===`painted`||e===`auto`?(r=a,i=o):e===`visiblefill`||e===`fill`?r=!0:e===`visiblestroke`||e===`stroke`?i=!0:(e===`visible`||e===`all`)&&(r=!0,i=!0),[r,i]}var eu=1,tu=function(){return eu++},nu=typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:{},ru=Date.now(),iu=function(){return nu.performance&&typeof nu.performance.now==`function`?nu.performance.now():Date.now()-ru},au={},ou=Date.now(),su=function(e){if(typeof e!=`function`)throw TypeError(`${e} is not a function`);var t=Date.now(),n=t-ou,r=n>16?0:16-n,i=tu();return au[i]=e,Object.keys(au).length>1||setTimeout(function(){ou=t;var e=au;au={},Object.keys(e).forEach(function(t){return e[t](iu())})},r),i},cu=function(e){delete au[e]},lu=[``,`webkit`,`moz`,`ms`,`o`],uu=function(e){return typeof e==`string`?e===``?nu.requestAnimationFrame:nu[`${e}RequestAnimationFrame`]:su},du=function(e){return typeof e==`string`?e===``?nu.cancelAnimationFrame:nu[`${e}CancelAnimationFrame`]||nu[`${e}CancelRequestAnimationFrame`]:cu},fu=function(e,t){for(var n=0;e[n]!==void 0;){if(t(e[n]))return e[n];n+=1}}(lu,function(e){return!!uu(e)}),pu=uu(fu),mu=du(fu);nu.requestAnimationFrame=pu,nu.cancelAnimationFrame=mu;var hu=function(){function e(){b(this,e),this.callbacks=[]}return S(e,[{key:`getCallbacksNum`,value:function(){return this.callbacks.length}},{key:`tapPromise`,value:function(e,t){this.callbacks.push(t)}},{key:`promise`,value:function(){var e=[...arguments];return Promise.all(this.callbacks.map(function(t){return t.apply(void 0,e)}))}}])}(),gu=function(){function e(){b(this,e),this.callbacks=[]}return S(e,[{key:`tapPromise`,value:function(e,t){this.callbacks.push(t)}},{key:`promise`,value:function(){var e=xa(ya().mark(function e(){var t,n,r,i,a=arguments;return ya().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.callbacks.length){e.next=6;break}return e.next=1,(t=this.callbacks)[0].apply(t,a);case 1:n=e.sent,r=1;case 2:if(!(r<this.callbacks.length)){e.next=5;break}return i=this.callbacks[r],e.next=3,i(n);case 3:n=e.sent;case 4:r++,e.next=2;break;case 5:return e.abrupt(`return`,n);case 6:return e.abrupt(`return`,null);case 7:case`end`:return e.stop()}},e,this)}));function t(){return e.apply(this,arguments)}return t}()}])}(),_u=function(){function e(){b(this,e),this.callbacks=[]}return S(e,[{key:`tap`,value:function(e,t){this.callbacks.push(t)}},{key:`call`,value:function(){var e=arguments;this.callbacks.forEach(function(t){t.apply(void 0,e)})}}])}(),vu=function(){function e(){b(this,e),this.callbacks=[]}return S(e,[{key:`tap`,value:function(e,t){this.callbacks.push(t)}},{key:`call`,value:function(){if(this.callbacks.length){for(var e=arguments,t=this.callbacks[0].apply(void 0,e),n=1;n<this.callbacks.length;n++){var r=this.callbacks[n];t=r(t)}return t}return null}}])}(),yu=[`serif`,`sans-serif`,`monospace`,`cursive`,`fantasy`,`system-ui`],bu=/([\"\'])[^\'\"]+\1/;function xu(e){var t=e.fontSize,n=t===void 0?16:t,r=e.fontFamily,i=r===void 0?`sans-serif`:r,a=e.fontStyle,o=a===void 0?`normal`:a,s=e.fontVariant,c=s===void 0?`normal`:s,l=e.fontWeight;return{fontSize:n,fontFamily:i,fontStyle:o,fontVariant:c,fontWeight:l===void 0?`normal`:l}}var Su=cs(function(e){for(var t=xu(e),n=t.fontSize,r=t.fontFamily,i=t.fontStyle,a=t.fontVariant,o=t.fontWeight,s=hn(n)&&`${n}px`||`16px`,c=r.split(`,`),l=c.length-1;l>=0;l--){var u=c[l].trim();!bu.test(u)&&yu.indexOf(u)<0&&(u=`"${u}"`),c[l]=u}return`${i} ${a} ${o} ${s} ${c.join(`,`)}`},function(e){var t=xu(e),n=t.fontSize,r=t.fontFamily;return`${t.fontStyle}_${t.fontVariant}_${t.fontWeight}_${n}_${r}`}),Cu=1e-6,wu=function(e){return Math.max(e,Cu)};function Tu(e,t,n){return ce(e),e[4]=Math.tan(t),e[1]=Math.tan(n),e}var Eu=P(),Du=P(),Ou={scale:function(e){be(Eu,[e[0].value,e[1].value,1].map(function(e){return wu(e)}))},scaleX:function(e){be(Eu,[e[0].value,1,1].map(function(e){return wu(e)}))},scaleY:function(e){be(Eu,[1,e[0].value,1].map(function(e){return wu(e)}))},scaleZ:function(e){be(Eu,[1,1,e[0].value].map(function(e){return wu(e)}))},scale3d:function(e){be(Eu,[e[0].value,e[1].value,e[2].value].map(function(e){return wu(e)}))},translate:function(e){ye(Eu,[e[0].value,e[1].value,0])},translateX:function(e){ye(Eu,[e[0].value,0,0])},translateY:function(e){ye(Eu,[0,e[0].value,0])},translateZ:function(e){ye(Eu,[0,0,e[0].value])},translate3d:function(e){ye(Eu,[e[0].value,e[1].value,e[2].value])},rotate:function(e){we(Eu,Ua(dc(e[0])))},rotateX:function(e){Se(Eu,Ua(dc(e[0])))},rotateY:function(e){Ce(Eu,Ua(dc(e[0])))},rotateZ:function(e){we(Eu,Ua(dc(e[0])))},rotate3d:function(e){xe(Eu,Ua(dc(e[3])),[e[0].value,e[1].value,e[2].value])},skew:function(e){Tu(Eu,Ua(e[0].value),Ua(e[1].value))},skewX:function(e){Tu(Eu,Ua(e[0].value),0)},skewY:function(e){Tu(Eu,0,Ua(e[0].value))},matrix:function(e){se(Eu,e[0].value,e[1].value,0,0,e[2].value,e[3].value,0,0,0,0,1,0,e[4].value,e[5].value,0,1)},matrix3d:function(e){se.apply(N,[Eu].concat(l(e.map(function(e){return e.value}))))}},ku=rt(1,1,1),Au=et(),ju={translate:function(e,t){Y.sceneGraphService.setLocalScale(e,ku,!1),Y.sceneGraphService.setLocalEulerAngles(e,Au,void 0,void 0,!1),Y.sceneGraphService.setLocalPosition(e,[t[0].value,t[1].value,0],!1),Y.sceneGraphService.dirtyLocalTransform(e,e.transformable)}};function Mu(e,t){if(e.length){if(e.length===1&&ju[e[0].t]){ju[e[0].t](t,e[0].d);return}for(var n=ce(Du),r=0;r<e.length;r++){var i=e[r],a=i.t,o=i.d,s=Ou[a];s&&(s(o),Qe(n,n,Eu))}t.setLocalTransform(n)}else t.resetLocalTransform();return t.getLocalTransform()}var Nu=function(){function e(){b(this,e),this.parser=Qc,this.mixer=dl}return S(e,[{key:`calculator`,value:function(e,t,n,r){return n instanceof ws?[]:n}},{key:`postProcessor`,value:function(e){Mu(e.parsedStyle.transform,e)}}])}(),Pu=function(){function e(){b(this,e)}return S(e,[{key:`postProcessor`,value:function(e){var t=e.parsedStyle.transformOrigin;t[0].unit===q.kPixels&&t[1].unit===q.kPixels?e.setOrigin(t[0].value,t[1].value):e.getGeometryBounds()}}])}(),Fu=function(){function e(){b(this,e)}return S(e,[{key:`calculator`,value:function(e,t,n,r){return n.value}},{key:`postProcessor`,value:function(e){if(e.parentNode){var t=e.parentNode,n=t.renderable,r=t.sortable;n&&t.dirty(),r&&(r.dirty=!0,r.dirtyReason=go.Z_INDEX_CHANGED)}}}])}(),Iu=function(){function e(){b(this,e)}return S(e,[{key:`update`,value:function(e,t){var n=e.cx,r=n===void 0?0:n,i=e.cy,a=i===void 0?0:i,o=e.r,s=o===void 0?0:o;return{cx:r,cy:a,hwidth:s,hheight:s}}}])}(),Lu=function(){function e(){b(this,e)}return S(e,[{key:`update`,value:function(e,t){var n=e.cx,r=n===void 0?0:n,i=e.cy,a=i===void 0?0:i,o=e.rx,s=o===void 0?0:o,c=e.ry;return{cx:r,cy:a,hwidth:s,hheight:c===void 0?0:c}}}])}(),Ru=function(){function e(){b(this,e)}return S(e,[{key:`update`,value:function(e){var t=e.x1,n=e.y1,r=e.x2,i=e.y2,a=Math.min(t,r),o=Math.max(t,r),s=Math.min(n,i),c=Math.max(n,i),l=o-a,u=c-s,d=l/2,f=u/2;return{cx:a+d,cy:s+f,hwidth:d,hheight:f}}}])}(),zu=function(){function e(){b(this,e)}return S(e,[{key:`update`,value:function(e){var t=e.d.rect,n=t.x,r=t.y,i=t.width,a=t.height,o=i/2,s=a/2;return{cx:n+o,cy:r+s,hwidth:o,hheight:s}}}])}(),Bu=function(){function e(){b(this,e)}return S(e,[{key:`update`,value:function(e){if(e.points&&Qt(e.points.points)){var t=e.points.points,n=Math.min.apply(Math,l(t.map(function(e){return e[0]}))),r=Math.max.apply(Math,l(t.map(function(e){return e[0]}))),i=Math.min.apply(Math,l(t.map(function(e){return e[1]}))),a=Math.max.apply(Math,l(t.map(function(e){return e[1]}))),o=r-n,s=a-i,c=o/2,u=s/2;return{cx:n+c,cy:i+u,hwidth:c,hheight:u}}return{cx:0,cy:0,hwidth:0,hheight:0}}}])}(),Vu=function(){function e(){b(this,e)}return S(e,[{key:`update`,value:function(e,t){var n=e.x,r=n===void 0?0:n,i=e.y,a=i===void 0?0:i,o=e.src,s=e.width,c=s===void 0?0:s,l=e.height,u=l===void 0?0:l,d=c,f=u;return o&&!un(o)&&(d||(d=o.width,e.width=d),f||(f=o.height,e.height=f)),{cx:r+d/2,cy:a+f/2,hwidth:d/2,hheight:f/2}}}])}(),Hu=function(){function e(t){b(this,e),this.globalRuntime=t}return S(e,[{key:`isReadyToMeasure`,value:function(e,t){return e.text}},{key:`update`,value:function(e,t){var n,r=e.text,i=e.textAlign,a=i===void 0?`start`:i,o=e.lineWidth,s=o===void 0?1:o,c=e.textBaseline,l=c===void 0?`alphabetic`:c,u=e.dx,d=u===void 0?0:u,f=e.dy,p=f===void 0?0:f,m=e.x,h=m===void 0?0:m,g=e.y,_=g===void 0?0:g;if(!this.isReadyToMeasure(e,t))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 v=((t==null||(n=t.ownerDocument)==null||(n=n.defaultView)==null?void 0:n.getConfig())||{}).offscreenCanvas,y=this.globalRuntime.textService.measureText(r,e,v);e.metrics=y;var b=y.width,x=y.height,S=b/2,C=x/2,w=h+S;a===`center`||a===`middle`?w+=s/2-S:(a===`right`||a===`end`)&&(w+=s-S*2);var T=_-C;return l===`middle`?T+=C:l===`top`||l===`hanging`?T+=C*2:l===`alphabetic`||(l===`bottom`||l===`ideographic`)&&(T+=0),d&&(w+=d),p&&(T+=p),{cx:w,cy:T,hwidth:S,hheight:C}}}])}(),Uu=function(){function e(){b(this,e)}return S(e,[{key:`update`,value:function(e,t){return{cx:0,cy:0,hwidth:0,hheight:0}}}])}(),Wu=function(){function e(){b(this,e)}return S(e,[{key:`update`,value:function(e,t){var n=e.x,r=n===void 0?0:n,i=e.y,a=i===void 0?0:i,o=e.width,s=o===void 0?0:o,c=e.height,l=c===void 0?0:c;return{cx:r+s/2,cy:a+l/2,hwidth:s/2,hheight:l/2}}}])}(),Gu=function(){function e(t){b(this,e),this.eventPhase=e.prototype.NONE,this.bubbles=!0,this.cancelBubble=!0,this.cancelable=!1,this.defaultPrevented=!1,this.propagationStopped=!1,this.propagationImmediatelyStopped=!1,this.layer=new Pa,this.page=new Pa,this.canvas=new Pa,this.viewport=new Pa,this.composed=!1,this.NONE=0,this.CAPTURING_PHASE=1,this.AT_TARGET=2,this.BUBBLING_PHASE=3,this.manager=t}return S(e,[{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 Error(Ia)}}])}(),Ku=function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.client=new Pa,e.movement=new Pa,e.offset=new Pa,e.global=new Pa,e.screen=new Pa,e}return T(t,e),S(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(e){return`getModifierState`in this.nativeEvent&&this.nativeEvent.getModifierState(e)}},{key:`initMouseEvent`,value:function(){throw Error(Ia)}}])}(Gu),qu=function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.width=0,e.height=0,e.isPrimary=!1,e}return T(t,e),S(t,[{key:`getCoalescedEvents`,value:function(){return this.type===`pointermove`||this.type===`mousemove`||this.type===`touchmove`?[this]:[]}},{key:`getPredictedEvents`,value:function(){throw Error(`getPredictedEvents is not supported!`)}},{key:`clone`,value:function(){return this.manager.clonePointerEvent(this)}}])}(Ku),Ju=function(e){function t(){return b(this,t),k(this,t,arguments)}return T(t,e),S(t,[{key:`clone`,value:function(){return this.manager.cloneWheelEvent(this)}}])}(Ku),Yu=function(e){function t(e,n){var r;return b(this,t),r=k(this,t,[null]),r.type=e,r.detail=n?.detail,n&&!(`detail`in n)&&(r.detail=n),Object.assign(r,n),r}return T(t,e),S(t)}(Gu),Xu=function(){function e(){b(this,e),this.emitter=new te}return S(e,[{key:`on`,value:function(e,t,n){return this.addEventListener(e,t,n),this}},{key:`addEventListener`,value:function(e,t,n){var r=!1,i=!1;if(Dn(n))r=n;else if(n){var a=n.capture;r=a===void 0?!1:a;var o=n.once;i=o===void 0?!1:o}r&&(e+=`capture`),t=L(t)?t:t.handleEvent;var s=L(t)?void 0:t;return i?this.emitter.once(e,t,s):this.emitter.on(e,t,s),this}},{key:`off`,value:function(e,t,n){return e?this.removeEventListener(e,t,n):this.removeAllEventListeners(),this}},{key:`removeAllEventListeners`,value:function(){var e;(e=this.emitter)==null||e.removeAllListeners()}},{key:`removeEventListener`,value:function(e,t,n){if(!this.emitter)return this;(Dn(n)?n:n?.capture)&&(e+=`capture`),t=L(t)?t:t?.handleEvent;var r=L(t)?void 0:t;return this.emitter.off(e,t,r),this}},{key:`emit`,value:function(e,t){this.dispatchEvent(new Yu(e,t))}},{key:`dispatchEventToSelf`,value:function(e){e.target||=this,e.currentTarget=this,this.emitter.emit(e.type,e)}},{key:`dispatchEvent`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(arguments.length>2&&arguments[2])return this.dispatchEventToSelf(e),!0;var n=this.document?this:this.defaultView?this.defaultView:this.ownerDocument?.defaultView;if(n){if(e.manager=n.getEventService(),!e.manager)return!1;e.defaultPrevented=!1,e.path?e.path.length=0:e.page=[],t||(e.target=this),e.manager.dispatchEvent(e,e.type,t)}else this.dispatchEventToSelf(e);return!e.defaultPrevented}}])}(),Zu=function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),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 T(t,e),S(t,[{key:`textContent`,get:function(){var e=``;this.nodeName===U.TEXT&&(e+=this.style.text);var t=ee(this.childNodes),n;try{for(t.s();!(n=t.n()).done;){var r=n.value;r.nodeName===U.TEXT?e+=r.nodeValue:e+=r.textContent}}catch(e){t.e(e)}finally{t.f()}return e},set:function(e){var t=this;this.childNodes.slice().forEach(function(e){t.removeChild(e)}),this.nodeName===U.TEXT&&(this.style.text=`${e}`)}},{key:`getRootNode`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return this.parentNode?this.parentNode.getRootNode(e):e.composed&&this.host?this.host.getRootNode(e):this}},{key:`hasChildNodes`,value:function(){return this.childNodes.length>0}},{key:`isDefaultNamespace`,value:function(e){throw Error(Ia)}},{key:`lookupNamespaceURI`,value:function(e){throw Error(Ia)}},{key:`lookupPrefix`,value:function(e){throw Error(Ia)}},{key:`normalize`,value:function(){throw Error(Ia)}},{key:`isEqualNode`,value:function(e){return this===e}},{key:`isSameNode`,value:function(e){return this.isEqualNode(e)}},{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(e){if(e===this)return 0;for(var n=e,r=this,i=[n],a=[r];(o=n.parentNode)??r.parentNode;){var o;n=n.parentNode?(i.push(n.parentNode),n.parentNode):n,r=r.parentNode?(a.push(r.parentNode),r.parentNode):r}if(n!==r)return t.DOCUMENT_POSITION_DISCONNECTED|t.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|t.DOCUMENT_POSITION_PRECEDING;var s=i.length>a.length?i:a,c=s===i?a:i;if(s[s.length-c.length]===c[0])return s===i?t.DOCUMENT_POSITION_CONTAINED_BY|t.DOCUMENT_POSITION_FOLLOWING:t.DOCUMENT_POSITION_CONTAINS|t.DOCUMENT_POSITION_PRECEDING;for(var l=s.length-c.length,u=c.length-1;u>=0;u--){var d=c[u],f=s[l+u];if(f!==d){var p=d.parentNode.childNodes;return p.indexOf(d)<p.indexOf(f)?c===i?t.DOCUMENT_POSITION_PRECEDING:t.DOCUMENT_POSITION_FOLLOWING:s===i?t.DOCUMENT_POSITION_PRECEDING:t.DOCUMENT_POSITION_FOLLOWING}}return t.DOCUMENT_POSITION_FOLLOWING}},{key:`contain`,value:function(e){return this.contains(e)}},{key:`contains`,value:function(e){for(var t=e;t&&this!==t;)t=t.parentNode;return!!t}},{key:`getAncestor`,value:function(e){for(var t=this;e>0&&t;)t=t.parentNode,e--;return t}},{key:`forEach`,value:function(e){for(var t=[this];t.length>0;){var n=t.pop();if(e(n)===!1)break;for(var r=n.childNodes.length-1;r>=0;r--)t.push(n.childNodes[r])}}}],[{key:`isNode`,value:function(e){return!!e.childNodes}}])}(Xu);Zu.DOCUMENT_POSITION_DISCONNECTED=1,Zu.DOCUMENT_POSITION_PRECEDING=2,Zu.DOCUMENT_POSITION_FOLLOWING=4,Zu.DOCUMENT_POSITION_CONTAINS=8,Zu.DOCUMENT_POSITION_CONTAINED_BY=16,Zu.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;var Qu=2048,$u=function(){function e(t,n){var r=this;b(this,e),this.nativeHTMLMap=new WeakMap,this.cursor=`default`,this.mappingTable={},this.mappingState={trackingData:{}},this.eventPool=new Map,this.tmpMatrix=P(),this.tmpVec3=et(),this.onPointerDown=function(e){var t=r.createPointerEvent(e);if(r.dispatchEvent(t,`pointerdown`),t.pointerType===`touch`)r.dispatchEvent(t,`touchstart`);else if(t.pointerType===`mouse`||t.pointerType===`pen`){var n=t.button===2;r.dispatchEvent(t,n?`rightdown`:`mousedown`)}var i=r.trackingData(e.pointerId);i.pressTargetsByButton[e.button]=t.composedPath(),r.freeEvent(t)},this.onPointerUp=function(e){var t=Zl.now(),n=r.createPointerEvent(e,void 0,void 0,r.context.config.alwaysTriggerPointerEventOnCanvas?r.rootTarget:void 0);if(r.dispatchEvent(n,`pointerup`),n.pointerType===`touch`)r.dispatchEvent(n,`touchend`);else if(n.pointerType===`mouse`||n.pointerType===`pen`){var i=n.button===2;r.dispatchEvent(n,i?`rightup`:`mouseup`)}var a=r.trackingData(e.pointerId),o=r.findMountedTarget(a.pressTargetsByButton[e.button]),s=o;if(o&&!n.composedPath().includes(o)){for(var c=o;c&&!n.composedPath().includes(c);){if(n.currentTarget=c,r.notifyTarget(n,`pointerupoutside`),n.pointerType===`touch`)r.notifyTarget(n,`touchendoutside`);else if(n.pointerType===`mouse`||n.pointerType===`pen`){var l=n.button===2;r.notifyTarget(n,l?`rightupoutside`:`mouseupoutside`)}Zu.isNode(c)&&(c=c.parentNode)}delete a.pressTargetsByButton[e.button],s=c}if(s){var u,d=r.clonePointerEvent(n,`click`);d.target=s,d.path=[],a.clicksByButton[e.button]||(a.clicksByButton[e.button]={clickCount:0,target:d.target,timeStamp:t});var f=r.context.renderingContext.root.ownerDocument.defaultView,p=a.clicksByButton[e.button];p.target===d.target&&t-p.timeStamp<f.getConfig().dblClickSpeed?++p.clickCount:p.clickCount=1,p.target=d.target,p.timeStamp=t,d.detail=p.clickCount,(u=n.detail)!=null&&u.preventClick||(!r.context.config.useNativeClickEvent&&(d.pointerType===`mouse`||d.pointerType===`touch`)&&r.dispatchEvent(d,`click`),r.dispatchEvent(d,`pointertap`)),r.freeEvent(d)}r.freeEvent(n)},this.onPointerMove=function(e){var t=r.createPointerEvent(e,void 0,void 0,r.context.config.alwaysTriggerPointerEventOnCanvas?r.rootTarget:void 0),n=t.pointerType===`mouse`||t.pointerType===`pen`,i=r.trackingData(e.pointerId),a=r.findMountedTarget(i.overTargets);if(i.overTargets&&a!==t.target){var o=e.type===`mousemove`?`mouseout`:`pointerout`,s=r.createPointerEvent(e,o,a||void 0);if(r.dispatchEvent(s,`pointerout`),n&&r.dispatchEvent(s,`mouseout`),!t.composedPath().includes(a)){var c=r.createPointerEvent(e,`pointerleave`,a||void 0);for(c.eventPhase=c.AT_TARGET;c.target&&!t.composedPath().includes(c.target);)c.currentTarget=c.target,r.notifyTarget(c),n&&r.notifyTarget(c,`mouseleave`),Zu.isNode(c.target)&&(c.target=c.target.parentNode);r.freeEvent(c)}r.freeEvent(s)}if(a!==t.target){var l=e.type===`mousemove`?`mouseover`:`pointerover`,u=r.clonePointerEvent(t,l);r.dispatchEvent(u,`pointerover`),n&&r.dispatchEvent(u,`mouseover`);for(var d=a&&Zu.isNode(a)&&a.parentNode;d&&d!==(Zu.isNode(r.rootTarget)&&r.rootTarget.parentNode)&&d!==t.target;)d=d.parentNode;if(!d||d===(Zu.isNode(r.rootTarget)&&r.rootTarget.parentNode)){var f=r.clonePointerEvent(t,`pointerenter`);for(f.eventPhase=f.AT_TARGET;f.target&&f.target!==a&&f.target!==(Zu.isNode(r.rootTarget)&&r.rootTarget.parentNode);)f.currentTarget=f.target,r.notifyTarget(f),n&&r.notifyTarget(f,`mouseenter`),Zu.isNode(f.target)&&(f.target=f.target.parentNode);r.freeEvent(f)}r.freeEvent(u)}r.dispatchEvent(t,`pointermove`),t.pointerType===`touch`&&r.dispatchEvent(t,`touchmove`),n&&(r.dispatchEvent(t,`mousemove`),r.cursor=r.getCursor(t.target)),i.overTargets=t.composedPath(),r.freeEvent(t)},this.onPointerOut=function(e){var t=r.trackingData(e.pointerId);if(t.overTargets){var n=e.pointerType===`mouse`||e.pointerType===`pen`,i=r.findMountedTarget(t.overTargets),a=r.createPointerEvent(e,`pointerout`,i||void 0);r.dispatchEvent(a),n&&r.dispatchEvent(a,`mouseout`);var o=r.createPointerEvent(e,`pointerleave`,i||void 0);for(o.eventPhase=o.AT_TARGET;o.target&&o.target!==(Zu.isNode(r.rootTarget)&&r.rootTarget.parentNode);)o.currentTarget=o.target,r.notifyTarget(o),n&&r.notifyTarget(o,`mouseleave`),Zu.isNode(o.target)&&(o.target=o.target.parentNode);t.overTargets=null,r.freeEvent(a),r.freeEvent(o)}r.cursor=null},this.onPointerOver=function(e){var t=r.trackingData(e.pointerId),n=r.createPointerEvent(e),i=n.pointerType===`mouse`||n.pointerType===`pen`;r.dispatchEvent(n,`pointerover`),i&&r.dispatchEvent(n,`mouseover`),n.pointerType===`mouse`&&(r.cursor=r.getCursor(n.target));var a=r.clonePointerEvent(n,`pointerenter`);for(a.eventPhase=a.AT_TARGET;a.target&&a.target!==(Zu.isNode(r.rootTarget)&&r.rootTarget.parentNode);)a.currentTarget=a.target,r.notifyTarget(a),i&&r.notifyTarget(a,`mouseenter`),Zu.isNode(a.target)&&(a.target=a.target.parentNode);t.overTargets=n.composedPath(),r.freeEvent(n),r.freeEvent(a)},this.onPointerUpOutside=function(e){var t=r.trackingData(e.pointerId),n=r.findMountedTarget(t.pressTargetsByButton[e.button]),i=r.createPointerEvent(e);if(n){for(var a=n;a;)i.currentTarget=a,r.notifyTarget(i,`pointerupoutside`),i.pointerType===`touch`||(i.pointerType===`mouse`||i.pointerType===`pen`)&&r.notifyTarget(i,i.button===2?`rightupoutside`:`mouseupoutside`),Zu.isNode(a)&&(a=a.parentNode);delete t.pressTargetsByButton[e.button]}r.freeEvent(i)},this.onWheel=function(e){var t=r.createWheelEvent(e);r.dispatchEvent(t),r.freeEvent(t)},this.onClick=function(e){if(r.context.config.useNativeClickEvent){var t=r.createPointerEvent(e);r.dispatchEvent(t),r.freeEvent(t)}},this.onPointerCancel=function(e){var t=r.createPointerEvent(e,void 0,void 0,r.context.config.alwaysTriggerPointerEventOnCanvas?r.rootTarget:void 0);r.dispatchEvent(t),r.freeEvent(t)},this.globalRuntime=t,this.context=n}return S(e,[{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(),t=1,n=1,r=this.context.contextService.getDomElement();if(r&&e){var i=r.offsetWidth,a=r.offsetHeight;i&&a&&(t=e.width/i,n=e.height/a)}return{scaleX:t,scaleY:n,bbox:e}}},{key:`client2Viewport`,value:function(e){var t=this.getScale(),n=t.scaleX,r=t.scaleY,i=t.bbox;return new Pa((e.x-(i?.left||0))/n,(e.y-(i?.top||0))/r)}},{key:`viewport2Client`,value:function(e){var t=this.getScale(),n=t.scaleX,r=t.scaleY,i=t.bbox;return new Pa((e.x+(i?.left||0))*n,(e.y+(i?.top||0))*r)}},{key:`viewport2Canvas`,value:function(e){var t=e.x,n=e.y,r=this.rootTarget.defaultView.getCamera(),i=this.context.config,a=i.width,o=i.height,s=r.getPerspectiveInverse(),c=r.getWorldTransform(),l=pe(this.tmpMatrix,c,s),u=at(this.tmpVec3,t/a*2-1,(1-n/o)*2-1,0);return _t(u,u,l),new Pa(u[0],u[1])}},{key:`canvas2Viewport`,value:function(e){var t=this.rootTarget.defaultView.getCamera(),n=t.getPerspective(),r=t.getViewTransform(),i=pe(this.tmpMatrix,n,r),a=at(this.tmpVec3,e.x,e.y,0);_t(this.tmpVec3,this.tmpVec3,i);var o=this.context.config,s=o.width,c=o.height;return new Pa((a[0]+1)/2*s,(1-(a[1]+1)/2)*c)}},{key:`setPickHandler`,value:function(e){this.pickHandler=e}},{key:`addEventMapping`,value:function(e,t){this.mappingTable[e]||(this.mappingTable[e]=[]),this.mappingTable[e].push({fn:t,priority:0}),this.mappingTable[e].sort(function(e,t){return e.priority-t.priority})}},{key:`mapEvent`,value:function(e){if(this.rootTarget){var t=this.mappingTable[e.type];if(t)for(var n=0,r=t.length;n<r;n++)t[n].fn(e);else console.warn(`[EventService]: Event mapping not defined for ${e.type}`)}}},{key:`dispatchEvent`,value:function(e,t,n){n?(e.eventPhase=e.AT_TARGET,e.currentTarget=this.rootTarget.defaultView||null,this.notifyListeners(e,t)):(e.propagationStopped=!1,e.propagationImmediatelyStopped=!1,this.propagate(e,t))}},{key:`propagate`,value:function(e,t){if(e.target){var n=e.composedPath();e.eventPhase=e.CAPTURING_PHASE;for(var r=n.length-1;r>=1;r--)if(e.currentTarget=n[r],this.notifyTarget(e,t),e.propagationStopped||e.propagationImmediatelyStopped)return;if(e.eventPhase=e.AT_TARGET,e.currentTarget=e.target,this.notifyTarget(e,t),!(e.propagationStopped||e.propagationImmediatelyStopped)){var i=n.indexOf(e.currentTarget);e.eventPhase=e.BUBBLING_PHASE;for(var a=i+1;a<n.length;a++)if(e.currentTarget=n[a],this.notifyTarget(e,t),e.propagationStopped||e.propagationImmediatelyStopped)return}}}},{key:`propagationPath`,value:function(e){var t=[e],n=this.rootTarget.defaultView||null;if(n&&n===e)return t.unshift(n.document),t;for(var r=0;r<Qu&&e!==this.rootTarget;r++)Zu.isNode(e)&&e.parentNode&&(t.push(e.parentNode),e=e.parentNode);return n&&t.push(n),t}},{key:`hitTest`,value:function(e){var t=e.viewportX,n=e.viewportY,r=this.context.config,i=r.width,a=r.height,o=r.disableHitTesting;return t<0||n<0||t>i||n>a?null:!o&&this.pickHandler(e)||this.rootTarget||null}},{key:`isNativeEventFromCanvas`,value:function(e,t){var n,r=t?.target;if((n=r)!=null&&n.shadowRoot&&(r=t.composedPath()[0]),r){if(r===e)return!0;if(e&&e.contains)return e.contains(r)}return t!=null&&t.composedPath?t.composedPath().indexOf(e)>-1:!1}},{key:`getExistedHTML`,value:function(e){if(e.nativeEvent.composedPath)for(var t=0,n=e.nativeEvent.composedPath();t<n.length;t++){var r=n[t],i=this.nativeHTMLMap.get(r);if(i)return i}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,t,n,r){var i=this.allocateEvent(qu);this.copyPointerData(e,i),this.copyMouseData(e,i),this.copyData(e,i),i.nativeEvent=e.nativeEvent,i.originalEvent=e;var a=this.getExistedHTML(i),o=this.context.contextService.getDomElement();return i.target=n??(a||this.isNativeEventFromCanvas(o,i.nativeEvent)&&this.pickTarget(i)||r),typeof t==`string`&&(i.type=t),i}},{key:`createWheelEvent`,value:function(e){var t=this.allocateEvent(Ju);this.copyWheelData(e,t),this.copyMouseData(e,t),this.copyData(e,t),t.nativeEvent=e.nativeEvent,t.originalEvent=e;var n=this.getExistedHTML(t),r=this.context.contextService.getDomElement();return t.target=n||this.isNativeEventFromCanvas(r,t.nativeEvent)&&this.pickTarget(t),t}},{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 t=this.allocateEvent(Ju);return t.nativeEvent=e.nativeEvent,t.originalEvent=e.originalEvent,this.copyWheelData(e,t),this.copyMouseData(e,t),this.copyData(e,t),t.target=e.target,t.path=e.composedPath().slice(),t.type=e.type,t}},{key:`clonePointerEvent`,value:function(e,t){var n=this.allocateEvent(qu);return n.nativeEvent=e.nativeEvent,n.originalEvent=e.originalEvent,this.copyPointerData(e,n),this.copyMouseData(e,n),this.copyData(e,n),n.target=e.target,n.path=e.composedPath().slice(),n.type=t??n.type,n}},{key:`copyPointerData`,value:function(e,t){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}},{key:`copyMouseData`,value:function(e,t){t.altKey=e.altKey,t.button=e.button,t.buttons=e.buttons,t.ctrlKey=e.ctrlKey,t.metaKey=e.metaKey,t.shiftKey=e.shiftKey,t.client.copyFrom(e.client),t.movement.copyFrom(e.movement),t.canvas.copyFrom(e.canvas),t.screen.copyFrom(e.screen),t.global.copyFrom(e.global),t.offset.copyFrom(e.offset)}},{key:`copyWheelData`,value:function(e,t){t.deltaMode=e.deltaMode,t.deltaX=e.deltaX,t.deltaY=e.deltaY,t.deltaZ=e.deltaZ}},{key:`copyData`,value:function(e,t){t.isTrusted=e.isTrusted,t.timeStamp=Zl.now(),t.type=e.type,t.detail=e.detail,t.view=e.view,t.page.copyFrom(e.page),t.viewport.copyFrom(e.viewport)}},{key:`allocateEvent`,value:function(e){this.eventPool.has(e)||this.eventPool.set(e,[]);var t=this.eventPool.get(e).pop()||new e(this);return t.eventPhase=t.NONE,t.currentTarget=null,t.path=[],t.target=null,t}},{key:`freeEvent`,value:function(e){if(e.manager!==this)throw Error(`It is illegal to free an event not managed by this EventBoundary!`);var t=e.constructor;this.eventPool.has(t)||this.eventPool.set(t,[]),this.eventPool.get(t).push(e)}},{key:`notifyTarget`,value:function(e,t){t??=e.type;var n=e.eventPhase===e.CAPTURING_PHASE||e.eventPhase===e.AT_TARGET?`${t}capture`:t;this.notifyListeners(e,n),e.eventPhase===e.AT_TARGET&&this.notifyListeners(e,t)}},{key:`notifyListeners`,value:function(e,t){var n=e.currentTarget.emitter,r=n._events[t];if(r)if(`fn`in r)r.once&&n.removeListener(t,r.fn,void 0,!0),r.fn.call(e.currentTarget||r.context,e);else for(var i=0;i<r.length&&!e.propagationImmediatelyStopped;i++)r[i].once&&n.removeListener(t,r[i].fn,void 0,!0),r[i].fn.call(e.currentTarget||r[i].context,e)}},{key:`findMountedTarget`,value:function(e){if(!e)return null;for(var t=e[e.length-1],n=e.length-2;n>=0;n--){var r=e[n];if(r===this.rootTarget||Zu.isNode(r)&&r.parentNode===t)t=e[n];else break}return t}},{key:`getCursor`,value:function(e){for(var t=e;t;){var n=Bl(t)&&t.getAttribute(`cursor`);if(n)return n;t=Zu.isNode(t)&&t.parentNode}}}])}(),ed=function(){function e(){b(this,e)}return S(e,[{key:`getOrCreateCanvas`,value:function(e,t){if(this.canvas)return this.canvas;if(e||Y.offscreenCanvas)this.canvas=e||Y.offscreenCanvas,this.context=this.canvas.getContext(`2d`,y({willReadFrequently:!0},t));else try{this.canvas=new window.OffscreenCanvas(0,0),this.context=this.canvas.getContext(`2d`,y({willReadFrequently:!0},t)),(!this.context||!this.context.measureText)&&(this.canvas=document.createElement(`canvas`),this.context=this.canvas.getContext(`2d`))}catch{this.canvas=document.createElement(`canvas`),this.context=this.canvas.getContext(`2d`,y({willReadFrequently:!0},t))}return this.canvas.width=10,this.canvas.height=10,this.canvas}},{key:`getOrCreateContext`,value:function(e,t){return this.context||this.getOrCreateCanvas(e,t),this.context}}],[{key:`createCanvas`,value:function(){try{return new window.OffscreenCanvas(0,0)}catch{}try{return document.createElement(`canvas`)}catch{}return null}}])}(),td=function(e){return e[e.CAMERA_CHANGED=0]=`CAMERA_CHANGED`,e[e.DISPLAY_OBJECT_CHANGED=1]=`DISPLAY_OBJECT_CHANGED`,e[e.NONE=2]=`NONE`,e}({}),nd=function(){function e(t,n){b(this,e),this.inited=!1,this.stats={total:0,rendered:0},this.zIndexCounter=0,this.hooks={init:new _u,initAsync:new hu,dirtycheck:new vu,cull:new vu,beginFrame:new _u,beforeRender:new _u,render:new _u,afterRender:new _u,endFrame:new _u,destroy:new _u,pick:new gu,pickSync:new vu,pointerDown:new _u,pointerUp:new _u,pointerMove:new _u,pointerOut:new _u,pointerOver:new _u,pointerWheel:new _u,pointerCancel:new _u,click:new _u},this.globalRuntime=t,this.context=n}return S(e,[{key:`init`,value:function(e){var t=this,n=y(y({},this.globalRuntime),this.context);this.context.renderingPlugins.forEach(function(e){e.apply(n,t.globalRuntime)}),this.hooks.init.call(),this.hooks.initAsync.getCallbacksNum()===0?(this.inited=!0,e()):this.hooks.initAsync.promise().then(function(){t.inited=!0,e()}).catch(function(e){})}},{key:`getStats`,value:function(){return this.stats}},{key:`disableDirtyRectangleRendering`,value:function(){return!this.context.config.renderer.getConfig().enableDirtyRectangleRendering||this.context.renderingContext.renderReasons.has(td.CAMERA_CHANGED)}},{key:`render`,value:function(e,t,n){var r=this,i=e.getConfig(),a=this.context.renderingContext;if(this.stats.total=0,this.stats.rendered=0,this.zIndexCounter=0,this.globalRuntime.sceneGraphService.syncHierarchy(a.root),this.globalRuntime.sceneGraphService.notifyMutationObservers(e),a.renderReasons.size&&this.inited){a.dirtyRectangleRenderingDisabled=this.disableDirtyRectangleRendering();var o=a.renderReasons.size===1&&a.renderReasons.has(td.CAMERA_CHANGED),s=!i.disableRenderHooks||!o;s&&this.renderDisplayObject(a.root,i,a),this.hooks.beginFrame.call(t),s&&a.renderListCurrentFrame.forEach(function(e){r.hooks.beforeRender.call(e),r.hooks.render.call(e),r.hooks.afterRender.call(e)}),this.hooks.endFrame.call(t),a.renderListCurrentFrame=[],a.renderReasons.clear(),n()}}},{key:`renderDisplayObject`,value:function(e,t,n){var r=this,i=t.renderer.getConfig(),a=i.enableDirtyCheck,o=i.enableCulling;function s(e){var t=e.renderable,i=e.sortable,s=a?t.dirty||n.dirtyRectangleRenderingDisabled?e:null:e,c=null;s&&(c=o?r.hooks.cull.call(s,r.context.camera):s,c&&(r.stats.rendered+=1,n.renderListCurrentFrame.push(c))),e.dirty(!1),i.renderOrder=r.zIndexCounter,r.zIndexCounter+=1,r.stats.total+=1,i.dirty&&(r.sort(e,i),i.dirty=!1,i.dirtyChildren=[],i.dirtyReason=void 0)}for(var c=[e];c.length>0;){var l,u=c.pop();s(u);for(var d=((l=u.sortable)==null||(l=l.sorted)==null?void 0:l.length)>0?u.sortable.sorted:u.childNodes,f=d.length-1;f>=0;f--)c.push(d[f])}}},{key:`sort`,value:function(e,t){var n;(t==null||(n=t.sorted)==null?void 0:n.length)>0&&t.dirtyReason!==go.Z_INDEX_CHANGED?t.dirtyChildren.forEach(function(n){var r=t.sorted.indexOf(n);if(r>-1&&t.sorted.splice(r,1),e.childNodes.indexOf(n)>-1)if(t.sorted.length===0)t.sorted.push(n);else{var i=Vl(t.sorted,n);t.sorted.splice(i,0,n)}}):t.sorted=e.childNodes.slice().sort(Hl),t.sorted?.length>0&&e.childNodes.filter(function(e){return e.parsedStyle.zIndex}).length===0&&(t.sorted=[])}},{key:`destroy`,value:function(){this.inited=!1,this.hooks.destroy.call()}},{key:`dirty`,value:function(){this.context.renderingContext.renderReasons.add(td.DISPLAY_OBJECT_CHANGED)}}])}(),rd=/\[\s*(.*)=(.*)\s*\]/,id=function(){function e(){b(this,e)}return S(e,[{key:`selectOne`,value:function(e,t){var n=this;if(e.startsWith(`.`))return t.find(function(t){return(t?.classList||[]).indexOf(n.getIdOrClassname(e))>-1});if(e.startsWith(`#`))return t.find(function(t){return t.id===n.getIdOrClassname(e)});if(e.startsWith(`[`)){var r=this.getAttribute(e),i=r.name,a=r.value;return i?t.find(function(e){return t!==e&&(i===`name`?e.name===a:n.attributeToString(e,i)===a)}):null}return t.find(function(n){return t!==n&&n.nodeName===e})}},{key:`selectAll`,value:function(e,t){var n=this;if(e.startsWith(`.`))return t.findAll(function(r){return t!==r&&(r?.classList||[]).indexOf(n.getIdOrClassname(e))>-1});if(e.startsWith(`#`))return t.findAll(function(r){return t!==r&&r.id===n.getIdOrClassname(e)});if(e.startsWith(`[`)){var r=this.getAttribute(e),i=r.name,a=r.value;return i?t.findAll(function(e){return t!==e&&(i===`name`?e.name===a:n.attributeToString(e,i)===a)}):[]}return t.findAll(function(n){return t!==n&&n.nodeName===e})}},{key:`is`,value:function(e,t){if(e.startsWith(`.`))return t.className===this.getIdOrClassname(e);if(e.startsWith(`#`))return t.id===this.getIdOrClassname(e);if(e.startsWith(`[`)){var n=this.getAttribute(e),r=n.name,i=n.value;return r===`name`?t.name===i:this.attributeToString(t,r)===i}return t.nodeName===e}},{key:`getIdOrClassname`,value:function(e){return e.substring(1)}},{key:`getAttribute`,value:function(e){var t=e.match(rd),n=``,r=``;return t&&t.length>2&&(n=t[1].replace(/"/g,``),r=t[2].replace(/"/g,``)),{name:n,value:r}}},{key:`attributeToString`,value:function(e,t){if(!e.getAttribute)return``;var n=e.getAttribute(t);return R(n)?``:n.toString?n.toString():``}}])}(),ad=function(e){return e.ATTR_MODIFIED=`DOMAttrModified`,e.INSERTED=`DOMNodeInserted`,e.MOUNTED=`DOMNodeInsertedIntoDocument`,e.REMOVED=`removed`,e.UNMOUNTED=`DOMNodeRemovedFromDocument`,e.REPARENT=`reparent`,e.DESTROY=`destroy`,e.BOUNDS_CHANGED=`bounds-changed`,e.CULLED=`culled`,e}({}),od=function(e){function t(e,n,r,i,a,o,s,c){var l;return b(this,t),l=k(this,t,[null]),l.relatedNode=n,l.prevValue=r,l.newValue=i,l.attrName=a,l.attrChange=o,l.prevParsedValue=s,l.newParsedValue=c,l.type=e,l}return T(t,e),S(t)}(Gu);od.ADDITION=2,od.MODIFICATION=1,od.REMOVAL=3;var sd=new od(ad.REPARENT,null,``,``,``,0,``,``),cd=Ht(),ld=et(),ud=rt(1,1,1),dd=P(),fd=Ht(),pd=et(),md=P(),hd=At(),gd=et(),_d=At(),vd=et(),yd=et(),bd=et(),xd=P(),Sd=At(),Cd=At(),wd=At(),Td=function(){function e(t){b(this,e),this.displayObjectDependencyMap=new WeakMap,this.runtime=t}return S(e,[{key:`matches`,value:function(e,t){return this.runtime.sceneGraphSelector.is(e,t)}},{key:`querySelector`,value:function(e,t){return this.runtime.sceneGraphSelector.selectOne(e,t)}},{key:`querySelectorAll`,value:function(e,t){return this.runtime.sceneGraphSelector.selectAll(e,t)}},{key:`attach`,value:function(e,t,n){var r,i=!1;e.parentNode&&(i=e.parentNode!==t,this.detach(e));var a=e.nodeName===U.FRAGMENT,o=Ql(t);e.parentNode=t;var s=a?e.childNodes:[e];hn(n)?s.forEach(function(e){t.childNodes.splice(n,0,e),e.parentNode=t}):s.forEach(function(e){t.childNodes.push(e),e.parentNode=t});var c=t.sortable;if((c!=null&&(r=c.sorted)!=null&&r.length||c.dirty||e.parsedStyle.zIndex)&&(c.dirtyChildren.indexOf(e)===-1&&c.dirtyChildren.push(e),c.dirty=!0,c.dirtyReason=go.ADDED),!o){if(a)this.dirtyFragment(e);else{var l=e.transformable;l&&this.dirtyWorldTransform(e,l)}if(i){var u,d=((u=t.ownerDocument)==null||(u=u.defaultView)==null||(u=u.getConfig())==null||(u=u.future)==null?void 0:u.experimentalCancelEventPropagation)===!0;e.dispatchEvent(sd,d,d)}}}},{key:`detach`,value:function(e){var t,n;if(e.parentNode){var r=e.transformable,i=e.parentNode.sortable;(i!=null&&(t=i.sorted)!=null&&t.length||(n=e.style)!=null&&n.zIndex)&&(i.dirtyChildren.indexOf(e)===-1&&i.dirtyChildren.push(e),i.dirty=!0,i.dirtyReason=go.REMOVED);var a=e.parentNode.childNodes.indexOf(e);a>-1&&e.parentNode.childNodes.splice(a,1),r&&this.dirtyWorldTransform(e,r),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 t=e.transformable;return bo(t),t.localTransform}},{key:`setLocalPosition`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=e.transformable;yd[0]=t[0],yd[1]=t[1],yd[2]=t[2]??0,!bt(r.localPosition,yd)&&(it(r.localPosition,yd),n&&this.dirtyLocalTransform(e,r))}},{key:`translateLocal`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=rt(t,n,r));var i=e.transformable;bt(t,ld)||(yt(t,t,i.localRotation),ot(i.localPosition,i.localPosition,t),this.dirtyLocalTransform(e,i))}},{key:`setLocalRotation`,value:function(e,t,n,r,i){var a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;typeof t==`number`&&(t=zt(hd,t,n,r,i));var o=e.transformable;Rt(o.localRotation,t),a&&this.dirtyLocalTransform(e,o)}},{key:`rotateLocal`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=rt(t,n,r));var i=e.transformable;It(Cd,t[0],t[1],t[2]),Bt(i.localRotation,i.localRotation,Cd),this.dirtyLocalTransform(e,i)}},{key:`setLocalScale`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=e.transformable;at(pd,t[0],t[1],t[2]??r.localScale[2]),!bt(pd,r.localScale)&&(it(r.localScale,pd),n&&this.dirtyLocalTransform(e,r))}},{key:`scaleLocal`,value:function(e,t){var n=e.transformable;ct(n.localScale,n.localScale,at(pd,t[0],t[1],t[2]??1)),this.dirtyLocalTransform(e,n)}},{key:`setLocalSkew`,value:function(e,t,n){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;typeof t==`number`&&(t=Wt(fd,t,n));var i=e.transformable;Ut(i.localSkew,t),r&&this.dirtyLocalTransform(e,i)}},{key:`setLocalEulerAngles`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;typeof t==`number`&&(t=rt(t,n,r));var a=e.transformable;It(a.localRotation,t[0],t[1],t[2]),i&&this.dirtyLocalTransform(e,a)}},{key:`setLocalTransform`,value:function(e,t){var n=De(gd,t),r=ke(_d,t),i=Oe(vd,t);this.setLocalScale(e,i,!1),this.setLocalPosition(e,n,!1),this.setLocalRotation(e,r,void 0,void 0,void 0,!1),this.dirtyLocalTransform(e,e.transformable)}},{key:`resetLocalTransform`,value:function(e){this.setLocalScale(e,ud,!1),this.setLocalPosition(e,ld,!1),this.setLocalEulerAngles(e,ld,void 0,void 0,!1),this.setLocalSkew(e,cd,void 0,!1),this.dirtyLocalTransform(e,e.transformable)}},{key:`getPosition`,value:function(e){var t=e.transformable;return De(t.position,this.getWorldTransform(e,t))}},{key:`getRotation`,value:function(e){var t=e.transformable;return ke(t.rotation,this.getWorldTransform(e,t))}},{key:`getScale`,value:function(e){var t=e.transformable;return Oe(t.scaling,this.getWorldTransform(e,t))}},{key:`getOrigin`,value:function(e){return e.getGeometryBounds(),e.transformable.origin}},{key:`getWorldTransform`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.transformable;return!t.localDirtyFlag&&!t.dirtyFlag?t.worldTransform:(e.parentNode&&e.parentNode.transformable&&this.getWorldTransform(e.parentNode),this.internalUpdateTransform(e),t.worldTransform)}},{key:`setPosition`,value:function(e,t){var n=e.transformable;if(bd[0]=t[0],bd[1]=t[1],bd[2]=t[2]??0,!bt(this.getPosition(e),bd)){if(it(n.position,bd),e.parentNode===null||!e.parentNode.transformable)it(n.localPosition,bd);else{var r=e.parentNode.transformable;F(xd,r.worldTransform),ue(xd,xd),_t(n.localPosition,bd,xd)}this.dirtyLocalTransform(e,n)}}},{key:`translate`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=at(pd,t,n,r)),!bt(t,ld)&&(ot(pd,this.getPosition(e),t),this.setPosition(e,pd))}},{key:`setRotation`,value:function(e,t,n,r,i){var a=e.transformable;typeof t==`number`&&(t=Lt(t,n,r,i)),e.parentNode===null||!e.parentNode.transformable?this.setLocalRotation(e,t):(Rt(hd,this.getRotation(e.parentNode)),Pt(hd,hd),Mt(a.localRotation,hd,t),Vt(a.localRotation,a.localRotation),this.dirtyLocalTransform(e,a))}},{key:`rotate`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=rt(t,n,r));var i=e.transformable;if(e.parentNode===null||!e.parentNode.transformable)this.rotateLocal(e,t);else{var a=hd;It(a,t[0],t[1],t[2]);var o=this.getRotation(e);Rt(wd,this.getRotation(e.parentNode)),Pt(wd,wd),Mt(a,wd,a),Mt(i.localRotation,a,o),Vt(i.localRotation,i.localRotation),this.dirtyLocalTransform(e,i)}}},{key:`setOrigin`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=[t,n,r]);var i=e.transformable;if(!(t[0]===i.origin[0]&&t[1]===i.origin[1]&&t[2]===i.origin[2])){var a=i.origin;a[0]=t[0],a[1]=t[1],a[2]=t[2]||0,this.dirtyLocalTransform(e,i)}}},{key:`setEulerAngles`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=rt(t,n,r));var i=e.transformable;e.parentNode===null||!e.parentNode.transformable?this.setLocalEulerAngles(e,t):(It(i.localRotation,t[0],t[1],t[2]),Rt(Sd,Pt(hd,this.getRotation(e.parentNode))),Bt(i.localRotation,i.localRotation,Sd),this.dirtyLocalTransform(e,i))}},{key:`getGeometryBounds`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=e.geometry;return n.dirty&&Y.styleValueRegistry.updateGeometry(e),(t?n.renderBounds:n.contentBounds||null)||new ja}},{key:`getTransformedGeometryBounds`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2?arguments[2]:void 0,r=this.getGeometryBounds(e,t);if(!ja.isEmpty(r)){var i=n||new ja;return i.setFromTransformedAABB(r,this.getWorldTransform(e)),i}return null}},{key:`getBounds`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=e.renderable;if(!r.boundsDirty&&!n&&r.bounds)return r.bounds;if(!r.renderBoundsDirty&&n&&r.renderBounds)return r.renderBounds;var i=n?r.renderBounds:r.bounds,a=this.getTransformedGeometryBounds(e,n,i);if(e.childNodes.forEach(function(e){var r=t.getBounds(e,n);r&&(a?a.add(r):(a=i||new ja,a.update(r.center,r.halfExtents)))}),a||=new ja,n){var o=Ul(e);if(o){var s=o.parsedStyle.clipPath.getBounds(n);a?s&&(a=s.intersection(a)):a.update(s.center,s.halfExtents)}}return n?(r.renderBounds=a,r.renderBoundsDirty=!1):(r.bounds=a,r.boundsDirty=!1),a}},{key:`getLocalBounds`,value:function(e){if(e.parentNode){var t=dd;e.parentNode.transformable&&(t=ue(md,this.getWorldTransform(e.parentNode)));var n=this.getBounds(e);if(!ja.isEmpty(n)){var r=new ja;return r.setFromTransformedAABB(n,t),r}}return this.getBounds(e)}},{key:`getBoundingClientRect`,value:function(e){var t,n,r=this.getGeometryBounds(e);ja.isEmpty(r)||(n=new ja,n.setFromTransformedAABB(r,this.getWorldTransform(e)));var i=(t=e.ownerDocument)==null||(t=t.defaultView)==null?void 0:t.getContextService().getBoundingClientRect();if(n){var a=m(n.getMin(),2),o=a[0],s=a[1],c=m(n.getMax(),2),l=c[0],u=c[1];return new Fa(o+(i?.left||0),s+(i?.top||0),l-o,u-s)}return new Fa(i?.left||0,i?.top||0,0,0)}},{key:`internalUpdateTransform`,value:function(e){var t=e.parentNode?.transformable;bo(e.transformable),xo(e.transformable,t)}},{key:`internalUpdateElement`,value:function(e,t){var n,r=((n=e.ownerDocument)==null||(n=n.defaultView)==null||(n=n.getConfig())==null||(n=n.future)==null?void 0:n.experimentalAttributeUpdateOptimization)===!0,i=t[t.length-1],a=i?.transformDirty||e.transformable?.localDirtyFlag;if(e.transformable){var o;(o=e.transformable).dirtyFlag||(o.dirtyFlag=a)}if(this.internalUpdateTransform(e),a){var s;(s=e.dirty)==null||s.call(e,!0,!0)}var c=e.renderable?.boundsDirty||e.renderable?.renderBoundsDirty;if((a||c)&&i?.shapeUpdated===!1&&r)for(var l=t.length-1;l>=0;){var u,d,f=t[l];if(f.shapeUpdated)break;(u=(d=f.node).dirty)==null||u.call(d,!0,!0),f.shapeUpdated=!0,--l}return a}},{key:`syncHierarchy`,value:function(e){for(var t=[e],n=e.parentNode?[{node:e.parentNode,transformDirty:e.parentNode.transformable?.localDirtyFlag||e.parentNode.transformable?.dirtyFlag,shapeUpdated:!1}]:[];t.length>0;){for(var r=t.pop(),i=n[n.length-1];n.length>0&&r.parentNode!==i.node;)i=n.pop();var a=this.internalUpdateElement(r,n);if(r.childNodes.length>0){for(var o=r.childNodes.length-1;o>=0;o--)t.push(r.childNodes[o]);n.push({node:r,transformDirty:a,shapeUpdated:!1})}}}},{key:`dirtyLocalTransform`,value:function(e,t){Ql(e)||t.localDirtyFlag||(t.localDirtyFlag=!0,t.dirtyFlag||this.dirtyWorldTransform(e,t))}},{key:`dirtyWorldTransform`,value:function(e,t){this.dirtyWorldInternal(e,t),this.dirtyToRoot(e,!0)}},{key:`dirtyWorldInternal`,value:function(e,t){var n,r=this,i=((n=e.ownerDocument)==null||(n=n.defaultView)==null||(n=n.getConfig())==null||(n=n.future)==null?void 0:n.experimentalAttributeUpdateOptimization)===!0;t.dirtyFlag||(t.dirtyFlag=!0,e.dirty(!0,!0),i||e.childNodes.forEach(function(e){var t=e.transformable;r.dirtyWorldInternal(e,t)}))}},{key:`dirtyToRoot`,value:function(e){for(var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=e,i=((t=e.ownerDocument)==null||(t=t.defaultView)==null||(t=t.getConfig())==null||(t=t.future)==null?void 0:t.experimentalAttributeUpdateOptimization)===!0;r;){var a,o;if((a=(o=r).dirty)==null||a.call(o,!0,!0),i)break;r=r.parentNode}n&&e.forEach(function(e){var t;(t=e.dirty)==null||t.call(e,!0,!0)}),this.informDependentDisplayObjects(e);var s=e.mutations||[],c=s.find(function(e){return e.type===`attributes`&&e._boundsChangeData});c?c._boundsChangeData={affectChildren:c._boundsChangeData.affectChildren||n}:(c={type:`attributes`,target:e,_boundsChangeData:{affectChildren:n}},s.push(c)),e.mutations=s}},{key:`dirtyFragment`,value:function(e){var t,n,r=e.transformable;r&&(r.dirtyFlag=!0,r.localDirtyFlag=!0),(t=(n=e).dirty)==null||t.call(n,!0,!0);for(var i=e.childNodes.length,a=0;a<i;a++)this.dirtyFragment(e.childNodes[a])}},{key:`notifyMutationObservers`,value:function(e){var t=new Set;if(e.getRoot().forEach(function(e){(e.mutations||[]).forEach(function(n){n.type===`attributes`&&n._boundsChangeData&&(n._boundsChangeData.affectChildren?e.forEach(function(e){var r=y({},n);r.target=e,t.add(r)}):t.add(n))}),e.mutations=void 0}),t.size>0){var n=new Yu(ad.BOUNDS_CHANGED,{detail:Array.from(t)});e.dispatchEvent(n,!0,!0)}}},{key:`updateDisplayObjectDependency`,value:function(e,t,n,r){if(t&&t!==n){var i=this.displayObjectDependencyMap.get(t);if(i&&i[e]){var a=i[e].indexOf(r);i[e].splice(a,1)}}if(n){var o=this.displayObjectDependencyMap.get(n);o||=(this.displayObjectDependencyMap.set(n,{}),this.displayObjectDependencyMap.get(n)),o[e]||(o[e]=[]),o[e].push(r)}}},{key:`informDependentDisplayObjects`,value:function(e){var t,n=this,r=this.displayObjectDependencyMap.get(e);if(r){var i=(t=e.ownerDocument)==null||(t=t.defaultView)==null||(t=t.getConfig())==null||(t=t.future)==null?void 0:t.experimentalCancelEventPropagation;Object.keys(r).forEach(function(e){r[e].forEach(function(t){n.dirtyToRoot(t,!0),t.dispatchEvent(new od(ad.ATTR_MODIFIED,t,n,n,e,od.MODIFICATION,n,n),i,i),t.isCustomElement&&t.isConnected&&t.attributeChangedCallback&&t.attributeChangedCallback(e,n,n)})})}}}])}(),Ed=function(){function e(t){if(b(this,e),t<=0)throw Error(`LRU capacity must be a positive number.`);this.capacity=t,this.cache=new Map}return S(e,[{key:`get`,value:function(e){if(this.cache.has(e)){var t=this.cache.get(e);return this.cache.delete(e),this.cache.set(e,t),t}}},{key:`put`,value:function(e,t){if(this.cache.has(e)&&this.cache.delete(e),this.cache.set(e,t),this.cache.size>this.capacity){var n=this.cache.keys().next().value;this.cache.delete(n)}}},{key:`len`,value:function(){return this.cache.size}},{key:`clear`,value:function(){this.cache.clear()}}])}(),Dd={MetricsString:`|ÉqÅ`,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]},Od=/[a-zA-Z0-9\u00C0-\u00D6\u00D8-\u00f6\u00f8-\u00ff!"#$%&'()*+,-./:;]/,kd=/[!%),.:;?\]}¢°·'""†‡›℃∶、。〃〆〕〗〞﹚﹜!"%'),.:;?!]}~]/,Ad=/[$(£¥·'"〈《「『【〔〖〝﹙﹛$(.[{£¥]/,jd=/[!),.:;?\]}¢·–—'"•"、。〆〞〕〉》」︰︱︲︳﹐﹑﹒﹓﹔﹕﹖﹘﹚﹜!),.:;?︶︸︺︼︾﹀﹂﹗]|}、]/,Md=/[([{£¥'"‵〈《「『〔〝︴﹙﹛({︵︷︹︻︽︿﹁﹃﹏]/,Nd=/[)\]}〕〉》」』】〙〗〟'"⦆»ヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻‐゠–〜?!‼⁇⁈⁉・、:;,。.]/,Pd=/[([{〔〈《「『【〘〖〝'"⦅«—...‥〳〴〵]/,Fd=/[!%),.:;?\]}¢°'"†‡℃〆〈《「『〕!%),.:;?]}]/,Id=/[$([{£¥'"々〇〉》」〔$([{⦆¥₩#]/,Ld=RegExp(`${kd.source}|${jd.source}|${Nd.source}|${Fd.source}`),Rd=RegExp(`${Ad.source}|${Md.source}|${Pd.source}|${Id.source}`),zd=function(){function e(t){var n=this;b(this,e),this.fontMetricsCache={},this.shouldBreakByKinsokuShorui=function(e,t){return n.isBreakingSpace(t)?!1:!!(e&&(Rd.exec(t)||Ld.exec(e)))},this.trimByKinsokuShorui=function(e){var t=l(e),n=t[t.length-2];if(!n)return e;var r=n[n.length-1];return t[t.length-2]=n.slice(0,-1),t[t.length-1]=r+t[t.length-1],t},this.runtime=t,this.charWidthCache=new Ed(100)}return S(e,[{key:`measureFont`,value:function(e,t){if(this.fontMetricsCache[e])return this.fontMetricsCache[e];var n={ascent:0,descent:0,fontSize:0},r=this.runtime.offscreenCanvasCreator.getOrCreateCanvas(t),i=this.runtime.offscreenCanvasCreator.getOrCreateContext(t,{willReadFrequently:!0});i.font=e;var a=Dd.MetricsString+Dd.BaselineSymbol,o=Math.ceil(i.measureText(a).width),s=Math.ceil(i.measureText(Dd.BaselineSymbol).width),c=Dd.HeightMultiplier*s;s=s*Dd.BaselineMultiplier|0,r.width=o,r.height=c,i.fillStyle=`#f00`,i.fillRect(0,0,o,c),i.font=e,i.textBaseline=`alphabetic`,i.fillStyle=`#000`,i.fillText(a,0,s);var l=i.getImageData(0,0,o||1,c||1).data,u=l.length,d=o*4,f=0,p=0,m=!1;for(f=0;f<s;++f){for(var h=0;h<d;h+=4)if(l[p+h]!==255){m=!0;break}if(!m)p+=d;else break}for(n.ascent=s-f,p=u-d,m=!1,f=c;f>s;--f){for(var g=0;g<d;g+=4)if(l[p+g]!==255){m=!0;break}if(!m)p-=d;else break}return n.descent=f-s,n.fontSize=n.ascent+n.descent,this.fontMetricsCache[e]=n,n}},{key:`measureText`,value:function(e,t,n){var r=t.fontSize,i=r===void 0?16:r,a=t.wordWrap,o=a===void 0?!1:a,s=t.lineHeight,c=t.lineWidth,l=c===void 0?1:c,u=t.textBaseline,d=u===void 0?`alphabetic`:u,f=t.textAlign,p=f===void 0?`start`:f,m=t.letterSpacing,h=m===void 0?0:m,g=t.textPath;t.textPathSide,t.textPathStartOffset;var _=t.leading,v=_===void 0?0:_,y=Su(t),b=this.measureFont(y,n);b.fontSize===0&&(b.fontSize=i,b.ascent=i);var x=this.runtime.offscreenCanvasCreator.getOrCreateContext(n);x.font=y,t.isOverflowing=!1;var S=(o?this.wordWrap(e,t,n):e).split(/(?:\r\n|\r|\n)/),C=Array(S.length),w=0;if(g){g.getTotalLength();for(var T=0;T<S.length;T++)x.measureText(S[T]).width+(S[T].length-1)*h}else{for(var E=0;E<S.length;E++){var D=x.measureText(S[E]).width+(S[E].length-1)*h;C[E]=D,w=Math.max(w,D)}var O=w+l,k=s||b.fontSize+l,A=Math.max(k,b.fontSize+l)+(S.length-1)*(k+v);k+=v;var j=0;return d===`middle`?j=-A/2:d===`bottom`||d===`alphabetic`||d===`ideographic`?j=-A:(d===`top`||d===`hanging`)&&(j=0),{font:y,width:O,height:A,lines:S,lineWidths:C,lineHeight:k,maxLineWidth:w,fontProperties:b,lineMetrics:C.map(function(e,t){var n=0;return p===`center`||p===`middle`?n-=e/2:(p===`right`||p===`end`)&&(n-=e),new Fa(n-l/2,j+t*k,e+l,k)})}}}},{key:`wordWrap`,value:function(e,t,n){var r=this,i=Array.from(e);if(i.length===0)return``;var a=this,o=t.wordWrapWidth,s=o===void 0?0:o,c=t.letterSpacing,l=c===void 0?0:c,u=t.maxLines,d=u===void 0?1/0:u,f=t.textOverflow,p=this.runtime.offscreenCanvasCreator.getOrCreateContext(n),m=s+l,h=``;f===`ellipsis`?h=`...`:f&&f!==`clip`&&(h=f);var g=[``],_=0,v=0,y=-1,b=Su(t),x=this.charWidthCache.get(b);x||(x=new Ed(500),this.charWidthCache.put(b,x));var S=function(e){return r.getFromCache(e,l,x,p)},C=S(h);function w(e,t,n,r){for(;S(e)<r&&t<i.length-1&&!a.isNewline(i[t+1]);)t+=1,e+=i[t];for(;S(e)>r&&t>=n;)--t,e=e.slice(0,-1);return{lineTxt:e,txtLastCharIndex:t}}function T(e,t){if(!(C<=0||C>m)){if(!g[e]){g[e]=h;return}var n=w(g[e],t,y+1,m-C);g[e]=n.lineTxt+h}}for(var E=0;E<i.length;E++){var D=i[E],O=i[E-1],k=i[E+1],A=S(D);if(this.isNewline(D)){if(_+1>=d){E<i.length-1&&T(_,E-1),t.isOverflowing=!0;break}y=E-1,_+=1,v=0,g[_]=``;continue}if(A>m){T(_,E-1),t.isOverflowing=!0;break}if(v>0&&v+A>m){var j=w(g[_],E-1,y+1,m);if(j.txtLastCharIndex!==E-1){if(g[_]=j.lineTxt,j.txtLastCharIndex===i.length-1)break;E=j.txtLastCharIndex+1,D=i[E],O=i[E-1],k=i[E+1],A=S(D)}if(_+1>=d){T(_,E-1),t.isOverflowing=!0;break}if(y=E-1,_+=1,v=0,g[_]=``,this.isBreakingSpace(D))continue;this.canBreakInLastChar(D)||(g=this.trimToBreakable(g),v=this.sumTextWidthByCache(g[_]||``,S)),this.shouldBreakByKinsokuShorui(D,k)&&(g=this.trimByKinsokuShorui(g),v+=S(O||``))}v+=A,g[_]+=D}return g.join(`
5
+ `)}},{key:`isBreakingSpace`,value:function(e){return typeof e==`string`?Dd.BreakingSpaces.indexOf(e.charCodeAt(0))>=0:!1}},{key:`isNewline`,value:function(e){return typeof e==`string`?Dd.Newlines.indexOf(e.charCodeAt(0))>=0:!1}},{key:`trimToBreakable`,value:function(e){var t=l(e),n=t[t.length-2],r=this.findBreakableIndex(n);if(r===-1||!n)return t;var i=n.slice(r,r+1),a=this.isBreakingSpace(i),o=r+1,s=r+ +!a;return t[t.length-1]+=n.slice(o,n.length),t[t.length-2]=n.slice(0,s),t}},{key:`canBreakInLastChar`,value:function(e){return!(e&&Od.test(e))}},{key:`sumTextWidthByCache`,value:function(e,t){return e.split(``).reduce(function(e,n){return e+t(n)},0)}},{key:`findBreakableIndex`,value:function(e){for(var t=e.length-1;t>=0;t--)if(!Od.test(e[t]))return t;return-1}},{key:`getFromCache`,value:function(e,t,n,r){var i=n.get(e);if(typeof i!=`number`){var a=e.length*t;i=r.measureText(e).width+a,n.put(e,i)}return i}},{key:`clearCache`,value:function(){this.fontMetricsCache={},this.charWidthCache.clear()}}])}(),Y={},Bd=function(e){var t=new Vu,n=new Bu;return e={},_(_(_(_(_(_(_(_(_(_(e,U.FRAGMENT,null),U.CIRCLE,new Iu),U.ELLIPSE,new Lu),U.RECT,t),U.IMAGE,t),U.GROUP,new Uu),U.LINE,new Ru),U.TEXT,new Hu(Y)),U.POLYLINE,n),U.POLYGON,n),_(_(_(e,U.PATH,new zu),U.HTML,new Wu),U.MESH,null)}(),Vd=function(e){var t=new Sl,n=new Tl;return e={},_(_(_(_(_(_(_(_(_(_(e,K.PERCENTAGE,null),K.NUMBER,new kl),K.ANGLE,new bl),K.DEFINED_PATH,new xl),K.PAINT,t),K.COLOR,t),K.FILTER,new Cl),K.LENGTH,n),K.LENGTH_PERCENTAGE,n),K.LENGTH_PERCENTAGE_12,new El),_(_(_(_(_(_(_(_(_(_(e,K.LENGTH_PERCENTAGE_14,new Dl),K.COORDINATE,new Tl),K.OFFSET_DISTANCE,new Al),K.OPACITY_VALUE,new jl),K.PATH,new Ml),K.LIST_OF_POINTS,new Nl),K.SHADOW_BLUR,new Pl),K.TEXT,new Fl),K.TEXT_TRANSFORM,new Il),K.TRANSFORM,new Nu),_(_(_(e,K.TRANSFORM_ORIGIN,new Pu),K.Z_INDEX,new Fu),K.MARKER,new Ol)}();Y.CameraContribution=mo,Y.AnimationTimeline=null,Y.EasingFunction=null,Y.offscreenCanvasCreator=new ed,Y.sceneGraphSelector=new id,Y.sceneGraphService=new Td(Y),Y.textService=new zd(Y),Y.geometryUpdaterFactory=Bd,Y.CSSPropertySyntaxFactory=Vd,Y.styleValueRegistry=new _l(Y),Y.layoutRegistry=null,Y.globalThis=function(){return typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{}}(),Y.enableStyleSyntax=!0,Y.enableSizeAttenuation=!1;var Hd=0,Ud=new od(ad.INSERTED,null,``,``,``,0,``,``),Wd=new od(ad.REMOVED,null,``,``,``,0,``,``),Gd=new Yu(ad.DESTROY),Kd=function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.entity=Hd++,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:ho.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 T(t,e),S(t,[{key:`dirty`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1?arguments[1]:void 0;this.renderable.dirty=e,t!==void 0&&(this.renderable.boundsDirty=t,this.renderable.renderBoundsDirty=t,this.geometry.dirty=t)}},{key:`className`,get:function(){return this.getAttribute(`class`)||``},set:function(e){this.setAttribute(`class`,e)}},{key:`classList`,get:function(){return this.className.split(` `).filter(function(e){return e!==``})}},{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 e=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[e+1]||null}return null}},{key:`previousSibling`,get:function(){if(this.parentNode){var e=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[e-1]||null}return null}},{key:`cloneNode`,value:function(e){throw Error(Ia)}},{key:`appendChild`,value:function(e,t){var n;if(e.destroyed)throw Error(Ra);return Y.sceneGraphService.attach(e,this,t),(n=this.ownerDocument)!=null&&n.defaultView&&(!Ql(this)&&e.nodeName===U.FRAGMENT?this.ownerDocument.defaultView.mountFragment(e):this.ownerDocument.defaultView.mountChildren(e)),this.isMutationObserved&&(Ud.relatedNode=this,e.dispatchEvent(Ud)),e}},{key:`insertBefore`,value:function(e,t){if(!t)this.appendChild(e);else{e.parentElement&&e.parentElement.removeChild(e);var n=this.childNodes.indexOf(t);n===-1?this.appendChild(e):this.appendChild(e,n)}return e}},{key:`replaceChild`,value:function(e,t){var n=this.childNodes.indexOf(t);return this.removeChild(t),this.appendChild(e,n),t}},{key:`removeChild`,value:function(e){var t,n,r=((t=this.ownerDocument)==null||(t=t.defaultView)==null||(t=t.getConfig().future)==null?void 0:t.experimentalCancelEventPropagation)===!0;return Wd.relatedNode=this,e.dispatchEvent(Wd,r,r),(n=e.ownerDocument)!=null&&n.defaultView&&e.ownerDocument.defaultView.unmountChildren(e),Y.sceneGraphService.detach(e),e}},{key:`removeChildren`,value:function(){for(var e=this.childNodes.length-1;e>=0;e--){var t=this.childNodes[e];this.removeChild(t)}}},{key:`destroyChildren`,value:function(){for(var e=this.childNodes.length-1;e>=0;e--){var t=this.childNodes[e];t.childNodes.length>0&&t.destroyChildren(),t.destroy()}}},{key:`matches`,value:function(e){return Y.sceneGraphService.matches(e,this)}},{key:`getElementById`,value:function(e){return Y.sceneGraphService.querySelector(`#${e}`,this)}},{key:`getElementsByName`,value:function(e){return Y.sceneGraphService.querySelectorAll(`[name="${e}"]`,this)}},{key:`getElementsByClassName`,value:function(e){return Y.sceneGraphService.querySelectorAll(`.${e}`,this)}},{key:`getElementsByTagName`,value:function(e){return Y.sceneGraphService.querySelectorAll(e,this)}},{key:`querySelector`,value:function(e){return Y.sceneGraphService.querySelector(e,this)}},{key:`querySelectorAll`,value:function(e){return Y.sceneGraphService.querySelectorAll(e,this)}},{key:`closest`,value:function(e){var t=this;do{if(Y.sceneGraphService.matches(e,t))return t;t=t.parentElement}while(t!==null);return null}},{key:`find`,value:function(e){var t=this,n=null;return this.forEach(function(r){return r!==t&&e(r)?(n=r,!1):!0}),n}},{key:`findAll`,value:function(e){var t=this,n=[];return this.forEach(function(r){r!==t&&e(r)&&n.push(r)}),n}},{key:`after`,value:function(){var e=this;if(this.parentNode){var t=this.parentNode.childNodes.indexOf(this);[...arguments].forEach(function(n,r){return e.parentNode?.appendChild(n,t+r+1)})}}},{key:`before`,value:function(){if(this.parentNode){var e,t=this.parentNode.childNodes.indexOf(this),n=[...arguments],r=n[0],a=i(n).slice(1);this.parentNode.appendChild(r,t),(e=r).after.apply(e,l(a))}}},{key:`replaceWith`,value:function(){this.after.apply(this,arguments),this.remove()}},{key:`append`,value:function(){var e=this;[...arguments].forEach(function(t){return e.appendChild(t)})}},{key:`prepend`,value:function(){var e=this;[...arguments].forEach(function(t,n){return e.appendChild(t,n)})}},{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 e,t=((e=this.ownerDocument)==null||(e=e.defaultView)==null||(e=e.getConfig().future)==null?void 0:e.experimentalCancelEventPropagation)===!0;this.destroyChildren(),this.dispatchEvent(Gd,t,t),this.remove(),this.emitter.removeAllListeners(),this.destroyed=!0}},{key:`getGeometryBounds`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return Y.sceneGraphService.getGeometryBounds(this,e)}},{key:`getTransformedGeometryBounds`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return Y.sceneGraphService.getTransformedGeometryBounds(this,e)}},{key:`getBounds`,value:function(){return Y.sceneGraphService.getBounds(this)}},{key:`getRenderBounds`,value:function(){return Y.sceneGraphService.getBounds(this,!0)}},{key:`getLocalBounds`,value:function(){return Y.sceneGraphService.getLocalBounds(this)}},{key:`getBoundingClientRect`,value:function(){return Y.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(e){if(typeof e!=`symbol`)return this.attributes[e]}},{key:`hasAttribute`,value:function(e){return this.getAttributeNames().includes(e)}},{key:`hasAttributes`,value:function(){return!!this.getAttributeNames().length}},{key:`removeAttribute`,value:function(e){this.setAttribute(e,null),delete this.attributes[e]}},{key:`setAttribute`,value:function(e,t){this.attributes[e]=t}},{key:`getAttributeNS`,value:function(e,t){throw Error(Ia)}},{key:`getAttributeNode`,value:function(e){throw Error(Ia)}},{key:`getAttributeNodeNS`,value:function(e,t){throw Error(Ia)}},{key:`hasAttributeNS`,value:function(e,t){throw Error(Ia)}},{key:`removeAttributeNS`,value:function(e,t){throw Error(Ia)}},{key:`removeAttributeNode`,value:function(e){throw Error(Ia)}},{key:`setAttributeNS`,value:function(e,t,n){throw Error(Ia)}},{key:`setAttributeNode`,value:function(e){throw Error(Ia)}},{key:`setAttributeNodeNS`,value:function(e){throw Error(Ia)}},{key:`toggleAttribute`,value:function(e,t){throw Error(Ia)}}])}(Zu);function qd(e){return!!(e!=null&&e.nodeName)}var Jd=Y.globalThis.Proxy?Y.globalThis.Proxy:function(){},Yd=new od(ad.ATTR_MODIFIED,null,null,null,null,od.MODIFICATION,null,null),Xd=et(),Zd=At(),Qd=function(e){function t(e){var n;return b(this,t),n=k(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||U.GROUP,e.initialParsedStyle&&Object.assign(n.parsedStyle,e.initialParsedStyle),n.initAttributes(e.style),Y.enableStyleSyntax&&(n.style=new Jd({setProperty:function(e,t){n.setAttribute(e,t)},getPropertyValue:function(e){return n.getAttribute(e)},removeProperty:function(e){n.removeAttribute(e)},item:function(){return``}},{get:function(e,t){return e[t]===void 0?n.getAttribute(t):e[t]},set:function(e,t,r){return n.setAttribute(t,r),!0}})),n}return T(t,e),S(t,[{key:`destroy`,value:function(){Bi(t,`destroy`,this,3)([]),this.getAnimations().forEach(function(e){e.cancel()})}},{key:`cloneNode`,value:function(e,t){var n=y({},this.attributes);for(var r in n){var i=n[r];qd(i)&&r!==`clipPath`&&r!==`offsetPath`&&r!==`textPath`&&(n[r]=i.cloneNode(e)),t&&(n[r]=t(r,i))}var a=new this.constructor(y(y({},this.config),{},{style:n}));return a.setLocalTransform(this.getLocalTransform()),e&&this.children.forEach(function(t){if(!t.style.isMarker){var n=t.cloneNode(e);a.appendChild(n)}}),a}},{key:`initAttributes`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Y.styleValueRegistry.processProperties(this,e,{forceUpdateGeometry:!0}),this.dirty()}},{key:`setAttribute`,value:function(e,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;Mn(n)||(r||n!==this.attributes[e])&&(this.internalSetAttribute(e,n,{memoize:i}),Bi(t,`setAttribute`,this,3)([e,n]))}},{key:`setAttributes`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.skipDispatchAttrModifiedEvent,r=n===void 0?!1:n,i,a;if(r||(i=y({},this.attributes),a=y({},this.parsedStyle)),Y.styleValueRegistry.processProperties(this,e,t),this.dirty(),!r)for(var o in e)this.dispatchAttrModifiedEvent(o,i[o],e[o],a[o])}},{key:`internalSetAttribute`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=this.attributes[e],i=this.parsedStyle[e];Y.styleValueRegistry.processProperties(this,_({},e,t),n),this.dirty(),this.dispatchAttrModifiedEvent(e,r,t,i)}},{key:`dispatchAttrModifiedEvent`,value:function(e,t,n,r){var i=this.parsedStyle[e];if(this.isConnected)if(Yd.relatedNode=this,Yd.prevValue=t,Yd.newValue=n,Yd.attrName=e,Yd.prevParsedValue=r,Yd.newParsedValue=i,this.isMutationObserved)this.dispatchEvent(Yd);else{var a=this.ownerDocument.defaultView.getConfig().future?.experimentalCancelEventPropagation===!0;Yd.target=this,this.ownerDocument.defaultView.dispatchEvent(Yd,!0,a)}if(this.isCustomElement&&this.isConnected||!this.isCustomElement){var o,s;(o=(s=this).attributeChangedCallback)==null||o.call(s,e,t,n,r,i)}}},{key:`getBBox`,value:function(){var e=this.getBounds(),t=m(e.getMin(),2),n=t[0],r=t[1],i=m(e.getMax(),2),a=i[0],o=i[1];return new Fa(n,r,a-n,o-r)}},{key:`setOrigin`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.setOrigin(this,Va(e,t,n,!1)),this}},{key:`getOrigin`,value:function(){return Y.sceneGraphService.getOrigin(this)}},{key:`setPosition`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.setPosition(this,Va(e,t,n,!1)),this}},{key:`setLocalPosition`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.setLocalPosition(this,Va(e,t,n,!1)),this}},{key:`translate`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.translate(this,Va(e,t,n,!1)),this}},{key:`translateLocal`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.translateLocal(this,Va(e,t,n,!1)),this}},{key:`getPosition`,value:function(){return Y.sceneGraphService.getPosition(this)}},{key:`getLocalPosition`,value:function(){return Y.sceneGraphService.getLocalPosition(this)}},{key:`scale`,value:function(e,t,n){return this.scaleLocal(e,t,n)}},{key:`scaleLocal`,value:function(e,t,n){return typeof e==`number`&&(t||=e,n||=e,e=Va(e,t,n,!1)),Y.sceneGraphService.scaleLocal(this,e),this}},{key:`setLocalScale`,value:function(e,t,n){return typeof e==`number`&&(t||=e,n||=e,e=Va(e,t,n,!1)),Y.sceneGraphService.setLocalScale(this,e),this}},{key:`getLocalScale`,value:function(){return Y.sceneGraphService.getLocalScale(this)}},{key:`getScale`,value:function(){return Y.sceneGraphService.getScale(this)}},{key:`getEulerAngles`,value:function(){var e=m(Xa(Xd,Y.sceneGraphService.getWorldTransform(this)),3)[2];return Ga(e)}},{key:`getLocalEulerAngles`,value:function(){var e=m(Xa(Xd,Y.sceneGraphService.getLocalRotation(this)),3)[2];return Ga(e)}},{key:`setEulerAngles`,value:function(e){return Y.sceneGraphService.setEulerAngles(this,0,0,e),this}},{key:`setLocalEulerAngles`,value:function(e){return Y.sceneGraphService.setLocalEulerAngles(this,0,0,e),this}},{key:`rotateLocal`,value:function(e,t,n){return R(t)&&R(n)?Y.sceneGraphService.rotateLocal(this,0,0,e):Y.sceneGraphService.rotateLocal(this,e,t,n),this}},{key:`rotate`,value:function(e,t,n){return R(t)&&R(n)?Y.sceneGraphService.rotate(this,0,0,e):Y.sceneGraphService.rotate(this,e,t,n),this}},{key:`setRotation`,value:function(e,t,n,r){return Y.sceneGraphService.setRotation(this,e,t,n,r),this}},{key:`setLocalRotation`,value:function(e,t,n,r){return Y.sceneGraphService.setLocalRotation(this,e,t,n,r),this}},{key:`setLocalSkew`,value:function(e,t){return Y.sceneGraphService.setLocalSkew(this,e,t),this}},{key:`getRotation`,value:function(){return Y.sceneGraphService.getRotation(this)}},{key:`getLocalRotation`,value:function(){return Y.sceneGraphService.getLocalRotation(this)}},{key:`getLocalSkew`,value:function(){return Y.sceneGraphService.getLocalSkew(this)}},{key:`getLocalTransform`,value:function(){return Y.sceneGraphService.getLocalTransform(this)}},{key:`getWorldTransform`,value:function(){return Y.sceneGraphService.getWorldTransform(this)}},{key:`setLocalTransform`,value:function(e){return Y.sceneGraphService.setLocalTransform(this,e),this}},{key:`resetLocalTransform`,value:function(){Y.sceneGraphService.resetLocalTransform(this)}},{key:`getAnimations`,value:function(){return this.activeAnimations}},{key:`animate`,value:function(e,t){var n=this.ownerDocument?.timeline;return n?n.play(this,e,t):null}},{key:`isVisible`,value:function(){return this.parsedStyle?.visibility!==`hidden`}},{key:`interactive`,get:function(){return this.isInteractive()},set:function(e){this.style.pointerEvents=e?`auto`:`none`}},{key:`isInteractive`,value:function(){return this.parsedStyle?.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,l(this.parentNode.children.map(function(e){return Number(e.style.zIndex)})))+1),this}},{key:`toBack`,value:function(){return this.parentNode&&(this.style.zIndex=Math.min.apply(Math,l(this.parentNode.children.map(function(e){return Number(e.style.zIndex)})))-1),this}},{key:`getConfig`,value:function(){return this.config}},{key:`attr`,value:function(){var e=this,t=[...arguments],n=t[0],r=t[1];return n?$t(n)?(Object.keys(n).forEach(function(t){e.setAttribute(t,n[t])}),this):t.length===2?(this.setAttribute(n,r),this):this.attributes[n]:this.attributes}},{key:`getMatrix`,value:function(e){var t=e||this.getWorldTransform(),n=m(De(Xd,t),2),r=n[0],i=n[1],a=m(Oe(Xd,t),2),o=a[0],s=a[1],c=m(Xa(Xd,ke(Zd,t)),3),l=c[0],u=c[2];return Za(l||u,r,i,o,s)}},{key:`getLocalMatrix`,value:function(){return this.getMatrix(this.getLocalTransform())}},{key:`setMatrix`,value:function(e){var t=m($a(e),5),n=t[0],r=t[1],i=t[2],a=t[3],o=t[4];this.setEulerAngles(o).setPosition(n,r).setLocalScale(i,a)}},{key:`setLocalMatrix`,value:function(e){var t=m($a(e),5),n=t[0],r=t[1],i=t[2],a=t[3],o=t[4];this.setLocalEulerAngles(o).setLocalPosition(n,r).setLocalScale(i,a)}},{key:`show`,value:function(){this.forEach(function(e){e.style.visibility=`visible`})}},{key:`hide`,value:function(){this.forEach(function(e){e.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(e){return this.children[e]||null}},{key:`add`,value:function(e,t){return this.appendChild(e,t)}},{key:`set`,value:function(e,t){this.config[e]=t}},{key:`get`,value:function(e){return this.config[e]}},{key:`moveTo`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(e,t,n),this}},{key:`move`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(e,t,n),this}},{key:`setZIndex`,value:function(e){return this.style.zIndex=e,this}}])}(Kd);Qd.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`.split(`.`));var $d=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return b(this,t),k(this,t,[y({type:U.CIRCLE},e)])}return T(t,e),S(t)}(Qd);$d.PARSED_STYLE_LIST=new Set([].concat(l(Qd.PARSED_STYLE_LIST),[`cx`,`cy`,`cz`,`r`,`isBillboard`,`isSizeAttenuation`]));var ef=[`style`],tf=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=j(n,ef);return b(this,t),e=k(this,t,[y({style:r},i)]),e.isCustomElement=!0,e}return T(t,e),S(t)}(Qd);tf.PARSED_STYLE_LIST=new Set([`class`,`className`,`clipPath`,`cursor`,`draggable`,`droppable`,`opacity`,`pointerEvents`,`transform`,`transformOrigin`,`zIndex`,`visibility`]);var nf=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return b(this,t),k(this,t,[y({type:U.ELLIPSE},e)])}return T(t,e),S(t)}(Qd);nf.PARSED_STYLE_LIST=new Set([].concat(l(Qd.PARSED_STYLE_LIST),[`cx`,`cy`,`cz`,`rx`,`ry`,`isBillboard`,`isSizeAttenuation`]));var rf=function(e){function t(){return b(this,t),k(this,t,[{type:U.FRAGMENT}])}return T(t,e),S(t)}(Qd);rf.PARSED_STYLE_LIST=new Set([`class`,`className`]);var af=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return b(this,t),k(this,t,[y({type:U.GROUP},e)])}return T(t,e),S(t)}(Qd);af.PARSED_STYLE_LIST=new Set([`class`,`className`,`clipPath`,`cursor`,`draggable`,`droppable`,`opacity`,`pointerEvents`,`transform`,`transformOrigin`,`zIndex`,`visibility`]);var of=[`style`],sf=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=j(n,of);return b(this,t),e=k(this,t,[y({type:U.HTML,style:r},i)]),e.cullable.enable=!1,e}return T(t,e),S(t,[{key:`getDomElement`,value:function(){return this.parsedStyle.$el}},{key:`getClientRects`,value:function(){return[this.getBoundingClientRect()]}},{key:`getLocalBounds`,value:function(){if(this.parentNode){var e=ue(P(),this.parentNode.getWorldTransform()),t=this.getBounds();if(!ja.isEmpty(t)){var n=new ja;return n.setFromTransformedAABB(t,e),n}}return this.getBounds()}}])}(Qd);sf.PARSED_STYLE_LIST=new Set([].concat(l(Qd.PARSED_STYLE_LIST),[`x`,`y`,`$el`,`innerHTML`,`width`,`height`]));var cf=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return b(this,t),k(this,t,[y({type:U.IMAGE},e)])}return T(t,e),S(t)}(Qd);cf.PARSED_STYLE_LIST=new Set([].concat(l(Qd.PARSED_STYLE_LIST),[`x`,`y`,`z`,`src`,`width`,`height`,`isBillboard`,`billboardRotation`,`isSizeAttenuation`,`keepAspectRatio`]));var lf=[`style`],uf=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=j(n,lf);b(this,t),e=k(this,t,[y({type:U.LINE,style:y({x1:0,y1:0,x2:0,y2:0,z1:0,z2:0},r)},i)]),e.markerStartAngle=0,e.markerEndAngle=0;var a=e.parsedStyle,o=a.markerStart,s=a.markerEnd;return o&&qd(o)&&(e.markerStartAngle=o.getLocalEulerAngles(),e.appendChild(o)),s&&qd(s)&&(e.markerEndAngle=s.getLocalEulerAngles(),e.appendChild(s)),e.transformMarker(!0),e.transformMarker(!1),e}return T(t,e),S(t,[{key:`attributeChangedCallback`,value:function(e,t,n,r,i){e===`x1`||e===`y1`||e===`x2`||e===`y2`||e===`markerStartOffset`||e===`markerEndOffset`?(this.transformMarker(!0),this.transformMarker(!1)):e===`markerStart`?(r&&qd(r)&&(this.markerStartAngle=0,r.remove()),i&&qd(i)&&(this.markerStartAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!0))):e===`markerEnd`&&(r&&qd(r)&&(this.markerEndAngle=0,r.remove()),i&&qd(i)&&(this.markerEndAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!1)))}},{key:`transformMarker`,value:function(e){var t=this.parsedStyle,n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=t.x1,s=t.x2,c=t.y1,l=t.y2,u=e?n:r;if(!(!u||!qd(u))){var d=0,f,p,m,h,g,_;e?(m=o,h=c,f=s-o,p=l-c,g=i||0,_=this.markerStartAngle):(m=s,h=l,f=o-s,p=c-l,g=a||0,_=this.markerEndAngle),d=Math.atan2(p,f),u.setLocalEulerAngles(d*180/Math.PI+_),u.setLocalPosition(m+Math.cos(d)*g,h+Math.sin(d)*g)}}},{key:`getPoint`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.parsedStyle,r=n.x1,i=n.y1,a=n.x2,o=n.y2,s=Zi(r,i,a,o,e),c=s.x,l=s.y,u=_t(et(),rt(c,l,0),t?this.getWorldTransform():this.getLocalTransform());return new Pa(u[0],u[1])}},{key:`getPointAtLength`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(e/this.getTotalLength(),t)}},{key:`getTotalLength`,value:function(){var e=this.parsedStyle,t=e.x1,n=e.y1,r=e.x2,i=e.y2;return Xi(t,n,r,i)}}])}(Qd);uf.PARSED_STYLE_LIST=new Set([].concat(l(Qd.PARSED_STYLE_LIST),[`x1`,`y1`,`x2`,`y2`,`z1`,`z2`,`isBillboard`,`isSizeAttenuation`,`markerStart`,`markerEnd`,`markerStartOffset`,`markerEndOffset`]));var df=[`style`],ff=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=j(n,df);b(this,t),e=k(this,t,[y({type:U.PATH,style:r,initialParsedStyle:{miterLimit:4,d:y({},So)}},i)]),e.markerStartAngle=0,e.markerEndAngle=0,e.markerMidList=[];var a=e.parsedStyle,o=a.markerStart,s=a.markerEnd,c=a.markerMid;return o&&qd(o)&&(e.markerStartAngle=o.getLocalEulerAngles(),e.appendChild(o)),c&&qd(c)&&e.placeMarkerMid(c),s&&qd(s)&&(e.markerEndAngle=s.getLocalEulerAngles(),e.appendChild(s)),e.transformMarker(!0),e.transformMarker(!1),e}return T(t,e),S(t,[{key:`attributeChangedCallback`,value:function(e,t,n,r,i){e===`d`?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):e===`markerStartOffset`||e===`markerEndOffset`?(this.transformMarker(!0),this.transformMarker(!1)):e===`markerStart`?(r&&qd(r)&&(this.markerStartAngle=0,r.remove()),i&&qd(i)&&(this.markerStartAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!0))):e===`markerEnd`?(r&&qd(r)&&(this.markerEndAngle=0,r.remove()),i&&qd(i)&&(this.markerEndAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!1))):e===`markerMid`&&this.placeMarkerMid(i)}},{key:`transformMarker`,value:function(e){var t=this.parsedStyle,n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=e?n:r;if(!(!o||!qd(o))){var s=0,c,l,u,d,f,p;if(e){var h=m(this.getStartTangent(),2),g=h[0],_=h[1];u=_[0],d=_[1],c=g[0]-_[0],l=g[1]-_[1],f=i||0,p=this.markerStartAngle}else{var v=m(this.getEndTangent(),2),y=v[0],b=v[1];u=b[0],d=b[1],c=y[0]-b[0],l=y[1]-b[1],f=a||0,p=this.markerEndAngle}s=Math.atan2(l,c),o.setLocalEulerAngles(s*180/Math.PI+p),o.setLocalPosition(u+Math.cos(s)*f,d+Math.sin(s)*f)}}},{key:`placeMarkerMid`,value:function(e){var t=this.parsedStyle.d.segments;if(this.markerMidList.forEach(function(e){e.remove()}),e&&qd(e))for(var n=1;n<t.length-1;n++){var r=m(t[n].currentPoint,2),i=r[0],a=r[1],o=n===1?e:e.cloneNode(!0);this.markerMidList.push(o),this.appendChild(o),o.setLocalPosition(i,a)}}},{key:`getTotalLength`,value:function(){return Cc(this)}},{key:`getPointAtLength`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.parsedStyle.d.absolutePath,r=Mi(n,e),i=r.x,a=r.y,o=_t(et(),rt(i,a,0),t?this.getWorldTransform():this.getLocalTransform());return new Pa(o[0],o[1])}},{key:`getPoint`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPointAtLength(e*Cc(this),t)}},{key:`getStartTangent`,value:function(){var e=this.parsedStyle.d.segments,t=[];if(e.length>1){var n=e[0].currentPoint,r=e[1].currentPoint,i=e[1].startTangent;t=[],i?(t.push([n[0]-i[0],n[1]-i[1]]),t.push([n[0],n[1]])):(t.push([r[0],r[1]]),t.push([n[0],n[1]]))}return t}},{key:`getEndTangent`,value:function(){var e=this.parsedStyle.d.segments,t=e.length,n=[];if(t>1){var r=e[t-2].currentPoint,i=e[t-1].currentPoint,a=e[t-1].endTangent;n=[],a?(n.push([i[0]-a[0],i[1]-a[1]]),n.push([i[0],i[1]])):(n.push([r[0],r[1]]),n.push([i[0],i[1]]))}return n}}])}(Qd);ff.PARSED_STYLE_LIST=new Set([].concat(l(Qd.PARSED_STYLE_LIST),[`d`,`markerStart`,`markerMid`,`markerEnd`,`markerStartOffset`,`markerEndOffset`,`isBillboard`,`isSizeAttenuation`]));var pf=[`style`],mf=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=j(n,pf);b(this,t),e=k(this,t,[y({type:U.POLYGON,style:r,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!0}},i)]),e.markerStartAngle=0,e.markerEndAngle=0,e.markerMidList=[];var a=e.parsedStyle,o=a.markerStart,s=a.markerEnd,c=a.markerMid;return o&&qd(o)&&(e.markerStartAngle=o.getLocalEulerAngles(),e.appendChild(o)),c&&qd(c)&&e.placeMarkerMid(c),s&&qd(s)&&(e.markerEndAngle=s.getLocalEulerAngles(),e.appendChild(s)),e.transformMarker(!0),e.transformMarker(!1),e}return T(t,e),S(t,[{key:`attributeChangedCallback`,value:function(e,t,n,r,i){e===`points`?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):e===`markerStartOffset`||e===`markerEndOffset`?(this.transformMarker(!0),this.transformMarker(!1)):e===`markerStart`?(r&&qd(r)&&(this.markerStartAngle=0,r.remove()),i&&qd(i)&&(this.markerStartAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!0))):e===`markerEnd`?(r&&qd(r)&&(this.markerEndAngle=0,r.remove()),i&&qd(i)&&(this.markerEndAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!1))):e===`markerMid`&&this.placeMarkerMid(i)}},{key:`transformMarker`,value:function(e){var t=this.parsedStyle,n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=(t.points||{}).points,s=e?n:r;if(!(!s||!qd(s)||!o)){var c=0,l,u,d=o[0][0],f=o[0][1],p,m;if(e)l=o[1][0]-o[0][0],u=o[1][1]-o[0][1],p=i||0,m=this.markerStartAngle;else{var h=o.length;this.parsedStyle.isClosed?(l=o[h-1][0]-o[0][0],u=o[h-1][1]-o[0][1]):(d=o[h-1][0],f=o[h-1][1],l=o[h-2][0]-o[h-1][0],u=o[h-2][1]-o[h-1][1]),p=a||0,m=this.markerEndAngle}c=Math.atan2(u,l),s.setLocalEulerAngles(c*180/Math.PI+m),s.setLocalPosition(d+Math.cos(c)*p,f+Math.sin(c)*p)}}},{key:`placeMarkerMid`,value:function(e){var t=(this.parsedStyle.points||{}).points;if(this.markerMidList.forEach(function(e){e.remove()}),this.markerMidList=[],e&&qd(e)&&t)for(var n=1;n<(this.parsedStyle.isClosed?t.length:t.length-1);n++){var r=t[n][0],i=t[n][1],a=n===1?e:e.cloneNode(!0);this.markerMidList.push(a),this.appendChild(a),a.setLocalPosition(r,i)}}}])}(Qd);mf.PARSED_STYLE_LIST=new Set([].concat(l(Qd.PARSED_STYLE_LIST),[`points`,`markerStart`,`markerMid`,`markerEnd`,`markerStartOffset`,`markerEndOffset`,`isClosed`,`isBillboard`,`isSizeAttenuation`]));var hf=[`style`],gf=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=e.style,r=j(e,hf);return b(this,t),k(this,t,[y({type:U.POLYLINE,style:n,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!1}},r)])}return T(t,e),S(t,[{key:`getTotalLength`,value:function(){return wc(this)}},{key:`getPointAtLength`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(e/this.getTotalLength(),t)}},{key:`getPoint`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.parsedStyle.points.points;if(this.parsedStyle.points.segments.length===0){var r=[],i=0,a,o,s=this.getTotalLength();n.forEach(function(e,t){n[t+1]&&(a=[0,0],a[0]=i/s,o=Xi(e[0],e[1],n[t+1][0],n[t+1][1]),i+=o,a[1]=i/s,r.push(a))}),this.parsedStyle.points.segments=r}var c=0,l=0;this.parsedStyle.points.segments.forEach(function(t,n){e>=t[0]&&e<=t[1]&&(c=(e-t[0])/(t[1]-t[0]),l=n)});var u=Zi(n[l][0],n[l][1],n[l+1][0],n[l+1][1],c),d=u.x,f=u.y,p=_t(et(),rt(d,f,0),t?this.getWorldTransform():this.getLocalTransform());return new Pa(p[0],p[1])}},{key:`getStartTangent`,value:function(){var e=this.parsedStyle.points.points,t=[];return t.push([e[1][0],e[1][1]]),t.push([e[0][0],e[0][1]]),t}},{key:`getEndTangent`,value:function(){var e=this.parsedStyle.points.points,t=e.length-1,n=[];return n.push([e[t-1][0],e[t-1][1]]),n.push([e[t][0],e[t][1]]),n}}])}(mf);gf.PARSED_STYLE_LIST=new Set([].concat(l(mf.PARSED_STYLE_LIST),[`points`,`markerStart`,`markerMid`,`markerEnd`,`markerStartOffset`,`markerEndOffset`,`isBillboard`]));var _f=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return b(this,t),k(this,t,[y({type:U.RECT},e)])}return T(t,e),S(t)}(Qd);_f.PARSED_STYLE_LIST=new Set([].concat(l(Qd.PARSED_STYLE_LIST),[`x`,`y`,`z`,`width`,`height`,`isBillboard`,`isSizeAttenuation`,`radius`]));var vf=[`style`],yf=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=e.style,r=j(e,vf);return b(this,t),k(this,t,[y({type:U.TEXT,style:y({fill:`black`},n)},r)])}return T(t,e),S(t,[{key:`getComputedTextLength`,value:function(){return this.getGeometryBounds(),this.parsedStyle.metrics?.maxLineWidth||0}},{key:`getLineBoundingRects`,value:function(){return this.getGeometryBounds(),this.parsedStyle.metrics?.lineMetrics||[]}},{key:`isOverflowing`,value:function(){return this.getGeometryBounds(),!!this.parsedStyle.isOverflowing}}])}(Qd);yf.PARSED_STYLE_LIST=new Set([].concat(l(Qd.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`.split(`.`)));var bf=function(){function e(){b(this,e),this.registry={},this.define(U.CIRCLE,$d),this.define(U.ELLIPSE,nf),this.define(U.RECT,_f),this.define(U.IMAGE,cf),this.define(U.LINE,uf),this.define(U.GROUP,af),this.define(U.PATH,ff),this.define(U.POLYGON,mf),this.define(U.POLYLINE,gf),this.define(U.TEXT,yf),this.define(U.HTML,sf)}return S(e,[{key:`define`,value:function(e,t){this.registry[e]=t}},{key:`get`,value:function(e){return this.registry[e]}}])}(),xf={number:function(e){return new Ds(e)},percent:function(e){return new Ds(e,`%`)},px:function(e){return new Ds(e,`px`)},em:function(e){return new Ds(e,`em`)},rem:function(e){return new Ds(e,`rem`)},deg:function(e){return new Ds(e,`deg`)},grad:function(e){return new Ds(e,`grad`)},rad:function(e){return new Ds(e,`rad`)},turn:function(e){return new Ds(e,`turn`)},s:function(e){return new Ds(e,`s`)},ms:function(e){return new Ds(e,`ms`)},registerProperty:function(e){var t=e.name,n=e.inherits,r=e.interpolable,i=e.initialValue,a=e.syntax;Y.styleValueRegistry.registerMetadata({n:t,inh:n,int:r,d:i,syntax:a})},registerLayout:function(e,t){Y.layoutRegistry.registerLayout(e,t)}},Sf=function(e){function t(){var e;b(this,t),e=k(this,t),e.defaultView=null,e.ownerDocument=null,e.nodeName=`document`;try{e.timeline=new Y.AnimationTimeline(e)}catch{}var n={};return ml.forEach(function(e){var t=e.n,r=e.inh,i=e.d;r&&i&&(n[t]=L(i)?i(U.GROUP):i)}),e.documentElement=new af({id:`g-root`,style:n}),e.documentElement.ownerDocument=e,e.documentElement.parentNode=e,e.childNodes=[e.documentElement],e}return T(t,e),S(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(e,t){if(e===`svg`)return this.documentElement;var n=this.defaultView.customElements.get(e);n||=(console.warn(`Unsupported tagName: `,e),e===`tspan`?yf:af);var r=new n(t);return r.ownerDocument=this,r}},{key:`createElementNS`,value:function(e,t,n){return this.createElement(t,n)}},{key:`cloneNode`,value:function(e){throw Error(Ia)}},{key:`destroy`,value:function(){try{this.documentElement.destroyChildren(),this.timeline.destroy()}catch{}}},{key:`elementsFromBBox`,value:function(e,t,n,r){var i=[],a=function(o){if(!(!o.isInteractive()||o.isCulled())){var s=o.parsedStyle.pointerEvents,c=s===void 0?`auto`:s;if(![`auto`,`visiblepainted`,`visiblefill`,`visiblestroke`,`visible`].includes(c)||o.isVisible()){var l=o.getTransformedGeometryBounds(!0);l&&!ja.isEmpty(l)&&l.max[0]>=e&&l.min[0]<=n&&l.max[1]>=t&&l.min[1]<=r&&i.push(o)}o.childNodes&&o.childNodes.forEach(function(e){e instanceof Qd&&a(e)})}};return a(this.documentElement),i.sort(function(e,t){return t.sortable.renderOrder-e.sortable.renderOrder}),i}},{key:`elementFromPointSync`,value:function(e,t){var n=this.defaultView.canvas2Viewport({x:e,y:t}),r=n.x,i=n.y,a=this.defaultView.getConfig(),o=a.width,s=a.height;if(r<0||i<0||r>o||i>s)return null;var c=this.defaultView.viewport2Client({x:r,y:i}),l=c.x,u=c.y,d=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!0,position:{x:e,y:t,viewportX:r,viewportY:i,clientX:l,clientY:u},picked:[]}).picked;return d&&d[0]||this.documentElement}},{key:`elementFromPoint`,value:function(){var e=xa(ya().mark(function e(t,n){var r,i,a,o,s,c,l,u,d,f,p;return ya().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=this.defaultView.canvas2Viewport({x:t,y:n}),i=r.x,a=r.y,o=this.defaultView.getConfig(),s=o.width,c=o.height,!(i<0||a<0||i>s||a>c)){e.next=1;break}return e.abrupt(`return`,null);case 1:return l=this.defaultView.viewport2Client({x:i,y:a}),u=l.x,d=l.y,e.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!0,position:{x:t,y:n,viewportX:i,viewportY:a,clientX:u,clientY:d},picked:[]});case 2:return f=e.sent,p=f.picked,e.abrupt(`return`,p&&p[0]||this.documentElement);case 3:case`end`:return e.stop()}},e,this)}));function t(t,n){return e.apply(this,arguments)}return t}()},{key:`elementsFromPointSync`,value:function(e,t){var n=this.defaultView.canvas2Viewport({x:e,y:t}),r=n.x,i=n.y,a=this.defaultView.getConfig(),o=a.width,s=a.height;if(r<0||i<0||r>o||i>s)return[];var c=this.defaultView.viewport2Client({x:r,y:i}),l=c.x,u=c.y,d=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!1,position:{x:e,y:t,viewportX:r,viewportY:i,clientX:l,clientY:u},picked:[]}).picked;return d[d.length-1]!==this.documentElement&&d.push(this.documentElement),d}},{key:`elementsFromPoint`,value:function(){var e=xa(ya().mark(function e(t,n){var r,i,a,o,s,c,l,u,d,f,p;return ya().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=this.defaultView.canvas2Viewport({x:t,y:n}),i=r.x,a=r.y,o=this.defaultView.getConfig(),s=o.width,c=o.height,!(i<0||a<0||i>s||a>c)){e.next=1;break}return e.abrupt(`return`,[]);case 1:return l=this.defaultView.viewport2Client({x:i,y:a}),u=l.x,d=l.y,e.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!1,position:{x:t,y:n,viewportX:i,viewportY:a,clientX:u,clientY:d},picked:[]});case 2:return f=e.sent,p=f.picked,p[p.length-1]!==this.documentElement&&p.push(this.documentElement),e.abrupt(`return`,p);case 3:case`end`:return e.stop()}},e,this)}));function t(t,n){return e.apply(this,arguments)}return t}()},{key:`appendChild`,value:function(e,t){throw Error(La)}},{key:`insertBefore`,value:function(e,t){throw Error(La)}},{key:`removeChild`,value:function(e,t){throw Error(La)}},{key:`replaceChild`,value:function(e,t,n){throw Error(La)}},{key:`append`,value:function(){throw Error(La)}},{key:`prepend`,value:function(){throw Error(La)}},{key:`getElementById`,value:function(e){return this.documentElement.getElementById(e)}},{key:`getElementsByName`,value:function(e){return this.documentElement.getElementsByName(e)}},{key:`getElementsByTagName`,value:function(e){return this.documentElement.getElementsByTagName(e)}},{key:`getElementsByClassName`,value:function(e){return this.documentElement.getElementsByClassName(e)}},{key:`querySelector`,value:function(e){return this.documentElement.querySelector(e)}},{key:`querySelectorAll`,value:function(e){return this.documentElement.querySelectorAll(e)}},{key:`find`,value:function(e){return this.documentElement.find(e)}},{key:`findAll`,value:function(e){return this.documentElement.findAll(e)}}])}(Zu),Cf=function(){function e(t){b(this,e),this.strategies=t}return S(e,[{key:`apply`,value:function(t){var n=t.config,r=t.camera,i=t.renderingService,a=t.renderingContext,o=this.strategies;i.hooks.cull.tap(e.tag,function(e){if(e){var t=e.cullable;if(o.length===0?t.visible=a.unculledEntities.indexOf(e.entity)>-1:t.visible=o.every(function(t){return t.isVisible(r,e)}),!e.isCulled()&&e.isVisible())return e;var i=n.future?.experimentalCancelEventPropagation===!0;return e.dispatchEvent(new Yu(ad.CULLED),i,i),null}return e}),i.hooks.afterRender.tap(e.tag,function(e){e.cullable.visibilityPlaneMask=-1})}}])}();Cf.tag=`Culling`;var wf=function(){function e(){var t=this;b(this,e),this.autoPreventDefault=!1,this.rootPointerEvent=new qu(null),this.rootWheelEvent=new Ju(null),this.onPointerMove=function(e){var n,r=(n=t.context.renderingContext.root)==null||(n=n.ownerDocument)==null?void 0:n.defaultView;if(!(r.supportsTouchEvents&&e.pointerType===`touch`)){var i=ee(t.normalizeToPointerEvent(e,r)),a;try{for(i.s();!(a=i.n()).done;){var o=a.value,s=t.bootstrapEvent(t.rootPointerEvent,o,r,e);t.context.eventService.mapEvent(s)}}catch(e){i.e(e)}finally{i.f()}t.setCursor(t.context.eventService.cursor)}},this.onClick=function(e){var n,r=(n=t.context.renderingContext.root)==null||(n=n.ownerDocument)==null?void 0:n.defaultView,i=ee(t.normalizeToPointerEvent(e,r)),a;try{for(i.s();!(a=i.n()).done;){var o=a.value,s=t.bootstrapEvent(t.rootPointerEvent,o,r,e);t.context.eventService.mapEvent(s)}}catch(e){i.e(e)}finally{i.f()}t.setCursor(t.context.eventService.cursor)}}return S(e,[{key:`apply`,value:function(t){var n=this;this.context=t;var r=t.renderingService,i=this.context.renderingContext.root.ownerDocument.defaultView;this.context.eventService.setPickHandler(function(e){return n.context.renderingService.hooks.pickSync.call({position:e,picked:[],topmost:!0}).picked[0]||null}),r.hooks.pointerWheel.tap(e.tag,function(e){var t=n.normalizeWheelEvent(e);n.context.eventService.mapEvent(t)}),r.hooks.pointerDown.tap(e.tag,function(e){if(!(i.supportsTouchEvents&&e.pointerType===`touch`)){var t=n.normalizeToPointerEvent(e,i);n.autoPreventDefault&&t[0].isNormalized&&(e.cancelable||!(`cancelable`in e))&&e.preventDefault();var r=ee(t),a;try{for(r.s();!(a=r.n()).done;){var o=a.value,s=n.bootstrapEvent(n.rootPointerEvent,o,i,e);n.context.eventService.mapEvent(s)}}catch(e){r.e(e)}finally{r.f()}n.setCursor(n.context.eventService.cursor)}}),r.hooks.pointerUp.tap(e.tag,function(e){if(!(i.supportsTouchEvents&&e.pointerType===`touch`)){var t=n.context.contextService.getDomElement(),r=n.context.eventService.isNativeEventFromCanvas(t,e)?``:`outside`,a=ee(n.normalizeToPointerEvent(e,i)),o;try{for(a.s();!(o=a.n()).done;){var s=o.value,c=n.bootstrapEvent(n.rootPointerEvent,s,i,e);c.type+=r,n.context.eventService.mapEvent(c)}}catch(e){a.e(e)}finally{a.f()}n.setCursor(n.context.eventService.cursor)}}),r.hooks.pointerMove.tap(e.tag,this.onPointerMove),r.hooks.pointerOver.tap(e.tag,this.onPointerMove),r.hooks.pointerOut.tap(e.tag,this.onPointerMove),r.hooks.click.tap(e.tag,this.onClick),r.hooks.pointerCancel.tap(e.tag,function(e){var t=ee(n.normalizeToPointerEvent(e,i)),r;try{for(t.s();!(r=t.n()).done;){var a=r.value,o=n.bootstrapEvent(n.rootPointerEvent,a,i,e);n.context.eventService.mapEvent(o)}}catch(e){t.e(e)}finally{t.f()}n.setCursor(n.context.eventService.cursor)})}},{key:`bootstrapEvent`,value:function(e,t,n,r){e.view=n,e.originalEvent=null,e.nativeEvent=r,e.pointerId=t.pointerId,e.width=t.width,e.height=t.height,e.isPrimary=t.isPrimary,e.pointerType=t.pointerType,e.pressure=t.pressure,e.tangentialPressure=t.tangentialPressure,e.tiltX=t.tiltX,e.tiltY=t.tiltY,e.twist=t.twist,this.transferMouseData(e,t);var i=this.context.eventService.client2Viewport({x:t.clientX,y:t.clientY}),a=i.x,o=i.y;e.viewport.x=a,e.viewport.y=o;var s=this.context.eventService.viewport2Canvas(e.viewport),c=s.x,l=s.y;return e.canvas.x=c,e.canvas.y=l,e.global.copyFrom(e.canvas),e.offset.copyFrom(e.canvas),e.isTrusted=r.isTrusted,e.type===`pointerleave`&&(e.type=`pointerout`),e.type.startsWith(`mouse`)&&(e.type=e.type.replace(`mouse`,`pointer`)),e.type.startsWith(`touch`)&&(e.type=Xl[e.type]||e.type),e}},{key:`normalizeWheelEvent`,value:function(e){var t=this.rootWheelEvent;this.transferMouseData(t,e),t.deltaMode=e.deltaMode,t.deltaX=e.deltaX,t.deltaY=e.deltaY,t.deltaZ=e.deltaZ;var n=this.context.eventService.client2Viewport({x:e.clientX,y:e.clientY}),r=n.x,i=n.y;t.viewport.x=r,t.viewport.y=i;var a=this.context.eventService.viewport2Canvas(t.viewport),o=a.x,s=a.y;return t.canvas.x=o,t.canvas.y=s,t.global.copyFrom(t.canvas),t.offset.copyFrom(t.canvas),t.nativeEvent=e,t.type=e.type,t}},{key:`transferMouseData`,value:function(e,t){e.isTrusted=t.isTrusted,e.srcElement=t.srcElement,e.timeStamp=Zl.now(),e.type=t.type,e.altKey=t.altKey,e.metaKey=t.metaKey,e.shiftKey=t.shiftKey,e.ctrlKey=t.ctrlKey,e.button=t.button,e.buttons=t.buttons,e.client.x=t.clientX,e.client.y=t.clientY,e.movement.x=t.movementX,e.movement.y=t.movementY,e.page.x=t.pageX,e.page.y=t.pageY,e.screen.x=t.screenX,e.screen.y=t.screenY,e.relatedTarget=null}},{key:`setCursor`,value:function(e){this.context.contextService.applyCursorStyle(e||this.context.config.cursor||`default`)}},{key:`normalizeToPointerEvent`,value:function(e,t){var n=[];if(t.isTouchEvent(e))for(var r=0;r<e.changedTouches.length;r++){var i=e.changedTouches[r];Mn(i.button)&&(i.button=0),Mn(i.buttons)&&(i.buttons=1),Mn(i.isPrimary)&&(i.isPrimary=e.touches.length===1&&e.type===`touchstart`),Mn(i.width)&&(i.width=i.radiusX||1),Mn(i.height)&&(i.height=i.radiusY||1),Mn(i.tiltX)&&(i.tiltX=0),Mn(i.tiltY)&&(i.tiltY=0),Mn(i.pointerType)&&(i.pointerType=`touch`),Mn(i.pointerId)&&(i.pointerId=i.identifier||0),Mn(i.pressure)&&(i.pressure=i.force||.5),Mn(i.twist)&&(i.twist=0),Mn(i.tangentialPressure)&&(i.tangentialPressure=0),i.isNormalized=!0,i.type=e.type,n.push(i)}else if(t.isMouseEvent(e)){var a=e;Mn(a.isPrimary)&&(a.isPrimary=!0),Mn(a.width)&&(a.width=1),Mn(a.height)&&(a.height=1),Mn(a.tiltX)&&(a.tiltX=0),Mn(a.tiltY)&&(a.tiltY=0),Mn(a.pointerType)&&(a.pointerType=`mouse`),Mn(a.pointerId)&&(a.pointerId=Yl),Mn(a.pressure)&&(a.pressure=.5),Mn(a.twist)&&(a.twist=0),Mn(a.tangentialPressure)&&(a.tangentialPressure=0),a.isNormalized=!0,n.push(a)}else n.push(e);return n}}])}();wf.tag=`Event`;var Tf=[U.CIRCLE,U.ELLIPSE,U.IMAGE,U.RECT,U.LINE,U.POLYLINE,U.POLYGON,U.TEXT,U.PATH,U.HTML],Ef=function(){function e(){b(this,e)}return S(e,[{key:`isVisible`,value:function(e,t){var n,r=t.cullable;if(!r.enable)return!0;var i=t.getRenderBounds();if(ja.isEmpty(i))return!1;var a=e.getFrustum(),o=(n=t.parentNode)==null||(n=n.cullable)==null?void 0:n.visibilityPlaneMask;return r.visibilityPlaneMask=this.computeVisibilityWithPlaneMask(t,i,o||W.INDETERMINATE,a.planes),r.visible=r.visibilityPlaneMask!==W.OUTSIDE,r.visible}},{key:`computeVisibilityWithPlaneMask`,value:function(e,t,n,r){if(n===W.OUTSIDE||n===W.INSIDE)return n;for(var i=W.INSIDE,a=Tf.indexOf(e.nodeName)>-1,o=0,s=r.length;o<s;++o){var c=1<<o;if((n&c)!==0&&!(a&&(o===4||o===5))){var l=r[o],u=l.normal,d=l.distance;if(mt(u,t.getPositiveFarPoint(r[o]))+d<0)return W.OUTSIDE;mt(u,t.getNegativeFarPoint(r[o]))+d<0&&(i|=c)}}return i}}])}(),Df=function(){function e(){b(this,e),this.mutationRecords=[],this.isFirstTimeRendering=!0,this.isFirstTimeRenderingFinished=!1}return S(e,[{key:`apply`,value:function(t){var n=this,r=t.renderingService,i=t.renderingContext.root.ownerDocument.defaultView,a=function(e){r.dirty()},o=function(e){var t,i=e.detail;(t=n.mutationRecords).push.apply(t,l(i)),r.dirty()},s=function(e){var t=e.target;Y.enableSizeAttenuation&&Y.styleValueRegistry.updateSizeAttenuation(t,i.getCamera().getZoom())},c=function(e){var t=e.target;Y.sceneGraphService.dirtyToRoot(t),r.dirty()};r.hooks.init.tap(e.tag,function(){i.addEventListener(ad.MOUNTED,s),i.addEventListener(ad.UNMOUNTED,c),i.addEventListener(ad.ATTR_MODIFIED,a),i.addEventListener(ad.BOUNDS_CHANGED,o)}),r.hooks.destroy.tap(e.tag,function(){i.removeEventListener(ad.MOUNTED,s),i.removeEventListener(ad.UNMOUNTED,c),i.removeEventListener(ad.ATTR_MODIFIED,a),i.removeEventListener(ad.BOUNDS_CHANGED,o),n.mutationRecords=[]});var u=Y.globalThis.requestIdleCallback??pu.bind(Y.globalThis);r.hooks.endFrame.tap(e.tag,function(){n.isFirstTimeRendering&&(n.isFirstTimeRendering=!1,u(function(){n.isFirstTimeRenderingFinished=!0})),n.mutationRecords=[]})}}])}();Df.tag=`Prepare`;var Of=function(e){return e.READY=`ready`,e.BEFORE_RENDER=`beforerender`,e.RERENDER=`rerender`,e.AFTER_RENDER=`afterrender`,e.BEFORE_DESTROY=`beforedestroy`,e.AFTER_DESTROY=`afterdestroy`,e.RESIZE=`resize`,e.DIRTY_RECTANGLE=`dirtyrectangle`,e.RENDERER_CHANGED=`rendererchanged`,e}({}),kf=500,Af=.1,jf=1e3,Mf=new Yu(ad.MOUNTED),Nf=new Yu(ad.UNMOUNTED),Pf=new Yu(Of.BEFORE_RENDER),Ff=new Yu(Of.RERENDER),If=new Yu(Of.AFTER_RENDER),Lf=function(e){function t(e){var n;b(this,t),n=k(this,t),n.Element=Qd,n.inited=!1,n.context={};var r=e.container,i=e.canvas,a=e.renderer,o=e.width,s=e.height,c=e.background,l=e.cursor,u=e.supportsMutipleCanvasesInOneContainer,d=e.cleanUpOnDestroy,f=d===void 0?!0:d,p=e.offscreenCanvas,m=e.devicePixelRatio,h=e.requestAnimationFrame,g=e.cancelAnimationFrame,_=e.createImage,v=e.supportsTouchEvents,x=e.supportsPointerEvents,S=e.isTouchEvent,C=e.isMouseEvent,w=e.dblClickSpeed,T=o,E=s,D=m||zl&&window.devicePixelRatio||1;return D=D>=1?Math.ceil(D):1,i&&(T=o||ql(i)||i.width/D,E=s||Jl(i)||i.height/D),n.customElements=new bf,n.devicePixelRatio=D,n.requestAnimationFrame=h??pu.bind(Y.globalThis),n.cancelAnimationFrame=g??mu.bind(Y.globalThis),n.createImage=_??function(){return new window.Image},n.supportsTouchEvents=v??`ontouchstart`in Y.globalThis,n.supportsPointerEvents=x??!!Y.globalThis.PointerEvent,n.isTouchEvent=S??function(e){return n.supportsTouchEvents&&e instanceof Y.globalThis.TouchEvent},n.isMouseEvent=C??function(e){return!Y.globalThis.MouseEvent||e instanceof Y.globalThis.MouseEvent&&(!n.supportsPointerEvents||!(e instanceof Y.globalThis.PointerEvent))},p&&(Y.offscreenCanvas=p),n.document=new Sf,n.document.defaultView=n,u||Rl(r,n,f),n.initRenderingContext(y(y({},e),{},{width:T,height:E,background:c??`transparent`,cursor:l??`default`,cleanUpOnDestroy:f,devicePixelRatio:D,requestAnimationFrame:n.requestAnimationFrame,cancelAnimationFrame:n.cancelAnimationFrame,createImage:n.createImage,supportsTouchEvents:n.supportsTouchEvents,supportsPointerEvents:n.supportsPointerEvents,isTouchEvent:n.isTouchEvent,isMouseEvent:n.isMouseEvent,dblClickSpeed:w??200})),n.initDefaultCamera(T,E,a.clipSpaceNearZ),n.initRenderer(a,!0),n}return T(t,e),S(t,[{key:`initRenderingContext`,value:function(e){this.context.config=e,this.context.renderingContext={root:this.document.documentElement,unculledEntities:[],renderListCurrentFrame:[],renderReasons:new Set,force:!1,dirty:!1}}},{key:`initDefaultCamera`,value:function(e,t,n){var r=this,i=new Y.CameraContribution;i.clipSpaceNearZ=n,i.setType(co.EXPLORING,lo.DEFAULT).setPosition(e/2,t/2,kf).setFocalPoint(e/2,t/2,0).setOrthographic(e/-2,e/2,t/2,t/-2,Af,jf),i.canvas=this,i.eventEmitter.on(fo.UPDATED,function(){r.context.renderingContext.renderReasons.add(td.CAMERA_CHANGED),Y.enableSizeAttenuation&&r.getConfig().renderer.getConfig().enableSizeAttenuation&&r.updateSizeAttenuation()}),this.context.camera=i}},{key:`updateSizeAttenuation`,value:function(){var e=this.getCamera().getZoom();this.document.documentElement.forEach(function(t){Y.styleValueRegistry.updateSizeAttenuation(t,e)})}},{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 e=this;return this.readyPromise||(this.readyPromise=new Promise(function(t){e.resolveReadyPromise=function(){t(e)}}),this.inited&&this.resolveReadyPromise()),this.readyPromise}},{key:`destroy`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1?arguments[1]:void 0;cs.clearCache();var n=this.getConfig().future?.experimentalCancelEventPropagation===!0;t||this.dispatchEvent(new Yu(Of.BEFORE_DESTROY),n,n),this.frameId&&this.cancelAnimationFrame(this.frameId);var r=this.getRoot();e&&(this.unmountChildren(r),this.document.destroy(),this.getEventService().destroy()),this.getRenderingService().destroy(),this.getContextService().destroy(),t||this.dispatchEvent(new Yu(Of.AFTER_DESTROY),n,n);var i=function(e){e.currentTarget=null,e.manager=null,e.target=null,e.relatedNode=null};i(Mf),i(Nf),i(Pf),i(Ff),i(If),i(Yd),i(Ud),i(Wd),i(Gd),Y.textService.clearCache()}},{key:`changeSize`,value:function(e,t){this.resize(e,t)}},{key:`resize`,value:function(e,t){var n=this.context.config;n.width=e,n.height=t,this.getContextService().resize(e,t);var r=this.context.camera,i=r.getProjectionMode();r.setPosition(e/2,t/2,kf).setFocalPoint(e/2,t/2,0),i===uo.ORTHOGRAPHIC?r.setOrthographic(e/-2,e/2,t/2,t/-2,r.getNear(),r.getFar()):r.setAspect(e/t);var a=n.future?.experimentalCancelEventPropagation===!0;this.dispatchEvent(new Yu(Of.RESIZE,{width:e,height:t}),a,a)}},{key:`appendChild`,value:function(e,t){return this.document.documentElement.appendChild(e,t)}},{key:`insertBefore`,value:function(e,t){return this.document.documentElement.insertBefore(e,t)}},{key:`removeChild`,value:function(e){return this.document.documentElement.removeChild(e)}},{key:`removeChildren`,value:function(){this.document.documentElement.removeChildren()}},{key:`destroyChildren`,value:function(){this.document.documentElement.destroyChildren()}},{key:`render`,value:function(e){var t=this;e&&(Pf.detail=e,If.detail=e);var n=this.getConfig().future?.experimentalCancelEventPropagation===!0;this.dispatchEvent(Pf,n,n),this.getRenderingService().render(this,e,function(){t.dispatchEvent(Ff,n,n)}),this.dispatchEvent(If,n,n)}},{key:`run`,value:function(){var e=this,t=function(n,r){e.render(r),e.frameId=e.requestAnimationFrame(t)};t()}},{key:`initRenderer`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!e)throw Error(`Renderer is required.`);this.inited=!1,this.readyPromise=void 0,this.context.renderingPlugins=[],this.context.renderingPlugins.push(new wf,new Df,new Cf([new Ef])),this.loadRendererContainerModule(e),this.context.contextService=new this.context.ContextService(y(y({},Y),this.context)),this.context.renderingService=new nd(Y,this.context),this.context.eventService=new $u(Y,this.context),this.context.eventService.init(),this.context.contextService.init?(this.context.contextService.init(),this.initRenderingService(e,n,!0)):this.context.contextService.initAsync().then(function(){t.initRenderingService(e,n)}).catch(function(e){console.error(e)})}},{key:`initRenderingService`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.context.renderingService.init(function(){t.inited=!0;var i=t.getConfig().future?.experimentalCancelEventPropagation===!0;n?r?t.requestAnimationFrame(function(){t.dispatchEvent(new Yu(Of.READY),i,i)}):t.dispatchEvent(new Yu(Of.READY),i,i):t.dispatchEvent(new Yu(Of.RENDERER_CHANGED),i,i),t.readyPromise&&t.resolveReadyPromise(),n||t.getRoot().forEach(function(e){var t,n;(t=(n=e).dirty)==null||t.call(n,!0,!0)}),t.mountChildren(t.getRoot()),e.getConfig().enableAutoRendering&&t.run()})}},{key:`loadRendererContainerModule`,value:function(e){var t=this;e.getPlugins().forEach(function(e){e.context=t.context,e.init(Y)})}},{key:`setRenderer`,value:function(e){var t=this.getConfig();if(t.renderer!==e){var n=t.renderer;t.renderer=e,this.destroy(!1,!0),l(n?.getPlugins()||[]).reverse().forEach(function(e){e.destroy(Y)}),this.initRenderer(e)}}},{key:`setCursor`,value:function(e){var t=this.getConfig();t.cursor=e,this.getContextService().applyCursorStyle(e)}},{key:`unmountChildren`,value:function(e){var t=this;if(e.childNodes.forEach(function(e){t.unmountChildren(e)}),this.inited){if(e.isMutationObserved)e.dispatchEvent(Nf);else{var n=this.getConfig().future?.experimentalCancelEventPropagation===!0;Nf.target=e,this.dispatchEvent(Nf,!0,n)}e!==this.document.documentElement&&(e.ownerDocument=null),e.isConnected=!1}e.isCustomElement&&e.disconnectedCallback&&e.disconnectedCallback()}},{key:`mountChildren`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Ql(e);if(this.inited){if(!e.isConnected&&(e.ownerDocument=this.document,e.isConnected=!0,!n))if(e.isMutationObserved)e.dispatchEvent(Mf);else{var r=this.getConfig().future?.experimentalCancelEventPropagation===!0;Mf.target=e,this.dispatchEvent(Mf,!0,r)}}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: `,e.nodeName);e.childNodes.forEach(function(e){t.mountChildren(e,n)}),e.isCustomElement&&e.connectedCallback&&e.connectedCallback()}},{key:`mountFragment`,value:function(e){this.mountChildren(e,!1)}},{key:`client2Viewport`,value:function(e){return this.getEventService().client2Viewport(e)}},{key:`viewport2Client`,value:function(e){return this.getEventService().viewport2Client(e)}},{key:`viewport2Canvas`,value:function(e){return this.getEventService().viewport2Canvas(e)}},{key:`canvas2Viewport`,value:function(e){return this.getEventService().canvas2Viewport(e)}},{key:`getPointByClient`,value:function(e,t){return this.client2Viewport({x:e,y:t})}},{key:`getClientByPoint`,value:function(e,t){return this.viewport2Client({x:e,y:t})}}])}(Xu),Rf=function(){function e(){b(this,e),this.cacheStore=new Map}return S(e,[{key:`onRefAdded`,value:function(e){}},{key:`has`,value:function(e){return this.cacheStore.has(e)}},{key:`put`,value:function(e,t,n){return this.cacheStore.has(e)?!1:(this.cacheStore.set(e,{value:t,counter:new Set([n.entity])}),this.onRefAdded(n),!0)}},{key:`get`,value:function(e,t){var n=this.cacheStore.get(e);return n?(n.counter.has(t.entity)||(n.counter.add(t.entity),this.onRefAdded(t)),n.value):null}},{key:`update`,value:function(e,t,n){var r=this.cacheStore.get(e);return r?(r.value=y(y({},r.value),t),r.counter.has(n.entity)||(r.counter.add(n.entity),this.onRefAdded(n)),!0):!1}},{key:`release`,value:function(e,t){var n=this.cacheStore.get(e);return n?(n.counter.delete(t.entity),n.counter.size<=0&&this.cacheStore.delete(e),!0):!1}},{key:`releaseRef`,value:function(e){var t=this;Array.from(this.cacheStore.keys()).forEach(function(n){t.release(n,e)})}},{key:`getSize`,value:function(){return this.cacheStore.size}},{key:`clear`,value:function(){this.cacheStore.clear()}}])}(),zf=[],Bf=[],Vf=function(){function e(){b(this,e)}return S(e,null,[{key:`stop`,value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e.api;e.rafId&&=(t.cancelAnimationFrame(e.rafId),null)}},{key:`executeTask`,value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e.api;zf.length<=0&&Bf.length<=0||(Bf.forEach(function(e){return e()}),Bf=zf.splice(0,e.TASK_NUM_PER_FRAME),e.rafId=t.requestAnimationFrame(function(){e.executeTask(t)}))}},{key:`sliceImage`,value:function(t,n,r,i){for(var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:e.api,s=t.naturalWidth||t.width,c=t.naturalHeight||t.height,l=n-a,u=r-a,d=Math.ceil(s/l),f=Math.ceil(c/u),p={tileSize:[n,r],gridSize:[f,d],tiles:Array(f).fill(null).map(function(){return Array(d).fill(null)})},m=function(e){for(var a=function(a){zf.push(function(){var d=a*l,f=e*u,m=[Math.min(n,s-d),Math.min(r,c-f)],h=m[0],g=m[1],_=o.createCanvas();_.width=n,_.height=r,_.getContext(`2d`).drawImage(t,d,f,h,g,0,0,h,g),p.tiles[e][a]={x:d,y:f,tileX:a,tileY:e,data:_},i()})},f=0;f<d;f++)a(f)},h=0;h<f;h++)m(h);return e.stop(),e.executeTask(),p}}])}();Vf.TASK_NUM_PER_FRAME=10;var Hf=new Rf;Hf.onRefAdded=function(e){var t=this;e.addEventListener(ad.DESTROY,function(){t.releaseRef(e)},{once:!0})};var Uf=function(){function e(t,n){b(this,e),this.gradientCache={},this.patternCache={},this.context=t,this.runtime=n}return S(e,[{key:`getImageSync`,value:function(e,t,n){var r=un(e)?e:e.src;if(Hf.has(r)){var i=Hf.get(r,t);if(i.img.complete)return n?.(i),i}return this.getOrCreateImage(e,t).then(function(e){n?.(e)}).catch(function(e){console.error(e)}),null}},{key:`getOrCreateImage`,value:function(e,t){var n=this,r=un(e)?e:e.src;if(!un(e)&&!Hf.has(r)){var i={img:e,size:[e.naturalWidth||e.width,e.naturalHeight||e.height],tileSize:Wf(e)};Hf.put(r,i,t)}if(Hf.has(r)){var a=Hf.get(r,t);return a.img.complete?Promise.resolve(a):new Promise(function(e,t){a.img.addEventListener(`load`,function(){a.size=[a.img.naturalWidth||a.img.width,a.img.naturalHeight||a.img.height],a.tileSize=Wf(a.img),e(a)}),a.img.addEventListener(`error`,function(e){t(e)})})}return new Promise(function(e,i){var a=n.context.config.createImage();if(a){var o={img:a,size:[0,0],tileSize:Wf(a)};Hf.put(r,o,t),a.onload=function(){o.size=[a.naturalWidth||a.width,a.naturalHeight||a.height],o.tileSize=Wf(o.img),e(o)},a.onerror=function(e){i(e)},a.crossOrigin=`Anonymous`,a.src=r}})}},{key:`createDownSampledImage`,value:function(){var e=xa(ya().mark(function e(t,n){var r,i,a,o,s,c,l,u,d,f,p,h,g,_;return ya().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=1,this.getOrCreateImage(t,n);case 1:if(r=e.sent,r.downSamplingRate===void 0){e.next=2;break}return e.abrupt(`return`,r);case 2:if(i=this.context.config.enableLargeImageOptimization,a=typeof i==`boolean`?{}:i,o=a.maxDownSampledImageSize,s=o===void 0?2048:o,c=a.downSamplingRateThreshold,l=c===void 0?.5:c,u=this.runtime.globalThis.createImageBitmap,d=m(r.size,2),f=d[0],p=d[1],h=r.img,g=Math.min((s+s)/(f+p),Math.max(.01,Math.min(l,.5))),_=y(y({},r),{},{downSamplingRate:g}),Hf.update(r.img.src,_,n),!u){e.next=7;break}return e.prev=3,e.next=4,u(r.img,{resizeWidth:f*g,resizeHeight:p*g});case 4:h=e.sent,e.next=6;break;case 5:e.prev=5,e.catch(3),g=1;case 6:e.next=8;break;case 7:g=1;case 8:return _=y(y({},this.getImageSync(t,n)),{},{downSampled:h,downSamplingRate:g}),Hf.update(r.img.src,_,n),e.abrupt(`return`,_);case 9:case`end`:return e.stop()}},e,this,[[3,5]])}));function t(t,n){return e.apply(this,arguments)}return t}()},{key:`createImageTiles`,value:function(){var e=xa(ya().mark(function e(t,n,r,i){var a,o,s,c,l;return ya().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=1,this.getOrCreateImage(t,i);case 1:return a=e.sent,o=i.ownerDocument.defaultView,s=o.requestAnimationFrame,c=o.cancelAnimationFrame,Vf.api={requestAnimationFrame:s,cancelAnimationFrame:c,createCanvas:function(){return ed.createCanvas()}},l=y(y({},a),Vf.sliceImage(a.img,a.tileSize[0],a.tileSize[0],r)),Hf.update(a.img.src,l,i),e.abrupt(`return`,l);case 2:case`end`:return e.stop()}},e,this)}));function t(t,n,r,i){return e.apply(this,arguments)}return t}()},{key:`releaseImage`,value:function(e,t){Hf.release(un(e)?e:e.src,t)}},{key:`releaseImageRef`,value:function(e){Hf.releaseRef(e)}},{key:`getOrCreatePatternSync`,value:function(e,t,n,r,i,a,o){var s=this.generatePatternKey(t);if(s&&this.patternCache[s])return this.patternCache[s];var c=t.image,l=t.repetition,u=t.transform,d,f=!1;un(c)?d=this.getImageSync(c,e,o)?.img:r?(d=r,f=!0):d=c;var p=d&&n.createPattern(d,l);if(p){var m=u?Mu(Zc(u),new Qd({})):ce(P());f&&I(m,m,[1/i,1/i,1]),p.setTransform({a:m[0],b:m[1],c:m[4],d:m[5],e:m[12]+a[0],f:m[13]+a[1]})}return s&&p&&(this.patternCache[s]=p),p}},{key:`getOrCreateGradient`,value:function(e,t){var n=this.generateGradientKey(e),r=e.type,i=e.steps,a=e.min,o=e.width,s=e.height,c=e.angle,l=e.cx,u=e.cy,d=e.size;if(this.gradientCache[n])return this.gradientCache[n];var f=null;if(r===Ss.LinearGradient){var p=Bs(a,o,s,c),m=p.x1,h=p.y1,g=p.x2,_=p.y2;f=t.createLinearGradient(m,h,g,_)}else if(r===Ss.RadialGradient){var v=Vs(a,o,s,l,u,d),y=v.x,b=v.y,x=v.r;f=t.createRadialGradient(y,b,0,y,b,x)}return f&&(i.forEach(function(e){var t=e.offset,n=e.color;if(t.unit===q.kPercentage){var r;(r=f)==null||r.addColorStop(t.value/100,n.toString())}}),this.gradientCache[n]=f),this.gradientCache[n]}},{key:`generateGradientKey`,value:function(e){var t=e.type,n=e.min,r=e.width,i=e.height,a=e.steps,o=e.angle,s=e.cx,c=e.cy,l=e.size;return`gradient-${t}-${o?.toString()||0}-${s?.toString()||0}-${c?.toString()||0}-${l?.toString()||0}-${n[0]}-${n[1]}-${r}-${i}-${a.map(function(e){return`${e.offset}${e.color}`}).join(`-`)}`}},{key:`generatePatternKey`,value:function(e){var t=e.image,n=e.repetition;if(un(t))return`pattern-${t}-${n}`;if(t.nodeName===`rect`)return`pattern-${t.entity}-${n}`}}])}();Uf.isSupportTile=!!ed.createCanvas();function Wf(e){if(!e.complete)return[0,0];var t=e.naturalWidth||e.width,n=e.naturalHeight||e.height,r=256;return[256,512].forEach(function(e){Math.ceil(n/e)*Math.ceil(t/e)<1e3&&(r=e)}),[r,r]}var Gf=function(){function e(){b(this,e)}return S(e,[{key:`apply`,value:function(t){var n=t.renderingService,r=t.renderingContext,i=t.imagePool,a=r.root.ownerDocument.defaultView,o=function(e,t,n){var r=e.parsedStyle,i=r.width,a=r.height;i&&!a?e.setAttribute(`height`,n/t*i):!i&&a&&e.setAttribute(`width`,t/n*a)},s=function(e){var t=e.target,r=t.nodeName,a=t.attributes;if(r===U.IMAGE){var s=a.src,c=a.keepAspectRatio;i.getImageSync(s,t,function(e){var r=e.img,i=r.width,a=r.height;c&&o(t,i,a),t.dirty(),n.dirty()})}},c=function(e){var t=e.target,r=e.attrName,a=e.prevValue,s=e.newValue;t.nodeName!==U.IMAGE||r!==`src`||(a!==s&&i.releaseImage(a,t),un(s)&&i.getOrCreateImage(s,t).then(function(e){var r=e.img,i=r.width,a=r.height;t.attributes.keepAspectRatio&&o(t,i,a),t.dirty(),n.dirty()}).catch(function(){}))};n.hooks.init.tap(e.tag,function(){a.addEventListener(ad.MOUNTED,s),a.addEventListener(ad.ATTR_MODIFIED,c)}),n.hooks.destroy.tap(e.tag,function(){a.removeEventListener(ad.MOUNTED,s),a.removeEventListener(ad.ATTR_MODIFIED,c)})}}])}();Gf.tag=`LoadImage`;var Kf=Object.freeze({__proto__:null,ImagePool:Uf,Plugin:function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.name=`image-loader`,e}return T(t,e),S(t,[{key:`init`,value:function(e){this.context.imagePool=new Uf(this.context,e),this.addRenderingPlugin(new Gf)}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins()}}])}(Ca)}),qf=`g-canvas-camera`,Jf=function(){function e(){b(this,e),this.displayObjectHTMLElementMap=new WeakMap}return S(e,[{key:`joinTransformMatrix`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0,0,0];return`matrix(${[e[0],e[1],e[4],e[5],e[12]+t[0],e[13]+t[1]].join(`,`)})`}},{key:`apply`,value:function(t,n){var r=this,i=t.camera,a=t.renderingContext,o=t.renderingService;this.context=t;var s=a.root.ownerDocument.defaultView,c=s.context.eventService.nativeHTMLMap,l=function(e,t){t.style.transform=r.joinTransformMatrix(e.getWorldTransform(),e.getOrigin())},u=function(e){var t=e.target;if(t.nodeName===U.HTML){r.$camera||=r.createCamera(i);var n=r.getOrCreateEl(t);r.$camera.appendChild(n),Object.keys(t.attributes).forEach(function(e){r.updateAttribute(e,t)}),l(t,n),c.set(n,t)}},d=function(e){var t=e.target;if(t.nodeName===U.HTML&&r.$camera){var n=r.getOrCreateEl(t);n&&(n.remove(),c.delete(n))}},f=function(e){var t=e.target;if(t.nodeName===U.HTML){var n=e.attrName;r.updateAttribute(n,t)}},p=function(e){for(var t=e.detail,n=0;n<t.length;n++){var i=t[n].target;(i.nodeName===U.FRAGMENT?i.childNodes:[i]).forEach(function(e){e.nodeName===U.HTML&&l(e,r.getOrCreateEl(e))})}},m=function(){if(r.$camera){var e=r.context.config,t=e.width,n=e.height;r.$camera.parentElement.style.width=`${t||0}px`,r.$camera.parentElement.style.height=`${n||0}px`}};o.hooks.init.tap(e.tag,function(){s.addEventListener(Of.RESIZE,m),s.addEventListener(ad.MOUNTED,u),s.addEventListener(ad.UNMOUNTED,d),s.addEventListener(ad.ATTR_MODIFIED,f),s.addEventListener(ad.BOUNDS_CHANGED,p)}),o.hooks.endFrame.tap(e.tag,function(){r.$camera&&a.renderReasons.has(td.CAMERA_CHANGED)&&(r.$camera.style.transform=r.joinTransformMatrix(i.getOrthoMatrix()))}),o.hooks.destroy.tap(e.tag,function(){r.$camera&&r.$camera.remove(),s.removeEventListener(Of.RESIZE,m),s.removeEventListener(ad.MOUNTED,u),s.removeEventListener(ad.UNMOUNTED,d),s.removeEventListener(ad.ATTR_MODIFIED,f),s.removeEventListener(ad.BOUNDS_CHANGED,p)})}},{key:`createCamera`,value:function(e){var t=this.context.config,n=t.document,r=t.width,i=t.height,a=this.context.contextService.getDomElement(),o=a.parentNode;if(o){var s=qf,c=o.querySelector(`#${s}`);if(!c){var l=(n||document).createElement(`div`);l.style.overflow=`hidden`,l.style.pointerEvents=`none`,l.style.position=`absolute`,l.style.left=`0px`,l.style.top=`0px`,l.style.width=`${r||0}px`,l.style.height=`${i||0}px`;var u=(n||document).createElement(`div`);c=u,u.id=s,u.style.position=`absolute`,u.style.left=`${a.offsetLeft||0}px`,u.style.top=`${a.offsetTop||0}px`,u.style.transformOrigin=`left top`,u.style.transform=this.joinTransformMatrix(e.getOrthoMatrix()),u.style.pointerEvents=`none`,u.style.width=`100%`,u.style.height=`100%`,l.appendChild(u),o.appendChild(l)}return c}return null}},{key:`getOrCreateEl`,value:function(e){var t=this.context.config.document,n=this.displayObjectHTMLElementMap.get(e);return n||(n=(t||document).createElement(`div`),e.parsedStyle.$el=n,this.displayObjectHTMLElementMap.set(e,n),e.id&&(n.id=e.id),e.name&&n.setAttribute(`name`,e.name),e.className&&(n.className=e.className),n.style.position=`absolute`,n.style[`will-change`]=`transform`,n.style.transform=this.joinTransformMatrix(e.getWorldTransform(),e.getOrigin())),n}},{key:`updateAttribute`,value:function(e,t){var n=this.getOrCreateEl(t);switch(e){case`innerHTML`:var r=t.parsedStyle.innerHTML;un(r)?n.innerHTML=r:(n.innerHTML=``,n.appendChild(r));break;case`x`:n.style.left=`${t.parsedStyle.x}px`;break;case`y`:n.style.top=`${t.parsedStyle.y}px`;break;case`transformOrigin`:var i=t.parsedStyle.transformOrigin;n.style[`transform-origin`]=`${i[0].buildCSSText(null,null,``)} ${i[1].buildCSSText(null,null,``)}`;break;case`width`:var a=t.parsedStyle.width;n.style.width=hn(a)?`${a}px`:a.toString();break;case`height`:var o=t.parsedStyle.height;n.style.height=hn(o)?`${o}px`:o.toString();break;case`zIndex`:var s=t.parsedStyle.zIndex;n.style[`z-index`]=`${s}`;break;case`visibility`:var c=t.parsedStyle.visibility;n.style.visibility=c;break;case`pointerEvents`:var l=t.parsedStyle.pointerEvents,u=l===void 0?`auto`:l;n.style.pointerEvents=u;break;case`opacity`:var d=t.parsedStyle.opacity;n.style.opacity=`${d}`;break;case`fill`:var f=t.parsedStyle.fill,p=``;ec(f)?p=f.isNone?`transparent`:t.getAttribute(`fill`):Array.isArray(f)?p=t.getAttribute(`fill`):$s(f),n.style.background=p;break;case`stroke`:var m=t.parsedStyle.stroke,h=``;ec(m)?h=m.isNone?`transparent`:t.getAttribute(`stroke`):Array.isArray(m)?h=t.getAttribute(`stroke`):$s(m),n.style[`border-color`]=h,n.style[`border-style`]=`solid`;break;case`lineWidth`:var g=t.parsedStyle.lineWidth;n.style[`border-width`]=`${g||0}px`;break;case`lineDash`:n.style[`border-style`]=`dashed`;break;case`filter`:var _=t.style.filter;n.style.filter=_;break;default:!R(t.style[e])&&t.style[e]!==``&&(n.style[e]=t.style[e])}}}])}();Jf.tag=`HTMLRendering`;var Yf=Object.freeze({__proto__:null,Plugin:function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.name=`html-renderer`,e}return T(t,e),S(t,[{key:`init`,value:function(){this.addRenderingPlugin(new Jf)}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins()}}])}(Ca)}),Xf=function(){function e(){b(this,e)}return S(e,[{key:`apply`,value:function(t,n){var r=this,i=t.renderingService,a=t.renderingContext,o=t.config;this.context=t;var s=a.root.ownerDocument.defaultView,c=function(e){i.hooks.pointerMove.call(e)},l=function(e){i.hooks.pointerUp.call(e)},u=function(e){i.hooks.pointerDown.call(e)},d=function(e){i.hooks.pointerOver.call(e)},f=function(e){i.hooks.pointerOut.call(e)},p=function(e){i.hooks.pointerCancel.call(e)},m=function(e){i.hooks.pointerWheel.call(e)},h=function(e){i.hooks.click.call(e)},g=function(e){n.globalThis.document.addEventListener(`pointermove`,c,!0),e.addEventListener(`pointerdown`,u,!0),e.addEventListener(`pointerleave`,f,!0),e.addEventListener(`pointerover`,d,!0),n.globalThis.addEventListener(`pointerup`,l,!0),n.globalThis.addEventListener(`pointercancel`,p,!0)},_=function(e){e.addEventListener(`touchstart`,u,!0),e.addEventListener(`touchend`,l,!0),e.addEventListener(`touchmove`,c,!0),e.addEventListener(`touchcancel`,p,!0)},v=function(e){n.globalThis.document.addEventListener(`mousemove`,c,!0),e.addEventListener(`mousedown`,u,!0),e.addEventListener(`mouseout`,f,!0),e.addEventListener(`mouseover`,d,!0),n.globalThis.addEventListener(`mouseup`,l,!0)},y=function(e){n.globalThis.document.removeEventListener(`pointermove`,c,!0),e.removeEventListener(`pointerdown`,u,!0),e.removeEventListener(`pointerleave`,f,!0),e.removeEventListener(`pointerover`,d,!0),n.globalThis.removeEventListener(`pointerup`,l,!0),n.globalThis.removeEventListener(`pointercancel`,p,!0)},b=function(e){e.removeEventListener(`touchstart`,u,!0),e.removeEventListener(`touchend`,l,!0),e.removeEventListener(`touchmove`,c,!0),e.removeEventListener(`touchcancel`,p,!0)},x=function(e){n.globalThis.document.removeEventListener(`mousemove`,c,!0),e.removeEventListener(`mousedown`,u,!0),e.removeEventListener(`mouseout`,f,!0),e.removeEventListener(`mouseover`,d,!0),n.globalThis.removeEventListener(`mouseup`,l,!0)};i.hooks.init.tap(e.tag,function(){var e=r.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(e.style.msContentZooming=`none`,e.style.msTouchAction=`none`):s.supportsPointerEvents&&(e.style.touchAction=`none`),s.supportsPointerEvents?g(e):v(e),s.supportsTouchEvents&&_(e),o.useNativeClickEvent&&e.addEventListener(`click`,h,!0),e.addEventListener(`wheel`,m,{passive:!0,capture:!0})}),i.hooks.destroy.tap(e.tag,function(){var e=r.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(e.style.msContentZooming=``,e.style.msTouchAction=``):s.supportsPointerEvents&&(e.style.touchAction=``),s.supportsPointerEvents?y(e):x(e),s.supportsTouchEvents&&b(e),o.useNativeClickEvent&&e.removeEventListener(`click`,h,!0),e.removeEventListener(`wheel`,m,!0)})}}])}();Xf.tag=`DOMInteraction`;var Zf=Object.freeze({__proto__:null,Plugin:function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.name=`dom-interaction`,e}return T(t,e),S(t,[{key:`init`,value:function(){this.addRenderingPlugin(new Xf)}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins()}}])}(Ca)}),Qf=function(){function e(){b(this,e)}return S(e,[{key:`apply`,value:function(t){var n=t.renderingService,r=t.contextService,i=t.config,a=r.getDomElement(),o=function(e){n.hooks.pointerDown.call(e)},s=function(e){n.hooks.pointerUp.call(e)},c=function(e){n.hooks.pointerMove.call(e)},l=function(e){n.hooks.pointerOver.call(e)},u=function(e){n.hooks.pointerOut.call(e)},d=function(e){n.hooks.click.call(e)},f=function(e){n.hooks.pointerCancel.call(e)};n.hooks.init.tap(e.tag,function(){a.addEventListener(`touchstart`,o,!0),a.addEventListener(`touchend`,s,!0),a.addEventListener(`touchmove`,c,!0),a.addEventListener(`touchcancel`,f,!0),a.addEventListener(`mouseout`,u,!0),a.addEventListener(`mouseover`,l,!0),i.useNativeClickEvent&&a.addEventListener(`click`,d,!0)}),n.hooks.destroy.tap(e.tag,function(){a.removeEventListener(`touchstart`,o,!0),a.removeEventListener(`touchend`,s,!0),a.removeEventListener(`touchmove`,c,!0),a.removeEventListener(`touchcancel`,f,!0),a.removeEventListener(`mouseout`,u,!0),a.removeEventListener(`mouseover`,l,!0),i.useNativeClickEvent&&a.removeEventListener(`click`,d,!0)})}}])}();Qf.tag=`MobileInteraction`,r(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(n=typeof globalThis<`u`?globalThis:n||self,n.html2canvas=r())})(e,(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};function t(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}var n=function(){return n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},n.apply(this,arguments)};function r(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})}function i(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(o){if(r)throw TypeError(`Generator is already executing.`);for(;n;)try{if(r=1,i&&(a=o[0]&2?i.return:o[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;switch(i=0,a&&(o=[o[0]&2,a.value]),o[0]){case 0:case 1:a=o;break;case 4:return n.label++,{value:o[1],done:!1};case 5:n.label++,i=o[1],o=[0];continue;case 7:o=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(o[0]===6||o[0]===2)){n=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){n.label=o[1];break}if(o[0]===6&&n.label<a[1]){n.label=a[1],a=o;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(o);break}a[2]&&n.ops.pop(),n.trys.pop();continue}o=t.call(e,n)}catch(e){o=[6,e],i=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}}function a(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||t)}for(var o=function(){function e(e,t,n,r){this.left=e,this.top=t,this.width=n,this.height=r}return e.prototype.add=function(t,n,r,i){return new e(this.left+t,this.top+n,this.width+r,this.height+i)},e.fromClientRect=function(t,n){return new e(n.left+t.windowBounds.left,n.top+t.windowBounds.top,n.width,n.height)},e.fromDOMRectList=function(t,n){var r=Array.from(n).find(function(e){return e.width!==0});return r?new e(r.left+t.windowBounds.left,r.top+t.windowBounds.top,r.width,r.height):e.EMPTY},e.EMPTY=new e(0,0,0,0),e}(),s=function(e,t){return o.fromClientRect(e,t.getBoundingClientRect())},c=function(e){var t=e.body,n=e.documentElement;if(!t||!n)throw Error(`Unable to get document size`);return new o(0,0,Math.max(Math.max(t.scrollWidth,n.scrollWidth),Math.max(t.offsetWidth,n.offsetWidth),Math.max(t.clientWidth,n.clientWidth)),Math.max(Math.max(t.scrollHeight,n.scrollHeight),Math.max(t.offsetHeight,n.offsetHeight),Math.max(t.clientHeight,n.clientHeight)))},l=function(e){for(var t=[],n=0,r=e.length;n<r;){var i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<r){var a=e.charCodeAt(n++);(a&64512)==56320?t.push(((i&1023)<<10)+(a&1023)+65536):(t.push(i),n--)}else t.push(i)}return t},u=function(){var e=[...arguments];if(String.fromCodePoint)return String.fromCodePoint.apply(String,e);var t=e.length;if(!t)return``;for(var n=[],r=-1,i=``;++r<t;){var a=e[r];a<=65535?n.push(a):(a-=65536,n.push((a>>10)+55296,a%1024+56320)),(r+1===t||n.length>16384)&&(i+=String.fromCharCode.apply(String,n),n.length=0)}return i},d=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,f=typeof Uint8Array>`u`?[]:new Uint8Array(256),p=0;p<d.length;p++)f[d.charCodeAt(p)]=p;for(var m=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,h=typeof Uint8Array>`u`?[]:new Uint8Array(256),g=0;g<m.length;g++)h[m.charCodeAt(g)]=g;for(var _=function(e){var t=e.length*.75,n=e.length,r,i=0,a,o,s,c;e[e.length-1]===`=`&&(t--,e[e.length-2]===`=`&&t--);var l=typeof ArrayBuffer<`u`&&typeof Uint8Array<`u`&&Uint8Array.prototype.slice!==void 0?new ArrayBuffer(t):Array(t),u=Array.isArray(l)?l:new Uint8Array(l);for(r=0;r<n;r+=4)a=h[e.charCodeAt(r)],o=h[e.charCodeAt(r+1)],s=h[e.charCodeAt(r+2)],c=h[e.charCodeAt(r+3)],u[i++]=a<<2|o>>4,u[i++]=(o&15)<<4|s>>2,u[i++]=(s&3)<<6|c&63;return l},v=function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n.push(e[r+1]<<8|e[r]);return n},y=function(e){for(var t=e.length,n=[],r=0;r<t;r+=4)n.push(e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]);return n},b=5,x=11,S=2,C=x-b,w=65536>>b,T=(1<<b)-1,E=w+(1024>>b)+32,D=65536>>x,O=(1<<C)-1,k=function(e,t,n){return e.slice?e.slice(t,n):new Uint16Array(Array.prototype.slice.call(e,t,n))},A=function(e,t,n){return e.slice?e.slice(t,n):new Uint32Array(Array.prototype.slice.call(e,t,n))},j=function(e,t){var n=_(e),r=Array.isArray(n)?y(n):new Uint32Array(n),i=Array.isArray(n)?v(n):new Uint16Array(n),a=24,o=k(i,a/2,r[4]/2),s=r[5]===2?k(i,(a+r[4])/2):A(r,Math.ceil((a+r[4])/4));return new ee(r[0],r[1],r[2],r[3],o,s)},ee=function(){function e(e,t,n,r,i,a){this.initialValue=e,this.errorValue=t,this.highStart=n,this.highValueIndex=r,this.index=i,this.data=a}return e.prototype.get=function(e){var t;if(e>=0){if(e<55296||e>56319&&e<=65535)return t=this.index[e>>b],t=(t<<S)+(e&T),this.data[t];if(e<=65535)return t=this.index[w+(e-55296>>b)],t=(t<<S)+(e&T),this.data[t];if(e<this.highStart)return t=E-D+(e>>x),t=this.index[t],t+=e>>b&O,t=this.index[t],t=(t<<S)+(e&T),this.data[t];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},e}(),te=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,M=typeof Uint8Array>`u`?[]:new Uint8Array(256),ne=0;ne<te.length;ne++)M[te.charCodeAt(ne)]=ne;var re=`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==`,ie=50,N=1,P=2,ae=3,F=4,oe=5,se=7,ce=8,le=9,ue=10,de=11,fe=12,pe=13,me=14,I=15,he=16,ge=17,_e=18,ve=19,ye=20,be=21,xe=22,Se=23,Ce=24,we=25,Te=26,Ee=27,De=28,Oe=29,ke=30,Ae=31,je=32,Me=33,Ne=34,Pe=35,Fe=36,Ie=37,Le=38,Re=39,ze=40,Be=41,Ve=42,He=43,Ue=[9001,65288],We=`!`,Ge=`×`,Ke=`÷`,qe=j(re),Je=[ke,Fe],Ye=[N,P,ae,oe],Xe=[ue,ce],Ze=[Ee,Te],Qe=Ye.concat(Xe),$e=[Le,Re,ze,Ne,Pe],et=[I,pe],tt=function(e,t){t===void 0&&(t=`strict`);var n=[],r=[],i=[];return e.forEach(function(e,a){var o=qe.get(e);if(o>ie?(i.push(!0),o-=ie):i.push(!1),[`normal`,`auto`,`loose`].indexOf(t)!==-1&&[8208,8211,12316,12448].indexOf(e)!==-1)return r.push(a),n.push(he);if(o===F||o===de){if(a===0)return r.push(a),n.push(ke);var s=n[a-1];return Qe.indexOf(s)===-1?(r.push(r[a-1]),n.push(s)):(r.push(a),n.push(ke))}if(r.push(a),o===Ae)return n.push(t===`strict`?be:Ie);if(o===Ve||o===Oe)return n.push(ke);if(o===He)return e>=131072&&e<=196605||e>=196608&&e<=262141?n.push(Ie):n.push(ke);n.push(o)}),[r,n,i]},nt=function(e,t,n,r){var i=r[n];if(Array.isArray(e)?e.indexOf(i)!==-1:e===i)for(var a=n;a<=r.length;){a++;var o=r[a];if(o===t)return!0;if(o!==ue)break}if(i===ue)for(var a=n;a>0;){a--;var s=r[a];if(Array.isArray(e)?e.indexOf(s)!==-1:e===s)for(var c=n;c<=r.length;){c++;var o=r[c];if(o===t)return!0;if(o!==ue)break}if(s!==ue)break}return!1},rt=function(e,t){for(var n=e;n>=0;){var r=t[n];if(r===ue)n--;else return r}return 0},it=function(e,t,n,r,i){if(n[r]===0)return Ge;var a=r-1;if(Array.isArray(i)&&i[a]===!0)return Ge;var o=a-1,s=a+1,c=t[a],l=o>=0?t[o]:0,u=t[s];if(c===P&&u===ae)return Ge;if(Ye.indexOf(c)!==-1)return We;if(Ye.indexOf(u)!==-1||Xe.indexOf(u)!==-1)return Ge;if(rt(a,t)===ce)return Ke;if(qe.get(e[a])===de||(c===je||c===Me)&&qe.get(e[s])===de||c===se||u===se||c===le||[ue,pe,I].indexOf(c)===-1&&u===le||[ge,_e,ve,Ce,De].indexOf(u)!==-1||rt(a,t)===xe||nt(Se,xe,a,t)||nt([ge,_e],be,a,t)||nt(fe,fe,a,t))return Ge;if(c===ue)return Ke;if(c===Se||u===Se)return Ge;if(u===he||c===he)return Ke;if([pe,I,be].indexOf(u)!==-1||c===me||l===Fe&&et.indexOf(c)!==-1||c===De&&u===Fe||u===ye||Je.indexOf(u)!==-1&&c===we||Je.indexOf(c)!==-1&&u===we||c===Ee&&[Ie,je,Me].indexOf(u)!==-1||[Ie,je,Me].indexOf(c)!==-1&&u===Te||Je.indexOf(c)!==-1&&Ze.indexOf(u)!==-1||Ze.indexOf(c)!==-1&&Je.indexOf(u)!==-1||[Ee,Te].indexOf(c)!==-1&&(u===we||[xe,I].indexOf(u)!==-1&&t[s+1]===we)||[xe,I].indexOf(c)!==-1&&u===we||c===we&&[we,De,Ce].indexOf(u)!==-1)return Ge;if([we,De,Ce,ge,_e].indexOf(u)!==-1)for(var d=a;d>=0;){var f=t[d];if(f===we)return Ge;if([De,Ce].indexOf(f)!==-1)d--;else break}if([Ee,Te].indexOf(u)!==-1)for(var d=[ge,_e].indexOf(c)===-1?a:o;d>=0;){var f=t[d];if(f===we)return Ge;if([De,Ce].indexOf(f)!==-1)d--;else break}if(Le===c&&[Le,Re,Ne,Pe].indexOf(u)!==-1||[Re,Ne].indexOf(c)!==-1&&[Re,ze].indexOf(u)!==-1||[ze,Pe].indexOf(c)!==-1&&u===ze||$e.indexOf(c)!==-1&&[ye,Te].indexOf(u)!==-1||$e.indexOf(u)!==-1&&c===Ee||Je.indexOf(c)!==-1&&Je.indexOf(u)!==-1||c===Ce&&Je.indexOf(u)!==-1||Je.concat(we).indexOf(c)!==-1&&u===xe&&Ue.indexOf(e[s])===-1||Je.concat(we).indexOf(u)!==-1&&c===_e)return Ge;if(c===Be&&u===Be){for(var p=n[a],m=1;p>0&&(p--,t[p]===Be);)m++;if(m%2!=0)return Ge}return c===je&&u===Me?Ge:Ke},at=function(e,t){t||={lineBreak:`normal`,wordBreak:`normal`};var n=tt(e,t.lineBreak),r=n[0],i=n[1],a=n[2];(t.wordBreak===`break-all`||t.wordBreak===`break-word`)&&(i=i.map(function(e){return[we,ke,Ve].indexOf(e)===-1?e:Ie}));var o=t.wordBreak===`keep-all`?a.map(function(t,n){return t&&e[n]>=19968&&e[n]<=40959}):void 0;return[r,i,o]},ot=function(){function e(e,t,n,r){this.codePoints=e,this.required=t===We,this.start=n,this.end=r}return e.prototype.slice=function(){return u.apply(void 0,this.codePoints.slice(this.start,this.end))},e}(),st=function(e,t){var n=l(e),r=at(n,t),i=r[0],a=r[1],o=r[2],s=n.length,c=0,u=0;return{next:function(){if(u>=s)return{done:!0,value:null};for(var e=Ge;u<s&&(e=it(n,a,i,++u,o))===Ge;);if(e!==Ge||u===s){var t=new ot(n,e,c,u);return c=u,{value:t,done:!1}}return{done:!0,value:null}}}},ct=1,lt=2,ut=4,dt=8,ft=10,pt=47,mt=92,ht=9,gt=32,_t=34,vt=61,yt=35,bt=36,xt=37,St=39,Ct=40,wt=41,Tt=95,Et=45,Dt=33,Ot=60,kt=62,At=64,jt=91,Mt=93,Nt=61,Pt=123,Ft=63,It=125,Lt=124,Rt=126,zt=128,Bt=65533,Vt=42,Ht=43,Ut=44,Wt=58,Gt=59,Kt=46,qt=0,Jt=8,Yt=11,Xt=14,Zt=31,L=127,R=-1,Qt=48,$t=97,en=101,tn=102,nn=117,rn=122,an=65,on=69,sn=70,cn=85,ln=90,un=function(e){return e>=Qt&&e<=57},dn=function(e){return e>=55296&&e<=57343},fn=function(e){return un(e)||e>=an&&e<=sn||e>=$t&&e<=tn},pn=function(e){return e>=$t&&e<=rn},mn=function(e){return e>=an&&e<=ln},hn=function(e){return pn(e)||mn(e)},gn=function(e){return e>=zt},_n=function(e){return e===ft||e===ht||e===gt},vn=function(e){return hn(e)||gn(e)||e===Tt},yn=function(e){return vn(e)||un(e)||e===Et},bn=function(e){return e>=qt&&e<=Jt||e===Yt||e>=Xt&&e<=Zt||e===L},xn=function(e,t){return e===mt?t!==ft:!1},Sn=function(e,t,n){return e===Et?vn(t)||xn(t,n):vn(e)?!0:!!(e===mt&&xn(e,t))},Cn=function(e,t,n){return e===Ht||e===Et?un(t)?!0:t===Kt&&un(n):un(e===Kt?t:e)},wn=function(e){var t=0,n=1;(e[t]===Ht||e[t]===Et)&&(e[t]===Et&&(n=-1),t++);for(var r=[];un(e[t]);)r.push(e[t++]);var i=r.length?parseInt(u.apply(void 0,r),10):0;e[t]===Kt&&t++;for(var a=[];un(e[t]);)a.push(e[t++]);var o=a.length,s=o?parseInt(u.apply(void 0,a),10):0;(e[t]===on||e[t]===en)&&t++;var c=1;(e[t]===Ht||e[t]===Et)&&(e[t]===Et&&(c=-1),t++);for(var l=[];un(e[t]);)l.push(e[t++]);var d=l.length?parseInt(u.apply(void 0,l),10):0;return n*(i+s*10**-o)*10**(c*d)},Tn={type:2},En={type:3},Dn={type:4},On={type:13},kn={type:8},An={type:21},jn={type:9},Mn={type:10},Nn={type:11},Pn={type:12},Fn={type:14},In={type:23},Ln={type:1},Rn={type:25},zn={type:24},Bn={type:26},Vn={type:27},Hn={type:28},Un={type:29},Wn={type:31},Gn={type:32},Kn=function(){function e(){this._value=[]}return e.prototype.write=function(e){this._value=this._value.concat(l(e))},e.prototype.read=function(){for(var e=[],t=this.consumeToken();t!==Gn;)e.push(t),t=this.consumeToken();return e},e.prototype.consumeToken=function(){var e=this.consumeCodePoint();switch(e){case _t:return this.consumeStringToken(_t);case yt:var t=this.peekCodePoint(0),n=this.peekCodePoint(1),r=this.peekCodePoint(2);if(yn(t)||xn(n,r)){var i=Sn(t,n,r)?lt:ct,a=this.consumeName();return{type:5,value:a,flags:i}}break;case bt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),On;break;case St:return this.consumeStringToken(St);case Ct:return Tn;case wt:return En;case Vt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),Fn;break;case Ht:if(Cn(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case Ut:return Dn;case Et:var o=e,s=this.peekCodePoint(0),c=this.peekCodePoint(1);if(Cn(o,s,c))return this.reconsumeCodePoint(e),this.consumeNumericToken();if(Sn(o,s,c))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();if(s===Et&&c===kt)return this.consumeCodePoint(),this.consumeCodePoint(),zn;break;case Kt:if(Cn(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case pt:if(this.peekCodePoint(0)===Vt)for(this.consumeCodePoint();;){var l=this.consumeCodePoint();if(l===Vt&&(l=this.consumeCodePoint(),l===pt)||l===R)return this.consumeToken()}break;case Wt:return Bn;case Gt:return Vn;case Ot:if(this.peekCodePoint(0)===Dt&&this.peekCodePoint(1)===Et&&this.peekCodePoint(2)===Et)return this.consumeCodePoint(),this.consumeCodePoint(),Rn;break;case At:if(Sn(this.peekCodePoint(0),this.peekCodePoint(1),this.peekCodePoint(2))){var a=this.consumeName();return{type:7,value:a}}break;case jt:return Hn;case mt:if(xn(e,this.peekCodePoint(0)))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();break;case Mt:return Un;case Nt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),kn;break;case Pt:return Nn;case It:return Pn;case nn:case cn:var d=this.peekCodePoint(0),f=this.peekCodePoint(1);return d===Ht&&(fn(f)||f===Ft)&&(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(e),this.consumeIdentLikeToken();case Lt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),jn;if(this.peekCodePoint(0)===Lt)return this.consumeCodePoint(),An;break;case Rt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),Mn;break;case R:return Gn}return _n(e)?(this.consumeWhiteSpace(),Wn):un(e)?(this.reconsumeCodePoint(e),this.consumeNumericToken()):vn(e)?(this.reconsumeCodePoint(e),this.consumeIdentLikeToken()):{type:6,value:u(e)}},e.prototype.consumeCodePoint=function(){var e=this._value.shift();return e===void 0?-1:e},e.prototype.reconsumeCodePoint=function(e){this._value.unshift(e)},e.prototype.peekCodePoint=function(e){return e>=this._value.length?-1:this._value[e]},e.prototype.consumeUnicodeRangeToken=function(){for(var e=[],t=this.consumeCodePoint();fn(t)&&e.length<6;)e.push(t),t=this.consumeCodePoint();for(var n=!1;t===Ft&&e.length<6;)e.push(t),t=this.consumeCodePoint(),n=!0;if(n){var r=parseInt(u.apply(void 0,e.map(function(e){return e===Ft?Qt:e})),16),i=parseInt(u.apply(void 0,e.map(function(e){return e===Ft?sn:e})),16);return{type:30,start:r,end:i}}var a=parseInt(u.apply(void 0,e),16);if(this.peekCodePoint(0)===Et&&fn(this.peekCodePoint(1))){this.consumeCodePoint(),t=this.consumeCodePoint();for(var o=[];fn(t)&&o.length<6;)o.push(t),t=this.consumeCodePoint();var i=parseInt(u.apply(void 0,o),16);return{type:30,start:a,end:i}}else return{type:30,start:a,end:a}},e.prototype.consumeIdentLikeToken=function(){var e=this.consumeName();return e.toLowerCase()===`url`&&this.peekCodePoint(0)===Ct?(this.consumeCodePoint(),this.consumeUrlToken()):this.peekCodePoint(0)===Ct?(this.consumeCodePoint(),{type:19,value:e}):{type:20,value:e}},e.prototype.consumeUrlToken=function(){var e=[];if(this.consumeWhiteSpace(),this.peekCodePoint(0)===R)return{type:22,value:``};var t=this.peekCodePoint(0);if(t===St||t===_t){var n=this.consumeStringToken(this.consumeCodePoint());return n.type===0&&(this.consumeWhiteSpace(),this.peekCodePoint(0)===R||this.peekCodePoint(0)===wt)?(this.consumeCodePoint(),{type:22,value:n.value}):(this.consumeBadUrlRemnants(),In)}for(;;){var r=this.consumeCodePoint();if(r===R||r===wt)return{type:22,value:u.apply(void 0,e)};if(_n(r))return this.consumeWhiteSpace(),this.peekCodePoint(0)===R||this.peekCodePoint(0)===wt?(this.consumeCodePoint(),{type:22,value:u.apply(void 0,e)}):(this.consumeBadUrlRemnants(),In);if(r===_t||r===St||r===Ct||bn(r))return this.consumeBadUrlRemnants(),In;if(r===mt)if(xn(r,this.peekCodePoint(0)))e.push(this.consumeEscapedCodePoint());else return this.consumeBadUrlRemnants(),In;else e.push(r)}},e.prototype.consumeWhiteSpace=function(){for(;_n(this.peekCodePoint(0));)this.consumeCodePoint()},e.prototype.consumeBadUrlRemnants=function(){for(;;){var e=this.consumeCodePoint();if(e===wt||e===R)return;xn(e,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},e.prototype.consumeStringSlice=function(e){for(var t=5e4,n=``;e>0;){var r=Math.min(t,e);n+=u.apply(void 0,this._value.splice(0,r)),e-=r}return this._value.shift(),n},e.prototype.consumeStringToken=function(e){var t=``,n=0;do{var r=this._value[n];if(r===R||r===void 0||r===e)return t+=this.consumeStringSlice(n),{type:0,value:t};if(r===ft)return this._value.splice(0,n),Ln;if(r===mt){var i=this._value[n+1];i!==R&&i!==void 0&&(i===ft?(t+=this.consumeStringSlice(n),n=-1,this._value.shift()):xn(r,i)&&(t+=this.consumeStringSlice(n),t+=u(this.consumeEscapedCodePoint()),n=-1))}n++}while(!0)},e.prototype.consumeNumber=function(){var e=[],t=ut,n=this.peekCodePoint(0);for((n===Ht||n===Et)&&e.push(this.consumeCodePoint());un(this.peekCodePoint(0));)e.push(this.consumeCodePoint());n=this.peekCodePoint(0);var r=this.peekCodePoint(1);if(n===Kt&&un(r))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=dt;un(this.peekCodePoint(0));)e.push(this.consumeCodePoint());n=this.peekCodePoint(0),r=this.peekCodePoint(1);var i=this.peekCodePoint(2);if((n===on||n===en)&&((r===Ht||r===Et)&&un(i)||un(r)))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=dt;un(this.peekCodePoint(0));)e.push(this.consumeCodePoint());return[wn(e),t]},e.prototype.consumeNumericToken=function(){var e=this.consumeNumber(),t=e[0],n=e[1],r=this.peekCodePoint(0);return Sn(r,this.peekCodePoint(1),this.peekCodePoint(2))?{type:15,number:t,flags:n,unit:this.consumeName()}:r===xt?(this.consumeCodePoint(),{type:16,number:t,flags:n}):{type:17,number:t,flags:n}},e.prototype.consumeEscapedCodePoint=function(){var e=this.consumeCodePoint();if(fn(e)){for(var t=u(e);fn(this.peekCodePoint(0))&&t.length<6;)t+=u(this.consumeCodePoint());_n(this.peekCodePoint(0))&&this.consumeCodePoint();var n=parseInt(t,16);return n===0||dn(n)||n>1114111?Bt:n}return e===R?Bt:e},e.prototype.consumeName=function(){for(var e=``;;){var t=this.consumeCodePoint();if(yn(t))e+=u(t);else if(xn(t,this.peekCodePoint(0)))e+=u(this.consumeEscapedCodePoint());else return this.reconsumeCodePoint(t),e}},e}(),qn=function(){function e(e){this._tokens=e}return e.create=function(t){var n=new Kn;return n.write(t),new e(n.read())},e.parseValue=function(t){return e.create(t).parseComponentValue()},e.parseValues=function(t){return e.create(t).parseComponentValues()},e.prototype.parseComponentValue=function(){for(var e=this.consumeToken();e.type===31;)e=this.consumeToken();if(e.type===32)throw SyntaxError(`Error parsing CSS component value, unexpected EOF`);this.reconsumeToken(e);var t=this.consumeComponentValue();do e=this.consumeToken();while(e.type===31);if(e.type===32)return t;throw SyntaxError(`Error parsing CSS component value, multiple values found when expecting only one`)},e.prototype.parseComponentValues=function(){for(var e=[];;){var t=this.consumeComponentValue();if(t.type===32)return e;e.push(t),e.push()}},e.prototype.consumeComponentValue=function(){var e=this.consumeToken();switch(e.type){case 11:case 28:case 2:return this.consumeSimpleBlock(e.type);case 19:return this.consumeFunction(e)}return e},e.prototype.consumeSimpleBlock=function(e){for(var t={type:e,values:[]},n=this.consumeToken();;){if(n.type===32||nr(n,e))return t;this.reconsumeToken(n),t.values.push(this.consumeComponentValue()),n=this.consumeToken()}},e.prototype.consumeFunction=function(e){for(var t={name:e.value,values:[],type:18};;){var n=this.consumeToken();if(n.type===32||n.type===3)return t;this.reconsumeToken(n),t.values.push(this.consumeComponentValue())}},e.prototype.consumeToken=function(){var e=this._tokens.shift();return e===void 0?Gn:e},e.prototype.reconsumeToken=function(e){this._tokens.unshift(e)},e}(),Jn=function(e){return e.type===15},Yn=function(e){return e.type===17},Xn=function(e){return e.type===20},Zn=function(e){return e.type===0},Qn=function(e,t){return Xn(e)&&e.value===t},$n=function(e){return e.type!==31},er=function(e){return e.type!==31&&e.type!==4},tr=function(e){var t=[],n=[];return e.forEach(function(e){if(e.type===4){if(n.length===0)throw Error(`Error parsing function args, zero tokens for arg`);t.push(n),n=[];return}e.type!==31&&n.push(e)}),n.length&&t.push(n),t},nr=function(e,t){return t===11&&e.type===12||t===28&&e.type===29?!0:t===2&&e.type===3},rr=function(e){return e.type===17||e.type===15},ir=function(e){return e.type===16||rr(e)},ar=function(e){return e.length>1?[e[0],e[1]]:[e[0]]},or={type:17,number:0,flags:ut},sr={type:16,number:50,flags:ut},cr={type:16,number:100,flags:ut},lr=function(e,t,n){var r=e[0],i=e[1];return[ur(r,t),ur(i===void 0?r:i,n)]},ur=function(e,t){if(e.type===16)return e.number/100*t;if(Jn(e))switch(e.unit){case`rem`:case`em`:return 16*e.number;default:return e.number}return e.number},dr=`deg`,fr=`grad`,pr=`rad`,mr=`turn`,hr={name:`angle`,parse:function(e,t){if(t.type===15)switch(t.unit){case dr:return Math.PI*t.number/180;case fr:return Math.PI/200*t.number;case pr:return t.number;case mr:return Math.PI*2*t.number}throw Error(`Unsupported angle type`)}},gr=function(e){return e.type===15&&(e.unit===dr||e.unit===fr||e.unit===pr||e.unit===mr)},_r=function(e){switch(e.filter(Xn).map(function(e){return e.value}).join(` `)){case`to bottom right`:case`to right bottom`:case`left top`:case`top left`:return[or,or];case`to top`:case`bottom`:return z(0);case`to bottom left`:case`to left bottom`:case`right top`:case`top right`:return[or,cr];case`to right`:case`left`:return z(90);case`to top left`:case`to left top`:case`right bottom`:case`bottom right`:return[cr,cr];case`to bottom`:case`top`:return z(180);case`to top right`:case`to right top`:case`left bottom`:case`bottom left`:return[cr,or];case`to left`:case`right`:return z(270)}return 0},z=function(e){return Math.PI*e/180},vr={name:`color`,parse:function(e,t){if(t.type===18){var n=Tr[t.name];if(n===void 0)throw Error(`Attempting to parse an unsupported color function "`+t.name+`"`);return n(e,t.values)}if(t.type===5){if(t.value.length===3){var r=t.value.substring(0,1),i=t.value.substring(1,2),a=t.value.substring(2,3);return br(parseInt(r+r,16),parseInt(i+i,16),parseInt(a+a,16),1)}if(t.value.length===4){var r=t.value.substring(0,1),i=t.value.substring(1,2),a=t.value.substring(2,3),o=t.value.substring(3,4);return br(parseInt(r+r,16),parseInt(i+i,16),parseInt(a+a,16),parseInt(o+o,16)/255)}if(t.value.length===6){var r=t.value.substring(0,2),i=t.value.substring(2,4),a=t.value.substring(4,6);return br(parseInt(r,16),parseInt(i,16),parseInt(a,16),1)}if(t.value.length===8){var r=t.value.substring(0,2),i=t.value.substring(2,4),a=t.value.substring(4,6),o=t.value.substring(6,8);return br(parseInt(r,16),parseInt(i,16),parseInt(a,16),parseInt(o,16)/255)}}if(t.type===20){var s=Dr[t.value.toUpperCase()];if(s!==void 0)return s}return Dr.TRANSPARENT}},yr=function(e){return(255&e)==0},B=function(e){var t=255&e,n=255&e>>8,r=255&e>>16,i=255&e>>24;return t<255?`rgba(`+i+`,`+r+`,`+n+`,`+t/255+`)`:`rgb(`+i+`,`+r+`,`+n+`)`},br=function(e,t,n,r){return(e<<24|t<<16|n<<8|Math.round(r*255)<<0)>>>0},xr=function(e,t){if(e.type===17)return e.number;if(e.type===16){var n=t===3?1:255;return t===3?e.number/100*n:Math.round(e.number/100*n)}return 0},Sr=function(e,t){var n=t.filter(er);if(n.length===3){var r=n.map(xr),i=r[0],a=r[1],o=r[2];return br(i,a,o,1)}if(n.length===4){var s=n.map(xr),i=s[0],a=s[1],o=s[2],c=s[3];return br(i,a,o,c)}return 0};function Cr(e,t,n){return n<0&&(n+=1),n>=1&&--n,n<1/6?(t-e)*n*6+e:n<1/2?t:n<2/3?(t-e)*6*(2/3-n)+e:e}var wr=function(e,t){var n=t.filter(er),r=n[0],i=n[1],a=n[2],o=n[3],s=(r.type===17?z(r.number):hr.parse(e,r))/(Math.PI*2),c=ir(i)?i.number/100:0,l=ir(a)?a.number/100:0,u=o!==void 0&&ir(o)?ur(o,1):1;if(c===0)return br(l*255,l*255,l*255,1);var d=l<=.5?l*(c+1):l+c-l*c,f=l*2-d,p=Cr(f,d,s+1/3),m=Cr(f,d,s),h=Cr(f,d,s-1/3);return br(p*255,m*255,h*255,u)},Tr={hsl:wr,hsla:wr,rgb:Sr,rgba:Sr},Er=function(e,t){return vr.parse(e,qn.create(t).parseComponentValue())},Dr={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},Or={name:`background-clip`,initialValue:`border-box`,prefix:!1,type:1,parse:function(e,t){return t.map(function(e){if(Xn(e))switch(e.value){case`padding-box`:return 1;case`content-box`:return 2}return 0})}},kr={name:`background-color`,initialValue:`transparent`,prefix:!1,type:3,format:`color`},Ar=function(e,t){var n=vr.parse(e,t[0]),r=t[1];return r&&ir(r)?{color:n,stop:r}:{color:n,stop:null}},jr=function(e,t){var n=e[0],r=e[e.length-1];n.stop===null&&(n.stop=or),r.stop===null&&(r.stop=cr);for(var i=[],a=0,o=0;o<e.length;o++){var s=e[o].stop;if(s!==null){var c=ur(s,t);c>a?i.push(c):i.push(a),a=c}else i.push(null)}for(var l=null,o=0;o<i.length;o++){var u=i[o];if(u===null)l===null&&(l=o);else if(l!==null){for(var d=o-l,f=(u-i[l-1])/(d+1),p=1;p<=d;p++)i[l+p-1]=f*p;l=null}}return e.map(function(e,n){return{color:e.color,stop:Math.max(Math.min(1,i[n]/t),0)}})},Mr=function(e,t,n){var r=t/2,i=n/2,a=ur(e[0],t)-r,o=i-ur(e[1],n);return(Math.atan2(o,a)+Math.PI*2)%(Math.PI*2)},Nr=function(e,t,n){var r=typeof e==`number`?e:Mr(e,t,n),i=Math.abs(t*Math.sin(r))+Math.abs(n*Math.cos(r)),a=t/2,o=n/2,s=i/2,c=Math.sin(r-Math.PI/2)*s,l=Math.cos(r-Math.PI/2)*s;return[i,a-l,a+l,o-c,o+c]},V=function(e,t){return Math.sqrt(e*e+t*t)},Pr=function(e,t,n,r,i){return[[0,0],[0,t],[e,0],[e,t]].reduce(function(e,t){var a=t[0],o=t[1],s=V(n-a,r-o);return(i?s<e.optimumDistance:s>e.optimumDistance)?{optimumCorner:t,optimumDistance:s}:e},{optimumDistance:i?1/0:-1/0,optimumCorner:null}).optimumCorner},Fr=function(e,t,n,r,i){var a=0,o=0;switch(e.size){case 0:e.shape===0?a=o=Math.min(Math.abs(t),Math.abs(t-r),Math.abs(n),Math.abs(n-i)):e.shape===1&&(a=Math.min(Math.abs(t),Math.abs(t-r)),o=Math.min(Math.abs(n),Math.abs(n-i)));break;case 2:if(e.shape===0)a=o=Math.min(V(t,n),V(t,n-i),V(t-r,n),V(t-r,n-i));else if(e.shape===1){var s=Math.min(Math.abs(n),Math.abs(n-i))/Math.min(Math.abs(t),Math.abs(t-r)),c=Pr(r,i,t,n,!0),l=c[0],u=c[1];a=V(l-t,(u-n)/s),o=s*a}break;case 1:e.shape===0?a=o=Math.max(Math.abs(t),Math.abs(t-r),Math.abs(n),Math.abs(n-i)):e.shape===1&&(a=Math.max(Math.abs(t),Math.abs(t-r)),o=Math.max(Math.abs(n),Math.abs(n-i)));break;case 3:if(e.shape===0)a=o=Math.max(V(t,n),V(t,n-i),V(t-r,n),V(t-r,n-i));else if(e.shape===1){var s=Math.max(Math.abs(n),Math.abs(n-i))/Math.max(Math.abs(t),Math.abs(t-r)),d=Pr(r,i,t,n,!1),l=d[0],u=d[1];a=V(l-t,(u-n)/s),o=s*a}break}return Array.isArray(e.size)&&(a=ur(e.size[0],r),o=e.size.length===2?ur(e.size[1],i):a),[a,o]},Ir=function(e,t){var n=z(180),r=[];return tr(t).forEach(function(t,i){if(i===0){var a=t[0];if(a.type===20&&a.value===`to`){n=_r(t);return}else if(gr(a)){n=hr.parse(e,a);return}}var o=Ar(e,t);r.push(o)}),{angle:n,stops:r,type:1}},Lr=function(e,t){var n=z(180),r=[];return tr(t).forEach(function(t,i){if(i===0){var a=t[0];if(a.type===20&&[`top`,`left`,`right`,`bottom`].indexOf(a.value)!==-1){n=_r(t);return}else if(gr(a)){n=(hr.parse(e,a)+z(270))%z(360);return}}var o=Ar(e,t);r.push(o)}),{angle:n,stops:r,type:1}},Rr=function(e,t){var n=z(180),r=[],i=1;return tr(t).forEach(function(t,n){var a=t[0];if(n===0){if(Xn(a)&&a.value===`linear`){i=1;return}else if(Xn(a)&&a.value===`radial`){i=2;return}}if(a.type===18){if(a.name===`from`){var o=vr.parse(e,a.values[0]);r.push({stop:or,color:o})}else if(a.name===`to`){var o=vr.parse(e,a.values[0]);r.push({stop:cr,color:o})}else if(a.name===`color-stop`){var s=a.values.filter(er);if(s.length===2){var o=vr.parse(e,s[1]),c=s[0];Yn(c)&&r.push({stop:{type:16,number:c.number*100,flags:c.flags},color:o})}}}}),i===1?{angle:(n+z(180))%z(360),stops:r,type:i}:{size:3,shape:0,stops:r,position:[],type:i}},H=`closest-side`,zr=`farthest-side`,Br=`closest-corner`,Vr=`farthest-corner`,Hr=`circle`,Ur=`ellipse`,Wr=`cover`,Gr=`contain`,Kr=function(e,t){var n=0,r=3,i=[],a=[];return tr(t).forEach(function(t,o){var s=!0;if(o===0){var c=!1;s=t.reduce(function(e,t){if(c)if(Xn(t))switch(t.value){case`center`:return a.push(sr),e;case`top`:case`left`:return a.push(or),e;case`right`:case`bottom`:return a.push(cr),e}else (ir(t)||rr(t))&&a.push(t);else if(Xn(t))switch(t.value){case Hr:return n=0,!1;case Ur:return n=1,!1;case`at`:return c=!0,!1;case H:return r=0,!1;case Wr:case zr:return r=1,!1;case Gr:case Br:return r=2,!1;case Vr:return r=3,!1}else if(rr(t)||ir(t))return Array.isArray(r)||(r=[]),r.push(t),!1;return e},s)}if(s){var l=Ar(e,t);i.push(l)}}),{size:r,shape:n,stops:i,position:a,type:2}},qr=function(e,t){var n=0,r=3,i=[],a=[];return tr(t).forEach(function(t,o){var s=!0;if(o===0?s=t.reduce(function(e,t){if(Xn(t))switch(t.value){case`center`:return a.push(sr),!1;case`top`:case`left`:return a.push(or),!1;case`right`:case`bottom`:return a.push(cr),!1}else if(ir(t)||rr(t))return a.push(t),!1;return e},s):o===1&&(s=t.reduce(function(e,t){if(Xn(t))switch(t.value){case Hr:return n=0,!1;case Ur:return n=1,!1;case Gr:case H:return r=0,!1;case zr:return r=1,!1;case Br:return r=2,!1;case Wr:case Vr:return r=3,!1}else if(rr(t)||ir(t))return Array.isArray(r)||(r=[]),r.push(t),!1;return e},s)),s){var c=Ar(e,t);i.push(c)}}),{size:r,shape:n,stops:i,position:a,type:2}},Jr=function(e){return e.type===1},Yr=function(e){return e.type===2},Xr={name:`image`,parse:function(e,t){if(t.type===22){var n={url:t.value,type:0};return e.cache.addImage(t.value),n}if(t.type===18){var r=Qr[t.name];if(r===void 0)throw Error(`Attempting to parse an unsupported image function "`+t.name+`"`);return r(e,t.values)}throw Error(`Unsupported image type `+t.type)}};function Zr(e){return!(e.type===20&&e.value===`none`)&&(e.type!==18||!!Qr[e.name])}var Qr={"linear-gradient":Ir,"-moz-linear-gradient":Lr,"-ms-linear-gradient":Lr,"-o-linear-gradient":Lr,"-webkit-linear-gradient":Lr,"radial-gradient":Kr,"-moz-radial-gradient":qr,"-ms-radial-gradient":qr,"-o-radial-gradient":qr,"-webkit-radial-gradient":qr,"-webkit-gradient":Rr},$r={name:`background-image`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){if(t.length===0)return[];var n=t[0];return n.type===20&&n.value===`none`?[]:t.filter(function(e){return er(e)&&Zr(e)}).map(function(t){return Xr.parse(e,t)})}},ei={name:`background-origin`,initialValue:`border-box`,prefix:!1,type:1,parse:function(e,t){return t.map(function(e){if(Xn(e))switch(e.value){case`padding-box`:return 1;case`content-box`:return 2}return 0})}},ti={name:`background-position`,initialValue:`0% 0%`,type:1,prefix:!1,parse:function(e,t){return tr(t).map(function(e){return e.filter(ir)}).map(ar)}},ni={name:`background-repeat`,initialValue:`repeat`,prefix:!1,type:1,parse:function(e,t){return tr(t).map(function(e){return e.filter(Xn).map(function(e){return e.value}).join(` `)}).map(ri)}},ri=function(e){switch(e){case`no-repeat`:return 1;case`repeat-x`:case`repeat no-repeat`:return 2;case`repeat-y`:case`no-repeat repeat`:return 3;default:return 0}},ii;(function(e){e.AUTO=`auto`,e.CONTAIN=`contain`,e.COVER=`cover`})(ii||={});var ai={name:`background-size`,initialValue:`0`,prefix:!1,type:1,parse:function(e,t){return tr(t).map(function(e){return e.filter(oi)})}},oi=function(e){return Xn(e)||ir(e)},si=function(e){return{name:`border-`+e+`-color`,initialValue:`transparent`,prefix:!1,type:3,format:`color`}},ci=si(`top`),li=si(`right`),ui=si(`bottom`),di=si(`left`),fi=function(e){return{name:`border-radius-`+e,initialValue:`0 0`,prefix:!1,type:1,parse:function(e,t){return ar(t.filter(ir))}}},pi=fi(`top-left`),mi=fi(`top-right`),hi=fi(`bottom-right`),gi=fi(`bottom-left`),_i=function(e){return{name:`border-`+e+`-style`,initialValue:`solid`,prefix:!1,type:2,parse:function(e,t){switch(t){case`none`:return 0;case`dashed`:return 2;case`dotted`:return 3;case`double`:return 4}return 1}}},vi=_i(`top`),yi=_i(`right`),bi=_i(`bottom`),xi=_i(`left`),Si=function(e){return{name:`border-`+e+`-width`,initialValue:`0`,type:0,prefix:!1,parse:function(e,t){return Jn(t)?t.number:0}}},Ci=Si(`top`),wi=Si(`right`),Ti=Si(`bottom`),Ei=Si(`left`),Di={name:`color`,initialValue:`transparent`,prefix:!1,type:3,format:`color`},Oi={name:`direction`,initialValue:`ltr`,prefix:!1,type:2,parse:function(e,t){switch(t){case`rtl`:return 1;default:return 0}}},ki={name:`display`,initialValue:`inline-block`,prefix:!1,type:1,parse:function(e,t){return t.filter(Xn).reduce(function(e,t){return e|Ai(t.value)},0)}},Ai=function(e){switch(e){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},ji={name:`float`,initialValue:`none`,prefix:!1,type:2,parse:function(e,t){switch(t){case`left`:return 1;case`right`:return 2;case`inline-start`:return 3;case`inline-end`:return 4}return 0}},Mi={name:`letter-spacing`,initialValue:`0`,prefix:!1,type:0,parse:function(e,t){return t.type===20&&t.value===`normal`?0:t.type===17||t.type===15?t.number:0}},Ni;(function(e){e.NORMAL=`normal`,e.STRICT=`strict`})(Ni||={});var Pi={name:`line-break`,initialValue:`normal`,prefix:!1,type:2,parse:function(e,t){switch(t){case`strict`:return Ni.STRICT;default:return Ni.NORMAL}}},Fi={name:`line-height`,initialValue:`normal`,prefix:!1,type:4},Ii=function(e,t){return Xn(e)&&e.value===`normal`?1.2*t:e.type===17?t*e.number:ir(e)?ur(e,t):t},Li={name:`list-style-image`,initialValue:`none`,type:0,prefix:!1,parse:function(e,t){return t.type===20&&t.value===`none`?null:Xr.parse(e,t)}},Ri={name:`list-style-position`,initialValue:`outside`,prefix:!1,type:2,parse:function(e,t){switch(t){case`inside`:return 0;default:return 1}}},zi={name:`list-style-type`,initialValue:`none`,prefix:!1,type:2,parse:function(e,t){switch(t){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;default:return-1}}},Bi=function(e){return{name:`margin-`+e,initialValue:`0`,prefix:!1,type:4}},Vi=Bi(`top`),Hi=Bi(`right`),Ui=Bi(`bottom`),Wi=Bi(`left`),Gi={name:`overflow`,initialValue:`visible`,prefix:!1,type:1,parse:function(e,t){return t.filter(Xn).map(function(e){switch(e.value){case`hidden`:return 1;case`scroll`:return 2;case`clip`:return 3;case`auto`:return 4;default:return 0}})}},Ki={name:`overflow-wrap`,initialValue:`normal`,prefix:!1,type:2,parse:function(e,t){switch(t){case`break-word`:return`break-word`;default:return`normal`}}},qi=function(e){return{name:`padding-`+e,initialValue:`0`,prefix:!1,type:3,format:`length-percentage`}},Ji=qi(`top`),Yi=qi(`right`),Xi=qi(`bottom`),Zi=qi(`left`),Qi={name:`text-align`,initialValue:`left`,prefix:!1,type:2,parse:function(e,t){switch(t){case`right`:return 2;case`center`:case`justify`:return 1;default:return 0}}},$i={name:`position`,initialValue:`static`,prefix:!1,type:2,parse:function(e,t){switch(t){case`relative`:return 1;case`absolute`:return 2;case`fixed`:return 3;case`sticky`:return 4}return 0}},ea={name:`text-shadow`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){return t.length===1&&Qn(t[0],`none`)?[]:tr(t).map(function(t){for(var n={color:Dr.TRANSPARENT,offsetX:or,offsetY:or,blur:or},r=0,i=0;i<t.length;i++){var a=t[i];rr(a)?(r===0?n.offsetX=a:r===1?n.offsetY=a:n.blur=a,r++):n.color=vr.parse(e,a)}return n})}},ta={name:`text-transform`,initialValue:`none`,prefix:!1,type:2,parse:function(e,t){switch(t){case`uppercase`:return 2;case`lowercase`:return 1;case`capitalize`:return 3}return 0}},na={name:`transform`,initialValue:`none`,prefix:!0,type:0,parse:function(e,t){if(t.type===20&&t.value===`none`)return null;if(t.type===18){var n=ra[t.name];if(n===void 0)throw Error(`Attempting to parse an unsupported transform function "`+t.name+`"`);return n(t.values)}return null}},ra={matrix:function(e){var t=e.filter(function(e){return e.type===17}).map(function(e){return e.number});return t.length===6?t:null},matrix3d:function(e){var t=e.filter(function(e){return e.type===17}).map(function(e){return e.number}),n=t[0],r=t[1];t[2],t[3];var i=t[4],a=t[5];t[6],t[7],t[8],t[9],t[10],t[11];var o=t[12],s=t[13];return t[14],t[15],t.length===16?[n,r,i,a,o,s]:null}},ia={type:16,number:50,flags:ut},aa=[ia,ia],oa={name:`transform-origin`,initialValue:`50% 50%`,prefix:!0,type:1,parse:function(e,t){var n=t.filter(ir);return n.length===2?[n[0],n[1]]:aa}},sa={name:`visible`,initialValue:`none`,prefix:!1,type:2,parse:function(e,t){switch(t){case`hidden`:return 1;case`collapse`:return 2;default:return 0}}},ca;(function(e){e.NORMAL=`normal`,e.BREAK_ALL=`break-all`,e.KEEP_ALL=`keep-all`})(ca||={});for(var la={name:`word-break`,initialValue:`normal`,prefix:!1,type:2,parse:function(e,t){switch(t){case`break-all`:return ca.BREAK_ALL;case`keep-all`:return ca.KEEP_ALL;default:return ca.NORMAL}}},ua={name:`z-index`,initialValue:`auto`,prefix:!1,type:0,parse:function(e,t){if(t.type===20)return{auto:!0,order:0};if(Yn(t))return{auto:!1,order:t.number};throw Error(`Invalid z-index number parsed`)}},da={name:`time`,parse:function(e,t){if(t.type===15)switch(t.unit.toLowerCase()){case`s`:return 1e3*t.number;case`ms`:return t.number}throw Error(`Unsupported time type`)}},fa={name:`opacity`,initialValue:`1`,type:0,prefix:!1,parse:function(e,t){return Yn(t)?t.number:1}},pa={name:`text-decoration-color`,initialValue:`transparent`,prefix:!1,type:3,format:`color`},ma={name:`text-decoration-line`,initialValue:`none`,prefix:!1,type:1,parse:function(e,t){return t.filter(Xn).map(function(e){switch(e.value){case`underline`:return 1;case`overline`:return 2;case`line-through`:return 3;case`none`:return 4}return 0}).filter(function(e){return e!==0})}},ha={name:`font-family`,initialValue:``,prefix:!1,type:1,parse:function(e,t){var n=[],r=[];return t.forEach(function(e){switch(e.type){case 20:case 0:n.push(e.value);break;case 17:n.push(e.number.toString());break;case 4:r.push(n.join(` `)),n.length=0;break}}),n.length&&r.push(n.join(` `)),r.map(function(e){return e.indexOf(` `)===-1?e:`'`+e+`'`})}},ga={name:`font-size`,initialValue:`0`,prefix:!1,type:3,format:`length`},_a={name:`font-weight`,initialValue:`normal`,type:0,prefix:!1,parse:function(e,t){if(Yn(t))return t.number;if(Xn(t))switch(t.value){case`bold`:return 700;default:return 400}return 400}},va={name:`font-variant`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){return t.filter(Xn).map(function(e){return e.value})}},ya={name:`font-style`,initialValue:`normal`,prefix:!1,type:2,parse:function(e,t){switch(t){case`oblique`:return`oblique`;case`italic`:return`italic`;default:return`normal`}}},ba=function(e,t){return(e&t)!==0},xa={name:`content`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){if(t.length===0)return[];var n=t[0];return n.type===20&&n.value===`none`?[]:t}},U={name:`counter-increment`,initialValue:`none`,prefix:!0,type:1,parse:function(e,t){if(t.length===0)return null;var n=t[0];if(n.type===20&&n.value===`none`)return null;for(var r=[],i=t.filter($n),a=0;a<i.length;a++){var o=i[a],s=i[a+1];if(o.type===20){var c=s&&Yn(s)?s.number:1;r.push({counter:o.value,increment:c})}}return r}},Sa={name:`counter-reset`,initialValue:`none`,prefix:!0,type:1,parse:function(e,t){if(t.length===0)return[];for(var n=[],r=t.filter($n),i=0;i<r.length;i++){var a=r[i],o=r[i+1];if(Xn(a)&&a.value!==`none`){var s=o&&Yn(o)?o.number:0;n.push({counter:a.value,reset:s})}}return n}},Ca={name:`duration`,initialValue:`0s`,prefix:!1,type:1,parse:function(e,t){return t.filter(Jn).map(function(t){return da.parse(e,t)})}},wa={name:`quotes`,initialValue:`none`,prefix:!0,type:1,parse:function(e,t){if(t.length===0)return null;var n=t[0];if(n.type===20&&n.value===`none`)return null;var r=[],i=t.filter(Zn);if(i.length%2!=0)return null;for(var a=0;a<i.length;a+=2){var o=i[a].value,s=i[a+1].value;r.push({open:o,close:s})}return r}},Ta=function(e,t,n){if(!e)return``;var r=e[Math.min(t,e.length-1)];return r?n?r.open:r.close:``},Ea={name:`box-shadow`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){return t.length===1&&Qn(t[0],`none`)?[]:tr(t).map(function(t){for(var n={color:255,offsetX:or,offsetY:or,blur:or,spread:or,inset:!1},r=0,i=0;i<t.length;i++){var a=t[i];Qn(a,`inset`)?n.inset=!0:rr(a)?(r===0?n.offsetX=a:r===1?n.offsetY=a:r===2?n.blur=a:n.spread=a,r++):n.color=vr.parse(e,a)}return n})}},Da={name:`paint-order`,initialValue:`normal`,prefix:!1,type:1,parse:function(e,t){var n=[0,1,2],r=[];return t.filter(Xn).forEach(function(e){switch(e.value){case`stroke`:r.push(1);break;case`fill`:r.push(0);break;case`markers`:r.push(2);break}}),n.forEach(function(e){r.indexOf(e)===-1&&r.push(e)}),r}},Oa={name:`-webkit-text-stroke-color`,initialValue:`currentcolor`,prefix:!1,type:3,format:`color`},ka={name:`-webkit-text-stroke-width`,initialValue:`0`,type:0,prefix:!1,parse:function(e,t){return Jn(t)?t.number:0}},Aa=function(){function e(e,t){this.animationDuration=W(e,Ca,t.animationDuration),this.backgroundClip=W(e,Or,t.backgroundClip),this.backgroundColor=W(e,kr,t.backgroundColor),this.backgroundImage=W(e,$r,t.backgroundImage),this.backgroundOrigin=W(e,ei,t.backgroundOrigin),this.backgroundPosition=W(e,ti,t.backgroundPosition),this.backgroundRepeat=W(e,ni,t.backgroundRepeat),this.backgroundSize=W(e,ai,t.backgroundSize),this.borderTopColor=W(e,ci,t.borderTopColor),this.borderRightColor=W(e,li,t.borderRightColor),this.borderBottomColor=W(e,ui,t.borderBottomColor),this.borderLeftColor=W(e,di,t.borderLeftColor),this.borderTopLeftRadius=W(e,pi,t.borderTopLeftRadius),this.borderTopRightRadius=W(e,mi,t.borderTopRightRadius),this.borderBottomRightRadius=W(e,hi,t.borderBottomRightRadius),this.borderBottomLeftRadius=W(e,gi,t.borderBottomLeftRadius),this.borderTopStyle=W(e,vi,t.borderTopStyle),this.borderRightStyle=W(e,yi,t.borderRightStyle),this.borderBottomStyle=W(e,bi,t.borderBottomStyle),this.borderLeftStyle=W(e,xi,t.borderLeftStyle),this.borderTopWidth=W(e,Ci,t.borderTopWidth),this.borderRightWidth=W(e,wi,t.borderRightWidth),this.borderBottomWidth=W(e,Ti,t.borderBottomWidth),this.borderLeftWidth=W(e,Ei,t.borderLeftWidth),this.boxShadow=W(e,Ea,t.boxShadow),this.color=W(e,Di,t.color),this.direction=W(e,Oi,t.direction),this.display=W(e,ki,t.display),this.float=W(e,ji,t.cssFloat),this.fontFamily=W(e,ha,t.fontFamily),this.fontSize=W(e,ga,t.fontSize),this.fontStyle=W(e,ya,t.fontStyle),this.fontVariant=W(e,va,t.fontVariant),this.fontWeight=W(e,_a,t.fontWeight),this.letterSpacing=W(e,Mi,t.letterSpacing),this.lineBreak=W(e,Pi,t.lineBreak),this.lineHeight=W(e,Fi,t.lineHeight),this.listStyleImage=W(e,Li,t.listStyleImage),this.listStylePosition=W(e,Ri,t.listStylePosition),this.listStyleType=W(e,zi,t.listStyleType),this.marginTop=W(e,Vi,t.marginTop),this.marginRight=W(e,Hi,t.marginRight),this.marginBottom=W(e,Ui,t.marginBottom),this.marginLeft=W(e,Wi,t.marginLeft),this.opacity=W(e,fa,t.opacity);var n=W(e,Gi,t.overflow);this.overflowX=n[0],this.overflowY=n[+(n.length>1)],this.overflowWrap=W(e,Ki,t.overflowWrap),this.paddingTop=W(e,Ji,t.paddingTop),this.paddingRight=W(e,Yi,t.paddingRight),this.paddingBottom=W(e,Xi,t.paddingBottom),this.paddingLeft=W(e,Zi,t.paddingLeft),this.paintOrder=W(e,Da,t.paintOrder),this.position=W(e,$i,t.position),this.textAlign=W(e,Qi,t.textAlign),this.textDecorationColor=W(e,pa,t.textDecorationColor??t.color),this.textDecorationLine=W(e,ma,t.textDecorationLine??t.textDecoration),this.textShadow=W(e,ea,t.textShadow),this.textTransform=W(e,ta,t.textTransform),this.transform=W(e,na,t.transform),this.transformOrigin=W(e,oa,t.transformOrigin),this.visibility=W(e,sa,t.visibility),this.webkitTextStrokeColor=W(e,Oa,t.webkitTextStrokeColor),this.webkitTextStrokeWidth=W(e,ka,t.webkitTextStrokeWidth),this.wordBreak=W(e,la,t.wordBreak),this.zIndex=W(e,ua,t.zIndex)}return e.prototype.isVisible=function(){return this.display>0&&this.opacity>0&&this.visibility===0},e.prototype.isTransparent=function(){return yr(this.backgroundColor)},e.prototype.isTransformed=function(){return this.transform!==null},e.prototype.isPositioned=function(){return this.position!==0},e.prototype.isPositionedWithZIndex=function(){return this.isPositioned()&&!this.zIndex.auto},e.prototype.isFloating=function(){return this.float!==0},e.prototype.isInlineLevel=function(){return ba(this.display,4)||ba(this.display,33554432)||ba(this.display,268435456)||ba(this.display,536870912)||ba(this.display,67108864)||ba(this.display,134217728)},e}(),ja=function(){function e(e,t){this.content=W(e,xa,t.content),this.quotes=W(e,wa,t.quotes)}return e}(),Ma=function(){function e(e,t){this.counterIncrement=W(e,U,t.counterIncrement),this.counterReset=W(e,Sa,t.counterReset)}return e}(),W=function(e,t,n){var r=new Kn,i=n==null?t.initialValue:n.toString();r.write(i);var a=new qn(r.read());switch(t.type){case 2:var o=a.parseComponentValue();return t.parse(e,Xn(o)?o.value:t.initialValue);case 0:return t.parse(e,a.parseComponentValue());case 1:return t.parse(e,a.parseComponentValues());case 4:return a.parseComponentValue();case 3:switch(t.format){case`angle`:return hr.parse(e,a.parseComponentValue());case`color`:return vr.parse(e,a.parseComponentValue());case`image`:return Xr.parse(e,a.parseComponentValue());case`length`:var s=a.parseComponentValue();return rr(s)?s:or;case`length-percentage`:var c=a.parseComponentValue();return ir(c)?c:or;case`time`:return da.parse(e,a.parseComponentValue())}break}},Na=`data-html2canvas-debug`,Pa=function(e){switch(e.getAttribute(Na)){case`all`:return 1;case`clone`:return 2;case`parse`:return 3;case`render`:return 4;default:return 0}},Fa=function(e,t){var n=Pa(e);return n===1||t===n},Ia=function(){function e(e,t){if(this.context=e,this.textNodes=[],this.elements=[],this.flags=0,Fa(t,3))debugger;this.styles=new Aa(e,window.getComputedStyle(t,null)),xs(t)&&(this.styles.animationDuration.some(function(e){return e>0})&&(t.style.animationDuration=`0s`),this.styles.transform!==null&&(t.style.transform=`none`)),this.bounds=s(this.context,t),Fa(t,4)&&(this.flags|=16)}return e}(),La=`AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=`,Ra=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,za=typeof Uint8Array>`u`?[]:new Uint8Array(256),Ba=0;Ba<Ra.length;Ba++)za[Ra.charCodeAt(Ba)]=Ba;for(var Va=function(e){var t=e.length*.75,n=e.length,r,i=0,a,o,s,c;e[e.length-1]===`=`&&(t--,e[e.length-2]===`=`&&t--);var l=typeof ArrayBuffer<`u`&&typeof Uint8Array<`u`&&Uint8Array.prototype.slice!==void 0?new ArrayBuffer(t):Array(t),u=Array.isArray(l)?l:new Uint8Array(l);for(r=0;r<n;r+=4)a=za[e.charCodeAt(r)],o=za[e.charCodeAt(r+1)],s=za[e.charCodeAt(r+2)],c=za[e.charCodeAt(r+3)],u[i++]=a<<2|o>>4,u[i++]=(o&15)<<4|s>>2,u[i++]=(s&3)<<6|c&63;return l},Ha=function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n.push(e[r+1]<<8|e[r]);return n},Ua=function(e){for(var t=e.length,n=[],r=0;r<t;r+=4)n.push(e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]);return n},Wa=5,Ga=11,Ka=2,qa=Ga-Wa,Ja=65536>>Wa,Ya=(1<<Wa)-1,Xa=Ja+(1024>>Wa)+32,Za=65536>>Ga,Qa=(1<<qa)-1,$a=function(e,t,n){return e.slice?e.slice(t,n):new Uint16Array(Array.prototype.slice.call(e,t,n))},eo=function(e,t,n){return e.slice?e.slice(t,n):new Uint32Array(Array.prototype.slice.call(e,t,n))},to=function(e,t){var n=Va(e),r=Array.isArray(n)?Ua(n):new Uint32Array(n),i=Array.isArray(n)?Ha(n):new Uint16Array(n),a=24,o=$a(i,a/2,r[4]/2),s=r[5]===2?$a(i,(a+r[4])/2):eo(r,Math.ceil((a+r[4])/4));return new no(r[0],r[1],r[2],r[3],o,s)},no=function(){function e(e,t,n,r,i,a){this.initialValue=e,this.errorValue=t,this.highStart=n,this.highValueIndex=r,this.index=i,this.data=a}return e.prototype.get=function(e){var t;if(e>=0){if(e<55296||e>56319&&e<=65535)return t=this.index[e>>Wa],t=(t<<Ka)+(e&Ya),this.data[t];if(e<=65535)return t=this.index[Ja+(e-55296>>Wa)],t=(t<<Ka)+(e&Ya),this.data[t];if(e<this.highStart)return t=Xa-Za+(e>>Ga),t=this.index[t],t+=e>>Wa&Qa,t=this.index[t],t=(t<<Ka)+(e&Ya),this.data[t];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},e}(),G=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,ro=typeof Uint8Array>`u`?[]:new Uint8Array(256),io=0;io<G.length;io++)ro[G.charCodeAt(io)]=io;var ao=1,oo=2,so=3,co=4,lo=5,uo=7,fo=8,po=9,mo=10,ho=11,go=12,_o=13,vo=14,yo=15,bo=function(e){for(var t=[],n=0,r=e.length;n<r;){var i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<r){var a=e.charCodeAt(n++);(a&64512)==56320?t.push(((i&1023)<<10)+(a&1023)+65536):(t.push(i),n--)}else t.push(i)}return t},xo=function(){var e=[...arguments];if(String.fromCodePoint)return String.fromCodePoint.apply(String,e);var t=e.length;if(!t)return``;for(var n=[],r=-1,i=``;++r<t;){var a=e[r];a<=65535?n.push(a):(a-=65536,n.push((a>>10)+55296,a%1024+56320)),(r+1===t||n.length>16384)&&(i+=String.fromCharCode.apply(String,n),n.length=0)}return i},So=to(La),K=`×`,Co=`÷`,wo=function(e){return So.get(e)},To=function(e,t,n){var r=n-2,i=t[r],a=t[n-1],o=t[n];if(a===oo&&o===so)return K;if(a===oo||a===so||a===co||o===oo||o===so||o===co)return Co;if(a===fo&&[fo,po,ho,go].indexOf(o)!==-1||(a===ho||a===po)&&(o===po||o===mo)||(a===go||a===mo)&&o===mo||o===_o||o===lo||o===uo||a===ao)return K;if(a===_o&&o===vo){for(;i===lo;)i=t[--r];if(i===vo)return K}if(a===yo&&o===yo){for(var s=0;i===yo;)s++,i=t[--r];if(s%2==0)return K}return Co},Eo=function(e){var t=bo(e),n=t.length,r=0,i=0,a=t.map(wo);return{next:function(){if(r>=n)return{done:!0,value:null};for(var e=K;r<n&&(e=To(t,a,++r))===K;);if(e!==K||r===n){var o=xo.apply(null,t.slice(i,r));return i=r,{value:o,done:!1}}return{done:!0,value:null}}}},Do=function(e){for(var t=Eo(e),n=[],r;!(r=t.next()).done;)r.value&&n.push(r.value.slice());return n},Oo=function(e){var t=123;if(e.createRange){var n=e.createRange();if(n.getBoundingClientRect){var r=e.createElement(`boundtest`);r.style.height=t+`px`,r.style.display=`block`,e.body.appendChild(r),n.selectNode(r);var i=n.getBoundingClientRect(),a=Math.round(i.height);if(e.body.removeChild(r),a===t)return!0}}return!1},ko=function(e){var t=e.createElement(`boundtest`);t.style.width=`50px`,t.style.display=`block`,t.style.fontSize=`12px`,t.style.letterSpacing=`0px`,t.style.wordSpacing=`0px`,e.body.appendChild(t);var n=e.createRange();t.innerHTML=typeof``.repeat==`function`?`&#128104;`.repeat(10):``;var r=t.firstChild,i=l(r.data).map(function(e){return u(e)}),a=0,o={},s=i.every(function(e,t){n.setStart(r,a),n.setEnd(r,a+e.length);var i=n.getBoundingClientRect();a+=e.length;var s=i.x>o.x||i.y>o.y;return o=i,t===0?!0:s});return e.body.removeChild(t),s},Ao=function(){return new Image().crossOrigin!==void 0},jo=function(){return typeof new XMLHttpRequest().responseType==`string`},Mo=function(e){var t=new Image,n=e.createElement(`canvas`),r=n.getContext(`2d`);if(!r)return!1;t.src=`data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>`;try{r.drawImage(t,0,0),n.toDataURL()}catch{return!1}return!0},No=function(e){return e[0]===0&&e[1]===255&&e[2]===0&&e[3]===255},Po=function(e){var t=e.createElement(`canvas`),n=100;t.width=n,t.height=n;var r=t.getContext(`2d`);if(!r)return Promise.reject(!1);r.fillStyle=`rgb(0, 255, 0)`,r.fillRect(0,0,n,n);var i=new Image,a=t.toDataURL();i.src=a;var o=Fo(n,n,0,0,i);return r.fillStyle=`red`,r.fillRect(0,0,n,n),Io(o).then(function(t){r.drawImage(t,0,0);var i=r.getImageData(0,0,n,n).data;r.fillStyle=`red`,r.fillRect(0,0,n,n);var o=e.createElement(`div`);return o.style.backgroundImage=`url(`+a+`)`,o.style.height=n+`px`,No(i)?Io(Fo(n,n,0,0,o)):Promise.reject(!1)}).then(function(e){return r.drawImage(e,0,0),No(r.getImageData(0,0,n,n).data)}).catch(function(){return!1})},Fo=function(e,t,n,r,i){var a=`http://www.w3.org/2000/svg`,o=document.createElementNS(a,`svg`),s=document.createElementNS(a,`foreignObject`);return o.setAttributeNS(null,`width`,e.toString()),o.setAttributeNS(null,`height`,t.toString()),s.setAttributeNS(null,`width`,`100%`),s.setAttributeNS(null,`height`,`100%`),s.setAttributeNS(null,`x`,n.toString()),s.setAttributeNS(null,`y`,r.toString()),s.setAttributeNS(null,`externalResourcesRequired`,`true`),o.appendChild(s),s.appendChild(i),o},Io=function(e){return new Promise(function(t,n){var r=new Image;r.onload=function(){return t(r)},r.onerror=n,r.src=`data:image/svg+xml;charset=utf-8,`+encodeURIComponent(new XMLSerializer().serializeToString(e))})},Lo={get SUPPORT_RANGE_BOUNDS(){var e=Oo(document);return Object.defineProperty(Lo,`SUPPORT_RANGE_BOUNDS`,{value:e}),e},get SUPPORT_WORD_BREAKING(){var e=Lo.SUPPORT_RANGE_BOUNDS&&ko(document);return Object.defineProperty(Lo,`SUPPORT_WORD_BREAKING`,{value:e}),e},get SUPPORT_SVG_DRAWING(){var e=Mo(document);return Object.defineProperty(Lo,`SUPPORT_SVG_DRAWING`,{value:e}),e},get SUPPORT_FOREIGNOBJECT_DRAWING(){var e=typeof Array.from==`function`&&typeof window.fetch==`function`?Po(document):Promise.resolve(!1);return Object.defineProperty(Lo,`SUPPORT_FOREIGNOBJECT_DRAWING`,{value:e}),e},get SUPPORT_CORS_IMAGES(){var e=Ao();return Object.defineProperty(Lo,`SUPPORT_CORS_IMAGES`,{value:e}),e},get SUPPORT_RESPONSE_TYPE(){var e=jo();return Object.defineProperty(Lo,`SUPPORT_RESPONSE_TYPE`,{value:e}),e},get SUPPORT_CORS_XHR(){var e=`withCredentials`in new XMLHttpRequest;return Object.defineProperty(Lo,`SUPPORT_CORS_XHR`,{value:e}),e},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){var e=!!(typeof Intl<`u`&&Intl.Segmenter);return Object.defineProperty(Lo,`SUPPORT_NATIVE_TEXT_SEGMENTATION`,{value:e}),e}},Ro=function(){function e(e,t){this.text=e,this.bounds=t}return e}(),zo=function(e,t,n,r){var i=Wo(t,n),a=[],s=0;return i.forEach(function(t){if(n.textDecorationLine.length||t.trim().length>0)if(Lo.SUPPORT_RANGE_BOUNDS){var i=Vo(r,s,t.length).getClientRects();if(i.length>1){var c=Ho(t),l=0;c.forEach(function(t){a.push(new Ro(t,o.fromDOMRectList(e,Vo(r,l+s,t.length).getClientRects()))),l+=t.length})}else a.push(new Ro(t,o.fromDOMRectList(e,i)))}else{var u=r.splitText(t.length);a.push(new Ro(t,Bo(e,r))),r=u}else Lo.SUPPORT_RANGE_BOUNDS||(r=r.splitText(t.length));s+=t.length}),a},Bo=function(e,t){var n=t.ownerDocument;if(n){var r=n.createElement(`html2canvaswrapper`);r.appendChild(t.cloneNode(!0));var i=t.parentNode;if(i){i.replaceChild(r,t);var a=s(e,r);return r.firstChild&&i.replaceChild(r.firstChild,r),a}}return o.EMPTY},Vo=function(e,t,n){var r=e.ownerDocument;if(!r)throw Error(`Node has no owner document`);var i=r.createRange();return i.setStart(e,t),i.setEnd(e,t+n),i},Ho=function(e){if(Lo.SUPPORT_NATIVE_TEXT_SEGMENTATION){var t=new Intl.Segmenter(void 0,{granularity:`grapheme`});return Array.from(t.segment(e)).map(function(e){return e.segment})}return Do(e)},Uo=function(e,t){if(Lo.SUPPORT_NATIVE_TEXT_SEGMENTATION){var n=new Intl.Segmenter(void 0,{granularity:`word`});return Array.from(n.segment(e)).map(function(e){return e.segment})}return Ko(e,t)},Wo=function(e,t){return t.letterSpacing===0?Uo(e,t):Ho(e)},Go=[32,160,4961,65792,65793,4153,4241],Ko=function(e,t){for(var n=st(e,{lineBreak:t.lineBreak,wordBreak:t.overflowWrap===`break-word`?`break-word`:t.wordBreak}),r=[],i,a=function(){if(i.value){var e=l(i.value.slice()),t=``;e.forEach(function(e){Go.indexOf(e)===-1?t+=u(e):(t.length&&r.push(t),r.push(u(e)),t=``)}),t.length&&r.push(t)}};!(i=n.next()).done;)a();return r},qo=function(){function e(e,t,n){this.text=Jo(t.data,n.textTransform),this.textBounds=zo(e,this.text,n,t)}return e}(),Jo=function(e,t){switch(t){case 1:return e.toLowerCase();case 3:return e.replace(Yo,Xo);case 2:return e.toUpperCase();default:return e}},Yo=/(^|\s|:|-|\(|\))([a-z])/g,Xo=function(e,t,n){return e.length>0?t+n.toUpperCase():e},Zo=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.src=n.currentSrc||n.src,r.intrinsicWidth=n.naturalWidth,r.intrinsicHeight=n.naturalHeight,r.context.cache.addImage(r.src),r}return n}(Ia),Qo=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.canvas=n,r.intrinsicWidth=n.width,r.intrinsicHeight=n.height,r}return n}(Ia),$o=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this,i=new XMLSerializer,a=s(t,n);return n.setAttribute(`width`,a.width+`px`),n.setAttribute(`height`,a.height+`px`),r.svg=`data:image/svg+xml,`+encodeURIComponent(i.serializeToString(n)),r.intrinsicWidth=n.width.baseVal.value,r.intrinsicHeight=n.height.baseVal.value,r.context.cache.addImage(r.svg),r}return n}(Ia),es=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.value=n.value,r}return n}(Ia),ts=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.start=n.start,r.reversed=typeof n.reversed==`boolean`&&n.reversed===!0,r}return n}(Ia),ns=[{type:15,flags:0,unit:`px`,number:3}],rs=[{type:16,flags:0,number:50}],is=function(e){return e.width>e.height?new o(e.left+(e.width-e.height)/2,e.top,e.height,e.height):e.width<e.height?new o(e.left,e.top+(e.height-e.width)/2,e.width,e.width):e},as=function(e){var t=e.type===cs?Array(e.value.length+1).join(`•`):e.value;return t.length===0?e.placeholder||``:t},os=`checkbox`,ss=`radio`,cs=`password`,q=707406591,ls=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;switch(r.type=n.type.toLowerCase(),r.checked=n.checked,r.value=as(n),(r.type===os||r.type===ss)&&(r.styles.backgroundColor=3739148031,r.styles.borderTopColor=r.styles.borderRightColor=r.styles.borderBottomColor=r.styles.borderLeftColor=2779096575,r.styles.borderTopWidth=r.styles.borderRightWidth=r.styles.borderBottomWidth=r.styles.borderLeftWidth=1,r.styles.borderTopStyle=r.styles.borderRightStyle=r.styles.borderBottomStyle=r.styles.borderLeftStyle=1,r.styles.backgroundClip=[0],r.styles.backgroundOrigin=[0],r.bounds=is(r.bounds)),r.type){case os:r.styles.borderTopRightRadius=r.styles.borderTopLeftRadius=r.styles.borderBottomRightRadius=r.styles.borderBottomLeftRadius=ns;break;case ss:r.styles.borderTopRightRadius=r.styles.borderTopLeftRadius=r.styles.borderBottomRightRadius=r.styles.borderBottomLeftRadius=rs;break}return r}return n}(Ia),us=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this,i=n.options[n.selectedIndex||0];return r.value=i&&i.text||``,r}return n}(Ia),ds=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.value=n.value,r}return n}(Ia),fs=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;r.src=n.src,r.width=parseInt(n.width,10)||0,r.height=parseInt(n.height,10)||0,r.backgroundColor=r.styles.backgroundColor;try{if(n.contentWindow&&n.contentWindow.document&&n.contentWindow.document.documentElement){r.tree=gs(t,n.contentWindow.document.documentElement);var i=n.contentWindow.document.documentElement?Er(t,getComputedStyle(n.contentWindow.document.documentElement).backgroundColor):Dr.TRANSPARENT,a=n.contentWindow.document.body?Er(t,getComputedStyle(n.contentWindow.document.body).backgroundColor):Dr.TRANSPARENT;r.backgroundColor=yr(i)?yr(a)?r.styles.backgroundColor:a:i}}catch{}return r}return n}(Ia),ps=[`OL`,`UL`,`MENU`],ms=function(e,t,n,r){for(var i=t.firstChild,a=void 0;i;i=a)if(a=i.nextSibling,ys(i)&&i.data.trim().length>0)n.textNodes.push(new qo(e,i,n.styles));else if(bs(i))if(Ls(i)&&i.assignedNodes)i.assignedNodes().forEach(function(t){return ms(e,t,n,r)});else{var o=hs(e,i);o.styles.isVisible()&&(_s(i,o,r)?o.flags|=4:vs(o.styles)&&(o.flags|=2),ps.indexOf(i.tagName)!==-1&&(o.flags|=8),n.elements.push(o),i.slot,i.shadowRoot?ms(e,i.shadowRoot,o,r):!Fs(i)&&!Ds(i)&&!Is(i)&&ms(e,i,o,r))}},hs=function(e,t){return js(t)?new Zo(e,t):ks(t)?new Qo(e,t):Ds(t)?new $o(e,t):Cs(t)?new es(e,t):ws(t)?new ts(e,t):Ts(t)?new ls(e,t):Is(t)?new us(e,t):Fs(t)?new ds(e,t):Ms(t)?new fs(e,t):new Ia(e,t)},gs=function(e,t){var n=hs(e,t);return n.flags|=4,ms(e,t,n,n),n},_s=function(e,t,n){return t.styles.isPositionedWithZIndex()||t.styles.opacity<1||t.styles.isTransformed()||Os(e)&&n.styles.isTransparent()},vs=function(e){return e.isPositioned()||e.isFloating()},ys=function(e){return e.nodeType===Node.TEXT_NODE},bs=function(e){return e.nodeType===Node.ELEMENT_NODE},xs=function(e){return bs(e)&&e.style!==void 0&&!Ss(e)},Ss=function(e){return typeof e.className==`object`},Cs=function(e){return e.tagName===`LI`},ws=function(e){return e.tagName===`OL`},Ts=function(e){return e.tagName===`INPUT`},Es=function(e){return e.tagName===`HTML`},Ds=function(e){return e.tagName===`svg`},Os=function(e){return e.tagName===`BODY`},ks=function(e){return e.tagName===`CANVAS`},As=function(e){return e.tagName===`VIDEO`},js=function(e){return e.tagName===`IMG`},Ms=function(e){return e.tagName===`IFRAME`},Ns=function(e){return e.tagName===`STYLE`},Ps=function(e){return e.tagName===`SCRIPT`},Fs=function(e){return e.tagName===`TEXTAREA`},Is=function(e){return e.tagName===`SELECT`},Ls=function(e){return e.tagName===`SLOT`},Rs=function(e){return e.tagName.indexOf(`-`)>0},zs=function(){function e(){this.counters={}}return e.prototype.getCounterValue=function(e){var t=this.counters[e];return t&&t.length?t[t.length-1]:1},e.prototype.getCounterValues=function(e){return this.counters[e]||[]},e.prototype.pop=function(e){var t=this;e.forEach(function(e){return t.counters[e].pop()})},e.prototype.parse=function(e){var t=this,n=e.counterIncrement,r=e.counterReset,i=!0;n!==null&&n.forEach(function(e){var n=t.counters[e.counter];n&&e.increment!==0&&(i=!1,n.length||n.push(1),n[Math.max(0,n.length-1)]+=e.increment)});var a=[];return i&&r.forEach(function(e){var n=t.counters[e.counter];a.push(e.counter),n||=t.counters[e.counter]=[],n.push(e.reset)}),a},e}(),Bs={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`]},Vs={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:`Ք.Փ.Ւ.Ց.Ր.Տ.Վ.Ս.Ռ.Ջ.Պ.Չ.Ո.Շ.Ն.Յ.Մ.Ճ.Ղ.Ձ.Հ.Կ.Ծ.Խ.Լ.Ի.Ժ.Թ.Ը.Է.Զ.Ե.Դ.Գ.Բ.Ա`.split(`.`)},Hs={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:`י׳.ט׳.ח׳.ז׳.ו׳.ה׳.ד׳.ג׳.ב׳.א׳.ת.ש.ר.ק.צ.פ.ע.ס.נ.מ.ל.כ.יט.יח.יז.טז.טו.י.ט.ח.ז.ו.ה.ד.ג.ב.א`.split(`.`)},Us={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:`ჵ.ჰ.ჯ.ჴ.ხ.ჭ.წ.ძ.ც.ჩ.შ.ყ.ღ.ქ.ფ.ჳ.ტ.ს.რ.ჟ.პ.ო.ჲ.ნ.მ.ლ.კ.ი.თ.ჱ.ზ.ვ.ე.დ.გ.ბ.ა`.split(`.`)},Ws=function(e,t,n,r,i,a){return e<t||e>n?rc(e,i,a.length>0):r.integers.reduce(function(t,n,i){for(;e>=n;)e-=n,t+=r.values[i];return t},``)+a},Gs=function(e,t,n,r){var i=``;do n||e--,i=r(e)+i,e/=t;while(e*t>=t);return i},Ks=function(e,t,n,r,i){var a=n-t+1;return(e<0?`-`:``)+(Gs(Math.abs(e),a,r,function(e){return u(Math.floor(e%a)+t)})+i)},qs=function(e,t,n){n===void 0&&(n=`. `);var r=t.length;return Gs(Math.abs(e),r,!1,function(e){return t[Math.floor(e%r)]})+n},Js=1,Ys=2,Xs=4,Zs=8,Qs=function(e,t,n,r,i,a){if(e<-9999||e>9999)return rc(e,4,i.length>0);var o=Math.abs(e),s=i;if(o===0)return t[0]+s;for(var c=0;o>0&&c<=4;c++){var l=o%10;l===0&&ba(a,Js)&&s!==``?s=t[l]+s:l>1||l===1&&c===0||l===1&&c===1&&ba(a,Ys)||l===1&&c===1&&ba(a,Xs)&&e>100||l===1&&c>1&&ba(a,Zs)?s=t[l]+(c>0?n[c-1]:``)+s:l===1&&c>0&&(s=n[c-1]+s),o=Math.floor(o/10)}return(e<0?r:``)+s},$s=`十百千萬`,ec=`拾佰仟萬`,tc=`マイナス`,nc=`마이너스`,rc=function(e,t,n){var r=n?`. `:``,i=n?`、`:``,a=n?`, `:``,o=n?` `:``;switch(t){case 0:return`•`+o;case 1:return`◦`+o;case 2:return`◾`+o;case 5:var s=Ks(e,48,57,!0,r);return s.length<4?`0`+s:s;case 4:return qs(e,`〇一二三四五六七八九`,i);case 6:return Ws(e,1,3999,Bs,3,r).toLowerCase();case 7:return Ws(e,1,3999,Bs,3,r);case 8:return Ks(e,945,969,!1,r);case 9:return Ks(e,97,122,!1,r);case 10:return Ks(e,65,90,!1,r);case 11:return Ks(e,1632,1641,!0,r);case 12:case 49:return Ws(e,1,9999,Vs,3,r);case 35:return Ws(e,1,9999,Vs,3,r).toLowerCase();case 13:return Ks(e,2534,2543,!0,r);case 14:case 30:return Ks(e,6112,6121,!0,r);case 15:return qs(e,`子丑寅卯辰巳午未申酉戌亥`,i);case 16:return qs(e,`甲乙丙丁戊己庚辛壬癸`,i);case 17:case 48:return Qs(e,`零一二三四五六七八九`,$s,`負`,i,Ys|Xs|Zs);case 47:return Qs(e,`零壹貳參肆伍陸柒捌玖`,ec,`負`,i,Js|Ys|Xs|Zs);case 42:return Qs(e,`零一二三四五六七八九`,$s,`负`,i,Ys|Xs|Zs);case 41:return Qs(e,`零壹贰叁肆伍陆柒捌玖`,ec,`负`,i,Js|Ys|Xs|Zs);case 26:return Qs(e,`〇一二三四五六七八九`,`十百千万`,tc,i,0);case 25:return Qs(e,`零壱弐参四伍六七八九`,`拾百千万`,tc,i,Js|Ys|Xs);case 31:return Qs(e,`영일이삼사오육칠팔구`,`십백천만`,nc,a,Js|Ys|Xs);case 33:return Qs(e,`零一二三四五六七八九`,`十百千萬`,nc,a,0);case 32:return Qs(e,`零壹貳參四五六七八九`,`拾百千`,nc,a,Js|Ys|Xs);case 18:return Ks(e,2406,2415,!0,r);case 20:return Ws(e,1,19999,Us,3,r);case 21:return Ks(e,2790,2799,!0,r);case 22:return Ks(e,2662,2671,!0,r);case 22:return Ws(e,1,10999,Hs,3,r);case 23:return qs(e,`あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん`);case 24:return qs(e,`いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす`);case 27:return Ks(e,3302,3311,!0,r);case 28:return qs(e,`アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン`,i);case 29:return qs(e,`イロハニホヘトチリヌルヲワカヨタレソツネナラムウヰノオクヤマケフコエテアサキユメミシヱヒモセス`,i);case 34:return Ks(e,3792,3801,!0,r);case 37:return Ks(e,6160,6169,!0,r);case 38:return Ks(e,4160,4169,!0,r);case 39:return Ks(e,2918,2927,!0,r);case 40:return Ks(e,1776,1785,!0,r);case 43:return Ks(e,3046,3055,!0,r);case 44:return Ks(e,3174,3183,!0,r);case 45:return Ks(e,3664,3673,!0,r);case 46:return Ks(e,3872,3881,!0,r);default:return Ks(e,48,57,!0,r)}},ic=`data-html2canvas-ignore`,ac=function(){function e(e,t,n){if(this.context=e,this.options=n,this.scrolledElements=[],this.referenceElement=t,this.counters=new zs,this.quoteDepth=0,!t.ownerDocument)throw Error(`Cloned element does not have an owner document`);this.documentElement=this.cloneNode(t.ownerDocument.documentElement,!1)}return e.prototype.toIFrame=function(e,t){var n=this,a=sc(e,t);if(!a.contentWindow)return Promise.reject(`Unable to find iframe window`);var o=e.defaultView.pageXOffset,s=e.defaultView.pageYOffset,c=a.contentWindow,l=c.document,u=uc(a).then(function(){return r(n,void 0,void 0,function(){var e,n;return i(this,function(r){switch(r.label){case 0:return this.scrolledElements.forEach(hc),c&&(c.scrollTo(t.left,t.top),/(iPad|iPhone|iPod)/g.test(navigator.userAgent)&&(c.scrollY!==t.top||c.scrollX!==t.left)&&(this.context.logger.warn(`Unable to restore scroll position for cloned document`),this.context.windowBounds=this.context.windowBounds.add(c.scrollX-t.left,c.scrollY-t.top,0,0))),e=this.options.onclone,n=this.clonedReferenceElement,n===void 0?[2,Promise.reject(`Error finding the `+this.referenceElement.nodeName+` in the cloned document`)]:l.fonts&&l.fonts.ready?[4,l.fonts.ready]:[3,2];case 1:r.sent(),r.label=2;case 2:return/(AppleWebKit)/g.test(navigator.userAgent)?[4,lc(l)]:[3,4];case 3:r.sent(),r.label=4;case 4:return typeof e==`function`?[2,Promise.resolve().then(function(){return e(l,n)}).then(function(){return a})]:[2,a]}})})});return l.open(),l.write(pc(document.doctype)+`<html></html>`),mc(this.referenceElement.ownerDocument,o,s),l.replaceChild(l.adoptNode(this.documentElement),l.documentElement),l.close(),u},e.prototype.createElementClone=function(e){if(Fa(e,2))debugger;if(ks(e))return this.createCanvasClone(e);if(As(e))return this.createVideoClone(e);if(Ns(e))return this.createStyleClone(e);var t=e.cloneNode(!1);return js(t)&&(js(e)&&e.currentSrc&&e.currentSrc!==e.src&&(t.src=e.currentSrc,t.srcset=``),t.loading===`lazy`&&(t.loading=`eager`)),Rs(t)?this.createCustomElementClone(t):t},e.prototype.createCustomElementClone=function(e){var t=document.createElement(`html2canvascustomelement`);return fc(e.style,t),t},e.prototype.createStyleClone=function(e){try{var t=e.sheet;if(t&&t.cssRules){var n=[].slice.call(t.cssRules,0).reduce(function(e,t){return t&&typeof t.cssText==`string`?e+t.cssText:e},``),r=e.cloneNode(!1);return r.textContent=n,r}}catch(e){if(this.context.logger.error(`Unable to access cssRules property`,e),e.name!==`SecurityError`)throw e}return e.cloneNode(!1)},e.prototype.createCanvasClone=function(e){if(this.options.inlineImages&&e.ownerDocument){var t=e.ownerDocument.createElement(`img`);try{return t.src=e.toDataURL(),t}catch{this.context.logger.info(`Unable to inline canvas contents, canvas is tainted`,e)}}var n=e.cloneNode(!1);try{n.width=e.width,n.height=e.height;var r=e.getContext(`2d`),i=n.getContext(`2d`);if(i)if(!this.options.allowTaint&&r)i.putImageData(r.getImageData(0,0,e.width,e.height),0,0);else{var a=e.getContext(`webgl2`)??e.getContext(`webgl`);a&&a.getContextAttributes()?.preserveDrawingBuffer===!1&&this.context.logger.warn(`Unable to clone WebGL context as it has preserveDrawingBuffer=false`,e),i.drawImage(e,0,0)}return n}catch{this.context.logger.info(`Unable to clone canvas as it is tainted`,e)}return n},e.prototype.createVideoClone=function(e){var t=e.ownerDocument.createElement(`canvas`);t.width=e.offsetWidth,t.height=e.offsetHeight;var n=t.getContext(`2d`);try{return n&&(n.drawImage(e,0,0,t.width,t.height),this.options.allowTaint||n.getImageData(0,0,t.width,t.height)),t}catch{this.context.logger.info(`Unable to clone video as it is tainted`,e)}var r=e.ownerDocument.createElement(`canvas`);return r.width=e.offsetWidth,r.height=e.offsetHeight,r},e.prototype.appendChildNode=function(e,t,n){(!bs(t)||!Ps(t)&&!t.hasAttribute(ic)&&(typeof this.options.ignoreElements!=`function`||!this.options.ignoreElements(t)))&&(!this.options.copyStyles||!bs(t)||!Ns(t))&&e.appendChild(this.cloneNode(t,n))},e.prototype.cloneChildNodes=function(e,t,n){for(var r=this,i=e.shadowRoot?e.shadowRoot.firstChild:e.firstChild;i;i=i.nextSibling)if(bs(i)&&Ls(i)&&typeof i.assignedNodes==`function`){var a=i.assignedNodes();a.length&&a.forEach(function(e){return r.appendChildNode(t,e,n)})}else this.appendChildNode(t,i,n)},e.prototype.cloneNode=function(e,t){if(ys(e))return document.createTextNode(e.data);if(!e.ownerDocument)return e.cloneNode(!1);var n=e.ownerDocument.defaultView;if(n&&bs(e)&&(xs(e)||Ss(e))){var r=this.createElementClone(e);r.style.transitionProperty=`none`;var i=n.getComputedStyle(e),a=n.getComputedStyle(e,`:before`),o=n.getComputedStyle(e,`:after`);this.referenceElement===e&&xs(r)&&(this.clonedReferenceElement=r),Os(r)&&xc(r);var s=this.counters.parse(new Ma(this.context,i)),c=this.resolvePseudoContent(e,r,a,oc.BEFORE);Rs(e)&&(t=!0),As(e)||this.cloneChildNodes(e,r,t),c&&r.insertBefore(c,r.firstChild);var l=this.resolvePseudoContent(e,r,o,oc.AFTER);return l&&r.appendChild(l),this.counters.pop(s),(i&&(this.options.copyStyles||Ss(e))&&!Ms(e)||t)&&fc(i,r),(e.scrollTop!==0||e.scrollLeft!==0)&&this.scrolledElements.push([r,e.scrollLeft,e.scrollTop]),(Fs(e)||Is(e))&&(Fs(r)||Is(r))&&(r.value=e.value),r}return e.cloneNode(!1)},e.prototype.resolvePseudoContent=function(e,t,n,r){var i=this;if(n){var a=n.content,o=t.ownerDocument;if(!(!o||!a||a===`none`||a===`-moz-alt-content`||n.display===`none`)){this.counters.parse(new Ma(this.context,n));var s=new ja(this.context,n),c=o.createElement(`html2canvaspseudoelement`);fc(n,c),s.content.forEach(function(t){if(t.type===0)c.appendChild(o.createTextNode(t.value));else if(t.type===22){var n=o.createElement(`img`);n.src=t.value,n.style.opacity=`1`,c.appendChild(n)}else if(t.type===18){if(t.name===`attr`){var r=t.values.filter(Xn);r.length&&c.appendChild(o.createTextNode(e.getAttribute(r[0].value)||``))}else if(t.name===`counter`){var a=t.values.filter(er),l=a[0],u=a[1];if(l&&Xn(l)){var d=i.counters.getCounterValue(l.value),f=u&&Xn(u)?zi.parse(i.context,u.value):3;c.appendChild(o.createTextNode(rc(d,f,!1)))}}else if(t.name===`counters`){var p=t.values.filter(er),l=p[0],m=p[1],u=p[2];if(l&&Xn(l)){var h=i.counters.getCounterValues(l.value),g=u&&Xn(u)?zi.parse(i.context,u.value):3,_=m&&m.type===0?m.value:``,v=h.map(function(e){return rc(e,g,!1)}).join(_);c.appendChild(o.createTextNode(v))}}}else if(t.type===20)switch(t.value){case`open-quote`:c.appendChild(o.createTextNode(Ta(s.quotes,i.quoteDepth++,!0)));break;case`close-quote`:c.appendChild(o.createTextNode(Ta(s.quotes,--i.quoteDepth,!1)));break;default:c.appendChild(o.createTextNode(t.value))}}),c.className=vc+` `+yc;var l=r===oc.BEFORE?` `+vc:` `+yc;return Ss(t)?t.className.baseValue+=l:t.className+=l,c}}},e.destroy=function(e){return e.parentNode?(e.parentNode.removeChild(e),!0):!1},e}(),oc;(function(e){e[e.BEFORE=0]=`BEFORE`,e[e.AFTER=1]=`AFTER`})(oc||={});var sc=function(e,t){var n=e.createElement(`iframe`);return n.className=`html2canvas-container`,n.style.visibility=`hidden`,n.style.position=`fixed`,n.style.left=`-10000px`,n.style.top=`0px`,n.style.border=`0`,n.width=t.width.toString(),n.height=t.height.toString(),n.scrolling=`no`,n.setAttribute(ic,`true`),e.body.appendChild(n),n},cc=function(e){return new Promise(function(t){if(e.complete){t();return}if(!e.src){t();return}e.onload=t,e.onerror=t})},lc=function(e){return Promise.all([].slice.call(e.images,0).map(cc))},uc=function(e){return new Promise(function(t,n){var r=e.contentWindow;if(!r)return n(`No window assigned for iframe`);var i=r.document;r.onload=e.onload=function(){r.onload=e.onload=null;var n=setInterval(function(){i.body.childNodes.length>0&&i.readyState===`complete`&&(clearInterval(n),t(e))},50)}})},dc=[`all`,`d`,`content`],fc=function(e,t){for(var n=e.length-1;n>=0;n--){var r=e.item(n);dc.indexOf(r)===-1&&t.style.setProperty(r,e.getPropertyValue(r))}return t},pc=function(e){var t=``;return e&&(t+=`<!DOCTYPE `,e.name&&(t+=e.name),e.internalSubset&&(t+=e.internalSubset),e.publicId&&(t+=`"`+e.publicId+`"`),e.systemId&&(t+=`"`+e.systemId+`"`),t+=`>`),t},mc=function(e,t,n){e&&e.defaultView&&(t!==e.defaultView.pageXOffset||n!==e.defaultView.pageYOffset)&&e.defaultView.scrollTo(t,n)},hc=function(e){var t=e[0],n=e[1],r=e[2];t.scrollLeft=n,t.scrollTop=r},gc=`:before`,_c=`:after`,vc=`___html2canvas___pseudoelement_before`,yc=`___html2canvas___pseudoelement_after`,bc=`{
6
+ content: "" !important;
7
+ display: none !important;
8
+ }`,xc=function(e){Sc(e,`.`+vc+gc+bc+`
9
+ .`+yc+_c+bc)},Sc=function(e,t){var n=e.ownerDocument;if(n){var r=n.createElement(`style`);r.textContent=t,e.appendChild(r)}},Cc=function(){function e(){}return e.getOrigin=function(t){var n=e._link;return n?(n.href=t,n.href=n.href,n.protocol+n.hostname+n.port):`about:blank`},e.isSameOrigin=function(t){return e.getOrigin(t)===e._origin},e.setContext=function(t){e._link=t.document.createElement(`a`),e._origin=e.getOrigin(t.location.href)},e._origin=`about:blank`,e}(),wc=function(){function e(e,t){this.context=e,this._options=t,this._cache={}}return e.prototype.addImage=function(e){var t=Promise.resolve();return this.has(e)||(jc(e)||Oc(e))&&(this._cache[e]=this.loadImage(e)).catch(function(){}),t},e.prototype.match=function(e){return this._cache[e]},e.prototype.loadImage=function(e){return r(this,void 0,void 0,function(){var t,n,r,a,o=this;return i(this,function(i){switch(i.label){case 0:return t=Cc.isSameOrigin(e),n=!kc(e)&&this._options.useCORS===!0&&Lo.SUPPORT_CORS_IMAGES&&!t,r=!kc(e)&&!t&&!jc(e)&&typeof this._options.proxy==`string`&&Lo.SUPPORT_CORS_XHR&&!n,!t&&this._options.allowTaint===!1&&!kc(e)&&!jc(e)&&!r&&!n?[2]:(a=e,r?[4,this.proxy(a)]:[3,2]);case 1:a=i.sent(),i.label=2;case 2:return this.context.logger.debug(`Added image `+e.substring(0,256)),[4,new Promise(function(e,t){var r=new Image;r.onload=function(){return e(r)},r.onerror=t,(Ac(a)||n)&&(r.crossOrigin=`anonymous`),r.src=a,r.complete===!0&&setTimeout(function(){return e(r)},500),o._options.imageTimeout>0&&setTimeout(function(){return t(`Timed out (`+o._options.imageTimeout+`ms) loading image`)},o._options.imageTimeout)})];case 3:return[2,i.sent()]}})})},e.prototype.has=function(e){return this._cache[e]!==void 0},e.prototype.keys=function(){return Promise.resolve(Object.keys(this._cache))},e.prototype.proxy=function(e){var t=this,n=this._options.proxy;if(!n)throw Error(`No proxy defined`);var r=e.substring(0,256);return new Promise(function(i,a){var o=Lo.SUPPORT_RESPONSE_TYPE?`blob`:`text`,s=new XMLHttpRequest;s.onload=function(){if(s.status===200)if(o===`text`)i(s.response);else{var e=new FileReader;e.addEventListener(`load`,function(){return i(e.result)},!1),e.addEventListener(`error`,function(e){return a(e)},!1),e.readAsDataURL(s.response)}else a(`Failed to proxy resource `+r+` with status code `+s.status)},s.onerror=a;var c=n.indexOf(`?`)>-1?`&`:`?`;if(s.open(`GET`,``+n+c+`url=`+encodeURIComponent(e)+`&responseType=`+o),o!==`text`&&s instanceof XMLHttpRequest&&(s.responseType=o),t._options.imageTimeout){var l=t._options.imageTimeout;s.timeout=l,s.ontimeout=function(){return a(`Timed out (`+l+`ms) proxying `+r)}}s.send()})},e}(),Tc=/^data:image\/svg\+xml/i,Ec=/^data:image\/.*;base64,/i,Dc=/^data:image\/.*/i,Oc=function(e){return Lo.SUPPORT_SVG_DRAWING||!Mc(e)},kc=function(e){return Dc.test(e)},Ac=function(e){return Ec.test(e)},jc=function(e){return e.substr(0,4)===`blob`},Mc=function(e){return e.substr(-3).toLowerCase()===`svg`||Tc.test(e)},J=function(){function e(e,t){this.type=0,this.x=e,this.y=t}return e.prototype.add=function(t,n){return new e(this.x+t,this.y+n)},e}(),Nc=function(e,t,n){return new J(e.x+(t.x-e.x)*n,e.y+(t.y-e.y)*n)},Pc=function(){function e(e,t,n,r){this.type=1,this.start=e,this.startControl=t,this.endControl=n,this.end=r}return e.prototype.subdivide=function(t,n){var r=Nc(this.start,this.startControl,t),i=Nc(this.startControl,this.endControl,t),a=Nc(this.endControl,this.end,t),o=Nc(r,i,t),s=Nc(i,a,t),c=Nc(o,s,t);return n?new e(this.start,r,o,c):new e(c,s,a,this.end)},e.prototype.add=function(t,n){return new e(this.start.add(t,n),this.startControl.add(t,n),this.endControl.add(t,n),this.end.add(t,n))},e.prototype.reverse=function(){return new e(this.end,this.endControl,this.startControl,this.start)},e}(),Fc=function(e){return e.type===1},Ic=function(){function e(e){var t=e.styles,n=e.bounds,r=lr(t.borderTopLeftRadius,n.width,n.height),i=r[0],a=r[1],o=lr(t.borderTopRightRadius,n.width,n.height),s=o[0],c=o[1],l=lr(t.borderBottomRightRadius,n.width,n.height),u=l[0],d=l[1],f=lr(t.borderBottomLeftRadius,n.width,n.height),p=f[0],m=f[1],h=[];h.push((i+s)/n.width),h.push((p+u)/n.width),h.push((a+m)/n.height),h.push((c+d)/n.height);var g=Math.max.apply(Math,h);g>1&&(i/=g,a/=g,s/=g,c/=g,u/=g,d/=g,p/=g,m/=g);var _=n.width-s,v=n.height-d,y=n.width-u,b=n.height-m,x=t.borderTopWidth,S=t.borderRightWidth,C=t.borderBottomWidth,w=t.borderLeftWidth,T=ur(t.paddingTop,e.bounds.width),E=ur(t.paddingRight,e.bounds.width),D=ur(t.paddingBottom,e.bounds.width),O=ur(t.paddingLeft,e.bounds.width);this.topLeftBorderDoubleOuterBox=i>0||a>0?Rc(n.left+w/3,n.top+x/3,i-w/3,a-x/3,Lc.TOP_LEFT):new J(n.left+w/3,n.top+x/3),this.topRightBorderDoubleOuterBox=i>0||a>0?Rc(n.left+_,n.top+x/3,s-S/3,c-x/3,Lc.TOP_RIGHT):new J(n.left+n.width-S/3,n.top+x/3),this.bottomRightBorderDoubleOuterBox=u>0||d>0?Rc(n.left+y,n.top+v,u-S/3,d-C/3,Lc.BOTTOM_RIGHT):new J(n.left+n.width-S/3,n.top+n.height-C/3),this.bottomLeftBorderDoubleOuterBox=p>0||m>0?Rc(n.left+w/3,n.top+b,p-w/3,m-C/3,Lc.BOTTOM_LEFT):new J(n.left+w/3,n.top+n.height-C/3),this.topLeftBorderDoubleInnerBox=i>0||a>0?Rc(n.left+w*2/3,n.top+x*2/3,i-w*2/3,a-x*2/3,Lc.TOP_LEFT):new J(n.left+w*2/3,n.top+x*2/3),this.topRightBorderDoubleInnerBox=i>0||a>0?Rc(n.left+_,n.top+x*2/3,s-S*2/3,c-x*2/3,Lc.TOP_RIGHT):new J(n.left+n.width-S*2/3,n.top+x*2/3),this.bottomRightBorderDoubleInnerBox=u>0||d>0?Rc(n.left+y,n.top+v,u-S*2/3,d-C*2/3,Lc.BOTTOM_RIGHT):new J(n.left+n.width-S*2/3,n.top+n.height-C*2/3),this.bottomLeftBorderDoubleInnerBox=p>0||m>0?Rc(n.left+w*2/3,n.top+b,p-w*2/3,m-C*2/3,Lc.BOTTOM_LEFT):new J(n.left+w*2/3,n.top+n.height-C*2/3),this.topLeftBorderStroke=i>0||a>0?Rc(n.left+w/2,n.top+x/2,i-w/2,a-x/2,Lc.TOP_LEFT):new J(n.left+w/2,n.top+x/2),this.topRightBorderStroke=i>0||a>0?Rc(n.left+_,n.top+x/2,s-S/2,c-x/2,Lc.TOP_RIGHT):new J(n.left+n.width-S/2,n.top+x/2),this.bottomRightBorderStroke=u>0||d>0?Rc(n.left+y,n.top+v,u-S/2,d-C/2,Lc.BOTTOM_RIGHT):new J(n.left+n.width-S/2,n.top+n.height-C/2),this.bottomLeftBorderStroke=p>0||m>0?Rc(n.left+w/2,n.top+b,p-w/2,m-C/2,Lc.BOTTOM_LEFT):new J(n.left+w/2,n.top+n.height-C/2),this.topLeftBorderBox=i>0||a>0?Rc(n.left,n.top,i,a,Lc.TOP_LEFT):new J(n.left,n.top),this.topRightBorderBox=s>0||c>0?Rc(n.left+_,n.top,s,c,Lc.TOP_RIGHT):new J(n.left+n.width,n.top),this.bottomRightBorderBox=u>0||d>0?Rc(n.left+y,n.top+v,u,d,Lc.BOTTOM_RIGHT):new J(n.left+n.width,n.top+n.height),this.bottomLeftBorderBox=p>0||m>0?Rc(n.left,n.top+b,p,m,Lc.BOTTOM_LEFT):new J(n.left,n.top+n.height),this.topLeftPaddingBox=i>0||a>0?Rc(n.left+w,n.top+x,Math.max(0,i-w),Math.max(0,a-x),Lc.TOP_LEFT):new J(n.left+w,n.top+x),this.topRightPaddingBox=s>0||c>0?Rc(n.left+Math.min(_,n.width-S),n.top+x,_>n.width+S?0:Math.max(0,s-S),Math.max(0,c-x),Lc.TOP_RIGHT):new J(n.left+n.width-S,n.top+x),this.bottomRightPaddingBox=u>0||d>0?Rc(n.left+Math.min(y,n.width-w),n.top+Math.min(v,n.height-C),Math.max(0,u-S),Math.max(0,d-C),Lc.BOTTOM_RIGHT):new J(n.left+n.width-S,n.top+n.height-C),this.bottomLeftPaddingBox=p>0||m>0?Rc(n.left+w,n.top+Math.min(b,n.height-C),Math.max(0,p-w),Math.max(0,m-C),Lc.BOTTOM_LEFT):new J(n.left+w,n.top+n.height-C),this.topLeftContentBox=i>0||a>0?Rc(n.left+w+O,n.top+x+T,Math.max(0,i-(w+O)),Math.max(0,a-(x+T)),Lc.TOP_LEFT):new J(n.left+w+O,n.top+x+T),this.topRightContentBox=s>0||c>0?Rc(n.left+Math.min(_,n.width+w+O),n.top+x+T,_>n.width+w+O?0:s-w+O,c-(x+T),Lc.TOP_RIGHT):new J(n.left+n.width-(S+E),n.top+x+T),this.bottomRightContentBox=u>0||d>0?Rc(n.left+Math.min(y,n.width-(w+O)),n.top+Math.min(v,n.height+x+T),Math.max(0,u-(S+E)),d-(C+D),Lc.BOTTOM_RIGHT):new J(n.left+n.width-(S+E),n.top+n.height-(C+D)),this.bottomLeftContentBox=p>0||m>0?Rc(n.left+w+O,n.top+b,Math.max(0,p-(w+O)),m-(C+D),Lc.BOTTOM_LEFT):new J(n.left+w+O,n.top+n.height-(C+D))}return e}(),Lc;(function(e){e[e.TOP_LEFT=0]=`TOP_LEFT`,e[e.TOP_RIGHT=1]=`TOP_RIGHT`,e[e.BOTTOM_RIGHT=2]=`BOTTOM_RIGHT`,e[e.BOTTOM_LEFT=3]=`BOTTOM_LEFT`})(Lc||={});var Rc=function(e,t,n,r,i){var a=4*((Math.sqrt(2)-1)/3),o=n*a,s=r*a,c=e+n,l=t+r;switch(i){case Lc.TOP_LEFT:return new Pc(new J(e,l),new J(e,l-s),new J(c-o,t),new J(c,t));case Lc.TOP_RIGHT:return new Pc(new J(e,t),new J(e+o,t),new J(c,l-s),new J(c,l));case Lc.BOTTOM_RIGHT:return new Pc(new J(c,t),new J(c,t+s),new J(e+o,l),new J(e,l));case Lc.BOTTOM_LEFT:default:return new Pc(new J(c,l),new J(c-o,l),new J(e,t+s),new J(e,t))}},zc=function(e){return[e.topLeftBorderBox,e.topRightBorderBox,e.bottomRightBorderBox,e.bottomLeftBorderBox]},Bc=function(e){return[e.topLeftContentBox,e.topRightContentBox,e.bottomRightContentBox,e.bottomLeftContentBox]},Vc=function(e){return[e.topLeftPaddingBox,e.topRightPaddingBox,e.bottomRightPaddingBox,e.bottomLeftPaddingBox]},Hc=function(){function e(e,t,n){this.offsetX=e,this.offsetY=t,this.matrix=n,this.type=0,this.target=6}return e}(),Uc=function(){function e(e,t){this.path=e,this.target=t,this.type=1}return e}(),Wc=function(){function e(e){this.opacity=e,this.type=2,this.target=6}return e}(),Gc=function(e){return e.type===0},Kc=function(e){return e.type===1},qc=function(e){return e.type===2},Jc=function(e,t){return e.length===t.length?e.some(function(e,n){return e===t[n]}):!1},Yc=function(e,t,n,r,i){return e.map(function(e,a){switch(a){case 0:return e.add(t,n);case 1:return e.add(t+r,n);case 2:return e.add(t+r,n+i);case 3:return e.add(t,n+i)}return e})},Xc=function(){function e(e){this.element=e,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}return e}(),Zc=function(){function e(e,t){if(this.container=e,this.parent=t,this.effects=[],this.curves=new Ic(this.container),this.container.styles.opacity<1&&this.effects.push(new Wc(this.container.styles.opacity)),this.container.styles.transform!==null){var n=this.container.bounds.left+this.container.styles.transformOrigin[0].number,r=this.container.bounds.top+this.container.styles.transformOrigin[1].number,i=this.container.styles.transform;this.effects.push(new Hc(n,r,i))}if(this.container.styles.overflowX!==0){var a=zc(this.curves),o=Vc(this.curves);Jc(a,o)?this.effects.push(new Uc(a,6)):(this.effects.push(new Uc(a,2)),this.effects.push(new Uc(o,4)))}}return e.prototype.getEffects=function(e){for(var t=[2,3].indexOf(this.container.styles.position)===-1,n=this.parent,r=this.effects.slice(0);n;){var i=n.effects.filter(function(e){return!Kc(e)});if(t||n.container.styles.position!==0||!n.parent){if(r.unshift.apply(r,i),t=[2,3].indexOf(n.container.styles.position)===-1,n.container.styles.overflowX!==0){var a=zc(n.curves),o=Vc(n.curves);Jc(a,o)||r.unshift(new Uc(o,6))}}else r.unshift.apply(r,i);n=n.parent}return r.filter(function(t){return ba(t.target,e)})},e}(),Qc=function(e,t,n,r){e.container.elements.forEach(function(i){var a=ba(i.flags,4),o=ba(i.flags,2),s=new Zc(i,e);ba(i.styles.display,2048)&&r.push(s);var c=ba(i.flags,8)?[]:r;if(a||o){var l=a||i.styles.isPositioned()?n:t,u=new Xc(s);if(i.styles.isPositioned()||i.styles.opacity<1||i.styles.isTransformed()){var d=i.styles.zIndex.order;if(d<0){var f=0;l.negativeZIndex.some(function(e,t){return d>e.element.container.styles.zIndex.order?(f=t,!1):f>0}),l.negativeZIndex.splice(f,0,u)}else if(d>0){var p=0;l.positiveZIndex.some(function(e,t){return d>=e.element.container.styles.zIndex.order?(p=t+1,!1):p>0}),l.positiveZIndex.splice(p,0,u)}else l.zeroOrAutoZIndexOrTransformedOrOpacity.push(u)}else i.styles.isFloating()?l.nonPositionedFloats.push(u):l.nonPositionedInlineLevel.push(u);Qc(s,u,a?u:n,c)}else i.styles.isInlineLevel()?t.inlineLevel.push(s):t.nonInlineLevel.push(s),Qc(s,t,n,c);ba(i.flags,8)&&$c(i,c)})},$c=function(e,t){for(var n=e instanceof ts?e.start:1,r=e instanceof ts?e.reversed:!1,i=0;i<t.length;i++){var a=t[i];a.container instanceof es&&typeof a.container.value==`number`&&a.container.value!==0&&(n=a.container.value),a.listValue=rc(n,a.container.styles.listStyleType,!0),n+=r?-1:1}},el=function(e){var t=new Zc(e,null),n=new Xc(t),r=[];return Qc(t,n,n,r),$c(t.container,r),n},tl=function(e,t){switch(t){case 0:return ol(e.topLeftBorderBox,e.topLeftPaddingBox,e.topRightBorderBox,e.topRightPaddingBox);case 1:return ol(e.topRightBorderBox,e.topRightPaddingBox,e.bottomRightBorderBox,e.bottomRightPaddingBox);case 2:return ol(e.bottomRightBorderBox,e.bottomRightPaddingBox,e.bottomLeftBorderBox,e.bottomLeftPaddingBox);default:return ol(e.bottomLeftBorderBox,e.bottomLeftPaddingBox,e.topLeftBorderBox,e.topLeftPaddingBox)}},nl=function(e,t){switch(t){case 0:return ol(e.topLeftBorderBox,e.topLeftBorderDoubleOuterBox,e.topRightBorderBox,e.topRightBorderDoubleOuterBox);case 1:return ol(e.topRightBorderBox,e.topRightBorderDoubleOuterBox,e.bottomRightBorderBox,e.bottomRightBorderDoubleOuterBox);case 2:return ol(e.bottomRightBorderBox,e.bottomRightBorderDoubleOuterBox,e.bottomLeftBorderBox,e.bottomLeftBorderDoubleOuterBox);default:return ol(e.bottomLeftBorderBox,e.bottomLeftBorderDoubleOuterBox,e.topLeftBorderBox,e.topLeftBorderDoubleOuterBox)}},rl=function(e,t){switch(t){case 0:return ol(e.topLeftBorderDoubleInnerBox,e.topLeftPaddingBox,e.topRightBorderDoubleInnerBox,e.topRightPaddingBox);case 1:return ol(e.topRightBorderDoubleInnerBox,e.topRightPaddingBox,e.bottomRightBorderDoubleInnerBox,e.bottomRightPaddingBox);case 2:return ol(e.bottomRightBorderDoubleInnerBox,e.bottomRightPaddingBox,e.bottomLeftBorderDoubleInnerBox,e.bottomLeftPaddingBox);default:return ol(e.bottomLeftBorderDoubleInnerBox,e.bottomLeftPaddingBox,e.topLeftBorderDoubleInnerBox,e.topLeftPaddingBox)}},il=function(e,t){switch(t){case 0:return al(e.topLeftBorderStroke,e.topRightBorderStroke);case 1:return al(e.topRightBorderStroke,e.bottomRightBorderStroke);case 2:return al(e.bottomRightBorderStroke,e.bottomLeftBorderStroke);default:return al(e.bottomLeftBorderStroke,e.topLeftBorderStroke)}},al=function(e,t){var n=[];return Fc(e)?n.push(e.subdivide(.5,!1)):n.push(e),Fc(t)?n.push(t.subdivide(.5,!0)):n.push(t),n},ol=function(e,t,n,r){var i=[];return Fc(e)?i.push(e.subdivide(.5,!1)):i.push(e),Fc(n)?i.push(n.subdivide(.5,!0)):i.push(n),Fc(r)?i.push(r.subdivide(.5,!0).reverse()):i.push(r),Fc(t)?i.push(t.subdivide(.5,!1).reverse()):i.push(t),i},sl=function(e){var t=e.bounds,n=e.styles;return t.add(n.borderLeftWidth,n.borderTopWidth,-(n.borderRightWidth+n.borderLeftWidth),-(n.borderTopWidth+n.borderBottomWidth))},cl=function(e){var t=e.styles,n=e.bounds,r=ur(t.paddingLeft,n.width),i=ur(t.paddingRight,n.width),a=ur(t.paddingTop,n.width),o=ur(t.paddingBottom,n.width);return n.add(r+t.borderLeftWidth,a+t.borderTopWidth,-(t.borderRightWidth+t.borderLeftWidth+r+i),-(t.borderTopWidth+t.borderBottomWidth+a+o))},ll=function(e,t){return e===0?t.bounds:e===2?cl(t):sl(t)},ul=function(e,t){return e===0?t.bounds:e===2?cl(t):sl(t)},dl=function(e,t,n){var r=ll(hl(e.styles.backgroundOrigin,t),e),i=ul(hl(e.styles.backgroundClip,t),e),a=ml(hl(e.styles.backgroundSize,t),n,r),o=a[0],s=a[1],c=lr(hl(e.styles.backgroundPosition,t),r.width-o,r.height-s);return[gl(hl(e.styles.backgroundRepeat,t),c,a,r,i),Math.round(r.left+c[0]),Math.round(r.top+c[1]),o,s]},fl=function(e){return Xn(e)&&e.value===ii.AUTO},pl=function(e){return typeof e==`number`},ml=function(e,t,n){var r=t[0],i=t[1],a=t[2],o=e[0],s=e[1];if(!o)return[0,0];if(ir(o)&&s&&ir(s))return[ur(o,n.width),ur(s,n.height)];var c=pl(a);if(Xn(o)&&(o.value===ii.CONTAIN||o.value===ii.COVER))return pl(a)?n.width/n.height<a==(o.value===ii.COVER)?[n.height*a,n.height]:[n.width,n.width/a]:[n.width,n.height];var l=pl(r),u=pl(i),d=l||u;if(fl(o)&&(!s||fl(s)))return l&&u?[r,i]:!c&&!d?[n.width,n.height]:d&&c?[l?r:i*a,u?i:r/a]:[l?r:n.width,u?i:n.height];if(c){var f=0,p=0;return ir(o)?f=ur(o,n.width):ir(s)&&(p=ur(s,n.height)),fl(o)?f=p*a:(!s||fl(s))&&(p=f/a),[f,p]}var m=null,h=null;if(ir(o)?m=ur(o,n.width):s&&ir(s)&&(h=ur(s,n.height)),m!==null&&(!s||fl(s))&&(h=l&&u?m/r*i:n.height),h!==null&&fl(o)&&(m=l&&u?h/i*r:n.width),m!==null&&h!==null)return[m,h];throw Error(`Unable to calculate background-size for element`)},hl=function(e,t){var n=e[t];return n===void 0?e[0]:n},gl=function(e,t,n,r,i){var a=t[0],o=t[1],s=n[0],c=n[1];switch(e){case 2:return[new J(Math.round(r.left),Math.round(r.top+o)),new J(Math.round(r.left+r.width),Math.round(r.top+o)),new J(Math.round(r.left+r.width),Math.round(c+r.top+o)),new J(Math.round(r.left),Math.round(c+r.top+o))];case 3:return[new J(Math.round(r.left+a),Math.round(r.top)),new J(Math.round(r.left+a+s),Math.round(r.top)),new J(Math.round(r.left+a+s),Math.round(r.height+r.top)),new J(Math.round(r.left+a),Math.round(r.height+r.top))];case 1:return[new J(Math.round(r.left+a),Math.round(r.top+o)),new J(Math.round(r.left+a+s),Math.round(r.top+o)),new J(Math.round(r.left+a+s),Math.round(r.top+o+c)),new J(Math.round(r.left+a),Math.round(r.top+o+c))];default:return[new J(Math.round(i.left),Math.round(i.top)),new J(Math.round(i.left+i.width),Math.round(i.top)),new J(Math.round(i.left+i.width),Math.round(i.height+i.top)),new J(Math.round(i.left),Math.round(i.height+i.top))]}},_l=`data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7`,vl=`Hidden Text`,yl=function(){function e(e){this._data={},this._document=e}return e.prototype.parseMetrics=function(e,t){var n=this._document.createElement(`div`),r=this._document.createElement(`img`),i=this._document.createElement(`span`),a=this._document.body;n.style.visibility=`hidden`,n.style.fontFamily=e,n.style.fontSize=t,n.style.margin=`0`,n.style.padding=`0`,n.style.whiteSpace=`nowrap`,a.appendChild(n),r.src=_l,r.width=1,r.height=1,r.style.margin=`0`,r.style.padding=`0`,r.style.verticalAlign=`baseline`,i.style.fontFamily=e,i.style.fontSize=t,i.style.margin=`0`,i.style.padding=`0`,i.appendChild(this._document.createTextNode(vl)),n.appendChild(i),n.appendChild(r);var o=r.offsetTop-i.offsetTop+2;n.removeChild(i),n.appendChild(this._document.createTextNode(vl)),n.style.lineHeight=`normal`,r.style.verticalAlign=`super`;var s=r.offsetTop-n.offsetTop+2;return a.removeChild(n),{baseline:o,middle:s}},e.prototype.getMetrics=function(e,t){var n=e+` `+t;return this._data[n]===void 0&&(this._data[n]=this.parseMetrics(e,t)),this._data[n]},e}(),bl=function(){function e(e,t){this.context=e,this.options=t}return e}(),xl=1e4,Sl=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r._activeEffects=[],r.canvas=n.canvas?n.canvas:document.createElement(`canvas`),r.ctx=r.canvas.getContext(`2d`),n.canvas||(r.canvas.width=Math.floor(n.width*n.scale),r.canvas.height=Math.floor(n.height*n.scale),r.canvas.style.width=n.width+`px`,r.canvas.style.height=n.height+`px`),r.fontMetrics=new yl(document),r.ctx.scale(r.options.scale,r.options.scale),r.ctx.translate(-n.x,-n.y),r.ctx.textBaseline=`bottom`,r._activeEffects=[],r.context.logger.debug(`Canvas renderer initialized (`+n.width+`x`+n.height+`) with scale `+n.scale),r}return n.prototype.applyEffects=function(e){for(var t=this;this._activeEffects.length;)this.popEffect();e.forEach(function(e){return t.applyEffect(e)})},n.prototype.applyEffect=function(e){this.ctx.save(),qc(e)&&(this.ctx.globalAlpha=e.opacity),Gc(e)&&(this.ctx.translate(e.offsetX,e.offsetY),this.ctx.transform(e.matrix[0],e.matrix[1],e.matrix[2],e.matrix[3],e.matrix[4],e.matrix[5]),this.ctx.translate(-e.offsetX,-e.offsetY)),Kc(e)&&(this.path(e.path),this.ctx.clip()),this._activeEffects.push(e)},n.prototype.popEffect=function(){this._activeEffects.pop(),this.ctx.restore()},n.prototype.renderStack=function(e){return r(this,void 0,void 0,function(){var t;return i(this,function(n){switch(n.label){case 0:return t=e.element.container.styles,t.isVisible()?[4,this.renderStackContent(e)]:[3,2];case 1:n.sent(),n.label=2;case 2:return[2]}})})},n.prototype.renderNode=function(e){return r(this,void 0,void 0,function(){return i(this,function(t){switch(t.label){case 0:if(ba(e.container.flags,16))debugger;return e.container.styles.isVisible()?[4,this.renderNodeBackgroundAndBorders(e)]:[3,3];case 1:return t.sent(),[4,this.renderNodeContent(e)];case 2:t.sent(),t.label=3;case 3:return[2]}})})},n.prototype.renderTextWithLetterSpacing=function(e,t,n){var r=this;t===0?this.ctx.fillText(e.text,e.bounds.left,e.bounds.top+n):Ho(e.text).reduce(function(t,i){return r.ctx.fillText(i,t,e.bounds.top+n),t+r.ctx.measureText(i).width},e.bounds.left)},n.prototype.createFontStyle=function(e){var t=e.fontVariant.filter(function(e){return e===`normal`||e===`small-caps`}).join(``),n=Dl(e.fontFamily).join(`, `),r=Jn(e.fontSize)?``+e.fontSize.number+e.fontSize.unit:e.fontSize.number+`px`;return[[e.fontStyle,t,e.fontWeight,r,n].join(` `),n,r]},n.prototype.renderTextNode=function(e,t){return r(this,void 0,void 0,function(){var n,r,a,o,s,c,l,u,d=this;return i(this,function(i){return n=this.createFontStyle(t),r=n[0],a=n[1],o=n[2],this.ctx.font=r,this.ctx.direction=t.direction===1?`rtl`:`ltr`,this.ctx.textAlign=`left`,this.ctx.textBaseline=`alphabetic`,s=this.fontMetrics.getMetrics(a,o),c=s.baseline,l=s.middle,u=t.paintOrder,e.textBounds.forEach(function(e){u.forEach(function(n){switch(n){case 0:d.ctx.fillStyle=B(t.color),d.renderTextWithLetterSpacing(e,t.letterSpacing,c);var r=t.textShadow;r.length&&e.text.trim().length&&(r.slice(0).reverse().forEach(function(n){d.ctx.shadowColor=B(n.color),d.ctx.shadowOffsetX=n.offsetX.number*d.options.scale,d.ctx.shadowOffsetY=n.offsetY.number*d.options.scale,d.ctx.shadowBlur=n.blur.number,d.renderTextWithLetterSpacing(e,t.letterSpacing,c)}),d.ctx.shadowColor=``,d.ctx.shadowOffsetX=0,d.ctx.shadowOffsetY=0,d.ctx.shadowBlur=0),t.textDecorationLine.length&&(d.ctx.fillStyle=B(t.textDecorationColor||t.color),t.textDecorationLine.forEach(function(t){switch(t){case 1:d.ctx.fillRect(e.bounds.left,Math.round(e.bounds.top+c),e.bounds.width,1);break;case 2:d.ctx.fillRect(e.bounds.left,Math.round(e.bounds.top),e.bounds.width,1);break;case 3:d.ctx.fillRect(e.bounds.left,Math.ceil(e.bounds.top+l),e.bounds.width,1);break}}));break;case 1:t.webkitTextStrokeWidth&&e.text.trim().length&&(d.ctx.strokeStyle=B(t.webkitTextStrokeColor),d.ctx.lineWidth=t.webkitTextStrokeWidth,d.ctx.lineJoin=window.chrome?`miter`:`round`,d.ctx.strokeText(e.text,e.bounds.left,e.bounds.top+c)),d.ctx.strokeStyle=``,d.ctx.lineWidth=0,d.ctx.lineJoin=`miter`;break}})}),[2]})})},n.prototype.renderReplacedElement=function(e,t,n){if(n&&e.intrinsicWidth>0&&e.intrinsicHeight>0){var r=cl(e),i=Vc(t);this.path(i),this.ctx.save(),this.ctx.clip(),this.ctx.drawImage(n,0,0,e.intrinsicWidth,e.intrinsicHeight,r.left,r.top,r.width,r.height),this.ctx.restore()}},n.prototype.renderNodeContent=function(e){return r(this,void 0,void 0,function(){var t,r,a,s,c,l,u,u,d,f,p,m,h,g,_,v,y,b,x,u,S,h,v;return i(this,function(i){switch(i.label){case 0:this.applyEffects(e.getEffects(4)),t=e.container,r=e.curves,a=t.styles,s=0,c=t.textNodes,i.label=1;case 1:return s<c.length?(l=c[s],[4,this.renderTextNode(l,a)]):[3,4];case 2:i.sent(),i.label=3;case 3:return s++,[3,1];case 4:if(!(t instanceof Zo))return[3,8];i.label=5;case 5:return i.trys.push([5,7,,8]),[4,this.context.cache.match(t.src)];case 6:return u=i.sent(),this.renderReplacedElement(t,r,u),[3,8];case 7:return i.sent(),this.context.logger.error(`Error loading image `+t.src),[3,8];case 8:if(t instanceof Qo&&this.renderReplacedElement(t,r,t.canvas),!(t instanceof $o))return[3,12];i.label=9;case 9:return i.trys.push([9,11,,12]),[4,this.context.cache.match(t.svg)];case 10:return u=i.sent(),this.renderReplacedElement(t,r,u),[3,12];case 11:return i.sent(),this.context.logger.error(`Error loading svg `+t.svg.substring(0,255)),[3,12];case 12:return t instanceof fs&&t.tree?(d=new n(this.context,{scale:this.options.scale,backgroundColor:t.backgroundColor,x:0,y:0,width:t.width,height:t.height}),[4,d.render(t.tree)]):[3,14];case 13:f=i.sent(),t.width&&t.height&&this.ctx.drawImage(f,0,0,t.width,t.height,t.bounds.left,t.bounds.top,t.bounds.width,t.bounds.height),i.label=14;case 14:if(t instanceof ls&&(p=Math.min(t.bounds.width,t.bounds.height),t.type===os?t.checked&&(this.ctx.save(),this.path([new J(t.bounds.left+p*.39363,t.bounds.top+p*.79),new J(t.bounds.left+p*.16,t.bounds.top+p*.5549),new J(t.bounds.left+p*.27347,t.bounds.top+p*.44071),new J(t.bounds.left+p*.39694,t.bounds.top+p*.5649),new J(t.bounds.left+p*.72983,t.bounds.top+p*.23),new J(t.bounds.left+p*.84,t.bounds.top+p*.34085),new J(t.bounds.left+p*.39363,t.bounds.top+p*.79)]),this.ctx.fillStyle=B(q),this.ctx.fill(),this.ctx.restore()):t.type===ss&&t.checked&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.arc(t.bounds.left+p/2,t.bounds.top+p/2,p/4,0,Math.PI*2,!0),this.ctx.fillStyle=B(q),this.ctx.fill(),this.ctx.restore())),Cl(t)&&t.value.length){switch(m=this.createFontStyle(a),h=m[0],g=m[1],_=this.fontMetrics.getMetrics(h,g).baseline,this.ctx.font=h,this.ctx.fillStyle=B(a.color),this.ctx.textBaseline=`alphabetic`,this.ctx.textAlign=Tl(t.styles.textAlign),v=cl(t),y=0,t.styles.textAlign){case 1:y+=v.width/2;break;case 2:y+=v.width;break}b=v.add(y,0,0,-v.height/2+1),this.ctx.save(),this.path([new J(v.left,v.top),new J(v.left+v.width,v.top),new J(v.left+v.width,v.top+v.height),new J(v.left,v.top+v.height)]),this.ctx.clip(),this.renderTextWithLetterSpacing(new Ro(t.value,b),a.letterSpacing,_),this.ctx.restore(),this.ctx.textBaseline=`alphabetic`,this.ctx.textAlign=`left`}if(!ba(t.styles.display,2048))return[3,20];if(t.styles.listStyleImage===null)return[3,19];if(x=t.styles.listStyleImage,x.type!==0)return[3,18];u=void 0,S=x.url,i.label=15;case 15:return i.trys.push([15,17,,18]),[4,this.context.cache.match(S)];case 16:return u=i.sent(),this.ctx.drawImage(u,t.bounds.left-(u.width+10),t.bounds.top),[3,18];case 17:return i.sent(),this.context.logger.error(`Error loading list-style-image `+S),[3,18];case 18:return[3,20];case 19:e.listValue&&t.styles.listStyleType!==-1&&(h=this.createFontStyle(a)[0],this.ctx.font=h,this.ctx.fillStyle=B(a.color),this.ctx.textBaseline=`middle`,this.ctx.textAlign=`right`,v=new o(t.bounds.left,t.bounds.top+ur(t.styles.paddingTop,t.bounds.width),t.bounds.width,Ii(a.lineHeight,a.fontSize.number)/2+1),this.renderTextWithLetterSpacing(new Ro(e.listValue,v),a.letterSpacing,Ii(a.lineHeight,a.fontSize.number)/2+2),this.ctx.textBaseline=`bottom`,this.ctx.textAlign=`left`),i.label=20;case 20:return[2]}})})},n.prototype.renderStackContent=function(e){return r(this,void 0,void 0,function(){var t,n,r,a,o,r,s,c,r,l,u,r,d,f,r,p,m,r,h,g,r;return i(this,function(i){switch(i.label){case 0:if(ba(e.element.container.flags,16))debugger;return[4,this.renderNodeBackgroundAndBorders(e.element)];case 1:i.sent(),t=0,n=e.negativeZIndex,i.label=2;case 2:return t<n.length?(r=n[t],[4,this.renderStack(r)]):[3,5];case 3:i.sent(),i.label=4;case 4:return t++,[3,2];case 5:return[4,this.renderNodeContent(e.element)];case 6:i.sent(),a=0,o=e.nonInlineLevel,i.label=7;case 7:return a<o.length?(r=o[a],[4,this.renderNode(r)]):[3,10];case 8:i.sent(),i.label=9;case 9:return a++,[3,7];case 10:s=0,c=e.nonPositionedFloats,i.label=11;case 11:return s<c.length?(r=c[s],[4,this.renderStack(r)]):[3,14];case 12:i.sent(),i.label=13;case 13:return s++,[3,11];case 14:l=0,u=e.nonPositionedInlineLevel,i.label=15;case 15:return l<u.length?(r=u[l],[4,this.renderStack(r)]):[3,18];case 16:i.sent(),i.label=17;case 17:return l++,[3,15];case 18:d=0,f=e.inlineLevel,i.label=19;case 19:return d<f.length?(r=f[d],[4,this.renderNode(r)]):[3,22];case 20:i.sent(),i.label=21;case 21:return d++,[3,19];case 22:p=0,m=e.zeroOrAutoZIndexOrTransformedOrOpacity,i.label=23;case 23:return p<m.length?(r=m[p],[4,this.renderStack(r)]):[3,26];case 24:i.sent(),i.label=25;case 25:return p++,[3,23];case 26:h=0,g=e.positiveZIndex,i.label=27;case 27:return h<g.length?(r=g[h],[4,this.renderStack(r)]):[3,30];case 28:i.sent(),i.label=29;case 29:return h++,[3,27];case 30:return[2]}})})},n.prototype.mask=function(e){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(e.slice(0).reverse()),this.ctx.closePath()},n.prototype.path=function(e){this.ctx.beginPath(),this.formatPath(e),this.ctx.closePath()},n.prototype.formatPath=function(e){var t=this;e.forEach(function(e,n){var r=Fc(e)?e.start:e;n===0?t.ctx.moveTo(r.x,r.y):t.ctx.lineTo(r.x,r.y),Fc(e)&&t.ctx.bezierCurveTo(e.startControl.x,e.startControl.y,e.endControl.x,e.endControl.y,e.end.x,e.end.y)})},n.prototype.renderRepeat=function(e,t,n,r){this.path(e),this.ctx.fillStyle=t,this.ctx.translate(n,r),this.ctx.fill(),this.ctx.translate(-n,-r)},n.prototype.resizeImage=function(e,t,n){if(e.width===t&&e.height===n)return e;var r=(this.canvas.ownerDocument??document).createElement(`canvas`);return r.width=Math.max(1,t),r.height=Math.max(1,n),r.getContext(`2d`).drawImage(e,0,0,e.width,e.height,0,0,t,n),r},n.prototype.renderBackgroundImage=function(e){return r(this,void 0,void 0,function(){var t,n,r,a,o,s;return i(this,function(c){switch(c.label){case 0:t=e.styles.backgroundImage.length-1,n=function(n){var a,o,s,c,l,u,d,f,p,m,c,l,u,d,f,h,g,_,v,y,b,x,S,C,p,w,c,T,E,d,f,D,l,u,O,k,A,j,ee,te,M,ne;return i(this,function(i){switch(i.label){case 0:if(n.type!==0)return[3,5];a=void 0,o=n.url,i.label=1;case 1:return i.trys.push([1,3,,4]),[4,r.context.cache.match(o)];case 2:return a=i.sent(),[3,4];case 3:return i.sent(),r.context.logger.error(`Error loading background-image `+o),[3,4];case 4:return a&&(s=dl(e,t,[a.width,a.height,a.width/a.height]),c=s[0],l=s[1],u=s[2],d=s[3],f=s[4],p=r.ctx.createPattern(r.resizeImage(a,d,f),`repeat`),r.renderRepeat(c,p,l,u)),[3,6];case 5:Jr(n)?(m=dl(e,t,[null,null,null]),c=m[0],l=m[1],u=m[2],d=m[3],f=m[4],h=Nr(n.angle,d,f),g=h[0],_=h[1],v=h[2],y=h[3],b=h[4],x=document.createElement(`canvas`),x.width=d,x.height=f,S=x.getContext(`2d`),C=S.createLinearGradient(_,y,v,b),jr(n.stops,g).forEach(function(e){return C.addColorStop(e.stop,B(e.color))}),S.fillStyle=C,S.fillRect(0,0,d,f),d>0&&f>0&&(p=r.ctx.createPattern(x,`repeat`),r.renderRepeat(c,p,l,u))):Yr(n)&&(w=dl(e,t,[null,null,null]),c=w[0],T=w[1],E=w[2],d=w[3],f=w[4],D=n.position.length===0?[sr]:n.position,l=ur(D[0],d),u=ur(D[D.length-1],f),O=Fr(n,l,u,d,f),k=O[0],A=O[1],k>0&&A>0&&(j=r.ctx.createRadialGradient(T+l,E+u,0,T+l,E+u,k),jr(n.stops,k*2).forEach(function(e){return j.addColorStop(e.stop,B(e.color))}),r.path(c),r.ctx.fillStyle=j,k===A?r.ctx.fill():(ee=e.bounds.left+.5*e.bounds.width,te=e.bounds.top+.5*e.bounds.height,M=A/k,ne=1/M,r.ctx.save(),r.ctx.translate(ee,te),r.ctx.transform(1,0,0,M,0,0),r.ctx.translate(-ee,-te),r.ctx.fillRect(T,ne*(E-te)+te,d,f*ne),r.ctx.restore()))),i.label=6;case 6:return t--,[2]}})},r=this,a=0,o=e.styles.backgroundImage.slice(0).reverse(),c.label=1;case 1:return a<o.length?(s=o[a],[5,n(s)]):[3,4];case 2:c.sent(),c.label=3;case 3:return a++,[3,1];case 4:return[2]}})})},n.prototype.renderSolidBorder=function(e,t,n){return r(this,void 0,void 0,function(){return i(this,function(r){return this.path(tl(n,t)),this.ctx.fillStyle=B(e),this.ctx.fill(),[2]})})},n.prototype.renderDoubleBorder=function(e,t,n,a){return r(this,void 0,void 0,function(){var r,o;return i(this,function(i){switch(i.label){case 0:return t<3?[4,this.renderSolidBorder(e,n,a)]:[3,2];case 1:return i.sent(),[2];case 2:return r=nl(a,n),this.path(r),this.ctx.fillStyle=B(e),this.ctx.fill(),o=rl(a,n),this.path(o),this.ctx.fill(),[2]}})})},n.prototype.renderNodeBackgroundAndBorders=function(e){return r(this,void 0,void 0,function(){var t,n,r,a,o,s,c,l,u=this;return i(this,function(i){switch(i.label){case 0:return this.applyEffects(e.getEffects(2)),t=e.container.styles,n=!yr(t.backgroundColor)||t.backgroundImage.length,r=[{style:t.borderTopStyle,color:t.borderTopColor,width:t.borderTopWidth},{style:t.borderRightStyle,color:t.borderRightColor,width:t.borderRightWidth},{style:t.borderBottomStyle,color:t.borderBottomColor,width:t.borderBottomWidth},{style:t.borderLeftStyle,color:t.borderLeftColor,width:t.borderLeftWidth}],a=wl(hl(t.backgroundClip,0),e.curves),n||t.boxShadow.length?(this.ctx.save(),this.path(a),this.ctx.clip(),yr(t.backgroundColor)||(this.ctx.fillStyle=B(t.backgroundColor),this.ctx.fill()),[4,this.renderBackgroundImage(e.container)]):[3,2];case 1:i.sent(),this.ctx.restore(),t.boxShadow.slice(0).reverse().forEach(function(t){u.ctx.save();var n=zc(e.curves),r=t.inset?0:xl,i=Yc(n,-r+(t.inset?1:-1)*t.spread.number,(t.inset?1:-1)*t.spread.number,t.spread.number*(t.inset?-2:2),t.spread.number*(t.inset?-2:2));t.inset?(u.path(n),u.ctx.clip(),u.mask(i)):(u.mask(n),u.ctx.clip(),u.path(i)),u.ctx.shadowOffsetX=t.offsetX.number+r,u.ctx.shadowOffsetY=t.offsetY.number,u.ctx.shadowColor=B(t.color),u.ctx.shadowBlur=t.blur.number,u.ctx.fillStyle=t.inset?B(t.color):`rgba(0,0,0,1)`,u.ctx.fill(),u.ctx.restore()}),i.label=2;case 2:o=0,s=0,c=r,i.label=3;case 3:return s<c.length?(l=c[s],l.style!==0&&!yr(l.color)&&l.width>0?l.style===2?[4,this.renderDashedDottedBorder(l.color,l.width,o,e.curves,2)]:[3,5]:[3,11]):[3,13];case 4:return i.sent(),[3,11];case 5:return l.style===3?[4,this.renderDashedDottedBorder(l.color,l.width,o,e.curves,3)]:[3,7];case 6:return i.sent(),[3,11];case 7:return l.style===4?[4,this.renderDoubleBorder(l.color,l.width,o,e.curves)]:[3,9];case 8:return i.sent(),[3,11];case 9:return[4,this.renderSolidBorder(l.color,o,e.curves)];case 10:i.sent(),i.label=11;case 11:o++,i.label=12;case 12:return s++,[3,3];case 13:return[2]}})})},n.prototype.renderDashedDottedBorder=function(e,t,n,a,o){return r(this,void 0,void 0,function(){var r,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,b,x;return i(this,function(i){return this.ctx.save(),r=il(a,n),s=tl(a,n),o===2&&(this.path(s),this.ctx.clip()),Fc(s[0])?(c=s[0].start.x,l=s[0].start.y):(c=s[0].x,l=s[0].y),Fc(s[1])?(u=s[1].end.x,d=s[1].end.y):(u=s[1].x,d=s[1].y),f=Math.abs(n===0||n===2?c-u:l-d),this.ctx.beginPath(),o===3?this.formatPath(r):this.formatPath(s.slice(0,2)),p=t<3?t*3:t*2,m=t<3?t*2:t,o===3&&(p=t,m=t),h=!0,f<=p*2?h=!1:f<=p*2+m?(g=f/(2*p+m),p*=g,m*=g):(_=Math.floor((f+m)/(p+m)),v=(f-_*p)/(_-1),y=(f-(_+1)*p)/_,m=y<=0||Math.abs(m-v)<Math.abs(m-y)?v:y),h&&(o===3?this.ctx.setLineDash([0,p+m]):this.ctx.setLineDash([p,m])),o===3?(this.ctx.lineCap=`round`,this.ctx.lineWidth=t):this.ctx.lineWidth=t*2+1.1,this.ctx.strokeStyle=B(e),this.ctx.stroke(),this.ctx.setLineDash([]),o===2&&(Fc(s[0])&&(b=s[3],x=s[0],this.ctx.beginPath(),this.formatPath([new J(b.end.x,b.end.y),new J(x.start.x,x.start.y)]),this.ctx.stroke()),Fc(s[1])&&(b=s[1],x=s[2],this.ctx.beginPath(),this.formatPath([new J(b.end.x,b.end.y),new J(x.start.x,x.start.y)]),this.ctx.stroke())),this.ctx.restore(),[2]})})},n.prototype.render=function(e){return r(this,void 0,void 0,function(){var t;return i(this,function(n){switch(n.label){case 0:return this.options.backgroundColor&&(this.ctx.fillStyle=B(this.options.backgroundColor),this.ctx.fillRect(this.options.x,this.options.y,this.options.width,this.options.height)),t=el(e),[4,this.renderStack(t)];case 1:return n.sent(),this.applyEffects([]),[2,this.canvas]}})})},n}(bl),Cl=function(e){return e instanceof ds||e instanceof us?!0:e instanceof ls&&e.type!==ss&&e.type!==os},wl=function(e,t){switch(e){case 0:return zc(t);case 2:return Bc(t);default:return Vc(t)}},Tl=function(e){switch(e){case 1:return`center`;case 2:return`right`;default:return`left`}},El=[`-apple-system`,`system-ui`],Dl=function(e){return/iPhone OS 15_(0|1)/.test(window.navigator.userAgent)?e.filter(function(e){return El.indexOf(e)===-1}):e},Ol=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.canvas=n.canvas?n.canvas:document.createElement(`canvas`),r.ctx=r.canvas.getContext(`2d`),r.options=n,r.canvas.width=Math.floor(n.width*n.scale),r.canvas.height=Math.floor(n.height*n.scale),r.canvas.style.width=n.width+`px`,r.canvas.style.height=n.height+`px`,r.ctx.scale(r.options.scale,r.options.scale),r.ctx.translate(-n.x,-n.y),r.context.logger.debug(`EXPERIMENTAL ForeignObject renderer initialized (`+n.width+`x`+n.height+` at `+n.x+`,`+n.y+`) with scale `+n.scale),r}return n.prototype.render=function(e){return r(this,void 0,void 0,function(){var t,n;return i(this,function(r){switch(r.label){case 0:return t=Fo(this.options.width*this.options.scale,this.options.height*this.options.scale,this.options.scale,this.options.scale,e),[4,kl(t)];case 1:return n=r.sent(),this.options.backgroundColor&&(this.ctx.fillStyle=B(this.options.backgroundColor),this.ctx.fillRect(0,0,this.options.width*this.options.scale,this.options.height*this.options.scale)),this.ctx.drawImage(n,-this.options.x*this.options.scale,-this.options.y*this.options.scale),[2,this.canvas]}})})},n}(bl),kl=function(e){return new Promise(function(t,n){var r=new Image;r.onload=function(){t(r)},r.onerror=n,r.src=`data:image/svg+xml;charset=utf-8,`+encodeURIComponent(new XMLSerializer().serializeToString(e))})},Al=function(){function e(e){var t=e.id,n=e.enabled;this.id=t,this.enabled=n,this.start=Date.now()}return e.prototype.debug=function(){var e=[...arguments];this.enabled&&(typeof window<`u`&&window.console&&typeof console.debug==`function`?console.debug.apply(console,a([this.id,this.getTime()+`ms`],e)):this.info.apply(this,e))},e.prototype.getTime=function(){return Date.now()-this.start},e.prototype.info=function(){var e=[...arguments];this.enabled&&typeof window<`u`&&window.console&&typeof console.info==`function`&&console.info.apply(console,a([this.id,this.getTime()+`ms`],e))},e.prototype.warn=function(){var e=[...arguments];this.enabled&&(typeof window<`u`&&window.console&&typeof console.warn==`function`?console.warn.apply(console,a([this.id,this.getTime()+`ms`],e)):this.info.apply(this,e))},e.prototype.error=function(){var e=[...arguments];this.enabled&&(typeof window<`u`&&window.console&&typeof console.error==`function`?console.error.apply(console,a([this.id,this.getTime()+`ms`],e)):this.info.apply(this,e))},e.instances={},e}(),jl=function(){function e(t,n){this.windowBounds=n,this.instanceName=`#`+ e.instanceCount++,this.logger=new Al({id:this.instanceName,enabled:t.logging}),this.cache=t.cache??new wc(this,t)}return e.instanceCount=1,e}(),Ml=function(e,t){return t===void 0&&(t={}),Nl(e,t)};typeof window<`u`&&Cc.setContext(window);var Nl=function(e,t){return r(void 0,void 0,void 0,function(){var r,a,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,D;return i(this,function(i){switch(i.label){case 0:if(!e||typeof e!=`object`)return[2,Promise.reject(`Invalid element provided as first argument`)];if(r=e.ownerDocument,!r)throw Error(`Element is not attached to a Document`);if(a=r.defaultView,!a)throw Error(`Document is not attached to a Window`);return l={allowTaint:t.allowTaint??!1,imageTimeout:t.imageTimeout??15e3,proxy:t.proxy,useCORS:t.useCORS??!1},u=n({logging:t.logging??!0,cache:t.cache},l),d={windowWidth:t.windowWidth??a.innerWidth,windowHeight:t.windowHeight??a.innerHeight,scrollX:t.scrollX??a.pageXOffset,scrollY:t.scrollY??a.pageYOffset},f=new o(d.scrollX,d.scrollY,d.windowWidth,d.windowHeight),p=new jl(u,f),m=t.foreignObjectRendering??!1,h={allowTaint:t.allowTaint??!1,onclone:t.onclone,ignoreElements:t.ignoreElements,inlineImages:m,copyStyles:m},p.logger.debug(`Starting document clone with size `+f.width+`x`+f.height+` scrolled to `+-f.left+`,`+-f.top),g=new ac(p,e,h),_=g.clonedReferenceElement,_?[4,g.toIFrame(r,f)]:[2,Promise.reject(`Unable to find element in cloned iframe`)];case 1:return v=i.sent(),y=Os(_)||Es(_)?c(_.ownerDocument):s(p,_),b=y.width,x=y.height,S=y.left,C=y.top,w=Pl(p,_,t.backgroundColor),T={canvas:t.canvas,backgroundColor:w,scale:t.scale??a.devicePixelRatio??1,x:(t.x??0)+S,y:(t.y??0)+C,width:t.width??Math.ceil(b),height:t.height??Math.ceil(x)},m?(p.logger.debug(`Document cloned, using foreign object rendering`),D=new Ol(p,T),[4,D.render(_)]):[3,3];case 2:return E=i.sent(),[3,5];case 3:return p.logger.debug(`Document cloned, element located at `+S+`,`+C+` with size `+b+`x`+x+` using computed rendering`),p.logger.debug(`Starting DOM parsing`),O=gs(p,_),w===O.styles.backgroundColor&&(O.styles.backgroundColor=Dr.TRANSPARENT),p.logger.debug(`Starting renderer for element at `+T.x+`,`+T.y+` with size `+T.width+`x`+T.height),D=new Sl(p,T),[4,D.render(O)];case 4:E=i.sent(),i.label=5;case 5:return(t.removeContainer??!0)&&(ac.destroy(v)||p.logger.error(`Cannot detach cloned iframe as it is not in the DOM anymore`)),p.logger.debug(`Finished rendering`),[2,E]}})})},Pl=function(e,t,n){var r=t.ownerDocument,i=r.documentElement?Er(e,getComputedStyle(r.documentElement).backgroundColor):Dr.TRANSPARENT,a=r.body?Er(e,getComputedStyle(r.body).backgroundColor):Dr.TRANSPARENT,o=typeof n==`string`?Er(e,n):n===null?Dr.TRANSPARENT:4294967295;return t===r.documentElement?yr(i)?yr(a)?o:a:i:o};return Ml}))}))();var $f=function(e){function t(e,n,r,i){var a;return b(this,t),a=k(this,t,[e]),a.currentTime=r,a.timelineTime=i,a.target=n,a.type=`finish`,a.bubbles=!1,a.currentTarget=n,a.defaultPrevented=!1,a.eventPhase=a.AT_TARGET,a.timeStamp=Date.now(),a.currentTime=r,a.timelineTime=i,a}return T(t,e),S(t)}(Gu),ep=0,tp=function(){function e(t,n){b(this,e),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=n,this.id=`${ep++}`,this._inEffect=!!this.effect.update(0),this._totalDuration=Number(this.effect?.getComputedTiming().endTime),this._holdTime=0,this._paused=!1,this.oldPlayState=`idle`,this.updatePromises()}return S(e,[{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(t,n){e.resolveReadyPromise=function(){t(e)},e.rejectReadyPromise=function(){n(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(t,n){e.resolveFinishedPromise=function(){t(e)},e.rejectFinishedPromise=function(){n(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){e=Number(e),!isNaN(e)&&(this.timeline.restart(),!this._paused&&this._startTime!==null&&(this._startTime=Number(this.timeline?.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 t=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)),t!==null&&(this.currentTime=t),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.destroyed)return this.readyPromise=void 0,this.finishedPromise=void 0,!1;var t=this.oldPlayState,n=this.pending?`pending`:this.playState;return this.readyPromise&&n!==t&&(n===`idle`?(this.rejectReadyPromise(),this.readyPromise=void 0):t===`pending`?this.resolveReadyPromise():n===`pending`&&(this.readyPromise=void 0)),this.finishedPromise&&n!==t&&(n===`idle`?(this.rejectFinishedPromise(),this.finishedPromise=void 0):n===`finished`?this.resolveFinishedPromise():t===`finished`&&(this.finishedPromise=void 0)),this.oldPlayState=n,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(),!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 t=new $f(null,this,this.currentTime,null);setTimeout(function(){e.oncancel(t)})}}},{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(){return(this.effect?.target).getAnimations()}},{key:`markTarget`,value:function(){var e=this.targetAnimations();e.indexOf(this)===-1&&e.push(this)}},{key:`unmarkTarget`,value:function(){var e=this.targetAnimations(),t=e.indexOf(this);t!==-1&&e.splice(t,1)}},{key:`tick`,value:function(e,t){!this._idle&&!this._paused&&(this._startTime===null?t&&(this.startTime=e-this._currentTime/this.playbackRate):this._isFinished||this.tickCurrentTime((e-this._startTime)*this.playbackRate)),t&&(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 Error(`Unable to rewind negative playback rate animation with infinite duration`)}},{key:`persist`,value:function(){throw Error(Ia)}},{key:`addEventListener`,value:function(e,t,n){throw Error(Ia)}},{key:`removeEventListener`,value:function(e,t,n){throw Error(Ia)}},{key:`dispatchEvent`,value:function(e){throw Error(Ia)}},{key:`commitStyles`,value:function(){throw Error(Ia)}},{key:`ensureAlive`,value:function(){if(this.playbackRate<0&&this.currentTime===0){var e;this._inEffect=!!((e=this.effect)!=null&&e.update(-1))}else{var t;this._inEffect=!!((t=this.effect)!=null&&t.update(this.currentTime))}!this._inTimeline&&(this._inEffect||!this._finishedFlag)&&(this._inTimeline=!0,this.timeline.animations.push(this))}},{key:`tickCurrentTime`,value:function(e,t){e!==this._currentTime&&(this._currentTime=e,this._isFinished&&!t&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this.ensureAlive())}},{key:`fireEvents`,value:function(e){var t=this;if(this._isFinished){if(!this._finishedFlag){if(this.onfinish){var n=new $f(null,this,this.currentTime,e);setTimeout(function(){t.onfinish&&t.onfinish(n)})}this._finishedFlag=!0}}else{if(this.onframe&&this.playState===`running`){var r=new $f(null,this,this.currentTime,e);this.onframe(r)}this._finishedFlag=!1}}}])}(),np=4,rp=.001,ip=1e-7,ap=10,op=11,sp=1/(op-1),cp=typeof Float32Array==`function`,lp=function(e,t){return 1-3*t+3*e},up=function(e,t){return 3*t-6*e},dp=function(e){return 3*e},fp=function(e,t,n){return((lp(t,n)*e+up(t,n))*e+dp(t))*e},pp=function(e,t,n){return 3*lp(t,n)*e*e+2*up(t,n)*e+dp(t)},mp=function(e,t,n,r,i){var a,o,s=0;do o=t+(n-t)/2,a=fp(o,r,i)-e,a>0?n=o:t=o;while(Math.abs(a)>ip&&++s<ap);return o},hp=function(e,t,n,r){for(var i=0;i<np;++i){var a=pp(t,n,r);if(a===0)return t;var o=fp(t,n,r)-e;t-=o/a}return t},gp=function(e,t,n,r){if(!(e>=0&&e<=1&&n>=0&&n<=1))throw Error(`bezier x values must be in [0, 1] range`);if(e===t&&n===r)return function(e){return e};for(var i=cp?new Float32Array(op):Array(op),a=0;a<op;++a)i[a]=fp(a*sp,e,n);var o=function(t){for(var r=0,a=1,o=op-1;a!==o&&i[a]<=t;++a)r+=sp;--a;var s=(t-i[a])/(i[a+1]-i[a]),c=r+s*sp,l=pp(c,e,n);return l>=rp?hp(t,c,e,n):l===0?c:mp(t,r,r+sp,e,n)};return function(e){return e===0||e===1?e:fp(o(e),t,r)}},_p=function(e){return e=e.replace(/([A-Z])/g,function(e){return`-${e.toLowerCase()}`}),e.charAt(0)===`-`?e.substring(1):e},vp=function(e){return e**2},yp=function(e){return e**3},bp=function(e){return e**4},xp=function(e){return e**5},Sp=function(e){return e**6},Cp=function(e){return 1-Math.cos(e*Math.PI/2)},wp=function(e){return 1-Math.sqrt(1-e*e)},Tp=function(e){return e*e*(3*e-2)},Ep=function(e){for(var t,n=4;e<((t=2**--n)-1)/11;);return 1/4**(3-n)-7.5625*((t*3-2)/22-e)**2},Dp=function(e){var t=m(arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],2),n=t[0],r=n===void 0?1:n,i=t[1],a=i===void 0?.5:i,o=mn(Number(r),1,10),s=mn(Number(a),.1,2);return e===0||e===1?e:-o*2**(10*(e-1))*Math.sin((e-1-s/(Math.PI*2)*Math.asin(1/o))*(Math.PI*2)/s)},Op=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0,r=m(t,4),i=r[0],a=i===void 0?1:i,o=r[1],s=o===void 0?100:o,c=r[2],l=c===void 0?10:c,u=r[3],d=u===void 0?0:u;a=mn(a,.1,1e3),s=mn(s,.1,1e3),l=mn(l,.1,1e3),d=mn(d,.1,1e3);var f=Math.sqrt(s/a),p=l/(2*Math.sqrt(s*a)),h=p<1?f*Math.sqrt(1-p*p):0,g=1,_=p<1?(p*f+-d)/h:-d+f,v=n?n*e/1e3:e;return v=p<1?Math.exp(-v*p*f)*(g*Math.cos(h*v)+_*Math.sin(h*v)):(g+_*v)*Math.exp(-v*f),e===0||e===1?e:1-v},kp=function(e){var t=m(arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],2),n=t[0],r=n===void 0?10:n;return(t[1]===`start`?Math.ceil:Math.floor)(mn(e,0,1)*r)/r},Ap=function(e){var t=m(arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],4),n=t[0],r=t[1],i=t[2],a=t[3];return gp(n,r,i,a)(e)},jp=gp(.42,0,1,1),Mp=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return 1-e(1-t,n,r)}},Np=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t<.5?e(t*2,n,r)/2:1-e(t*-2+2,n,r)/2}},Pp=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t<.5?(1-e(1-t*2,n,r))/2:(e(t*2-1,n,r)+1)/2}},Fp={steps:kp,"step-start":function(e){return kp(e,[1,`start`])},"step-end":function(e){return kp(e,[1,`end`])},linear:function(e){return e},"cubic-bezier":Ap,ease:function(e){return Ap(e,[.25,.1,.25,1])},in:jp,out:Mp(jp),"in-out":Np(jp),"out-in":Pp(jp),"in-quad":vp,"out-quad":Mp(vp),"in-out-quad":Np(vp),"out-in-quad":Pp(vp),"in-cubic":yp,"out-cubic":Mp(yp),"in-out-cubic":Np(yp),"out-in-cubic":Pp(yp),"in-quart":bp,"out-quart":Mp(bp),"in-out-quart":Np(bp),"out-in-quart":Pp(bp),"in-quint":xp,"out-quint":Mp(xp),"in-out-quint":Np(xp),"out-in-quint":Pp(xp),"in-expo":Sp,"out-expo":Mp(Sp),"in-out-expo":Np(Sp),"out-in-expo":Pp(Sp),"in-sine":Cp,"out-sine":Mp(Cp),"in-out-sine":Np(Cp),"out-in-sine":Pp(Cp),"in-circ":wp,"out-circ":Mp(wp),"in-out-circ":Np(wp),"out-in-circ":Pp(wp),"in-back":Tp,"out-back":Mp(Tp),"in-out-back":Np(Tp),"out-in-back":Pp(Tp),"in-bounce":Ep,"out-bounce":Mp(Ep),"in-out-bounce":Np(Ep),"out-in-bounce":Pp(Ep),"in-elastic":Dp,"out-elastic":Mp(Dp),"in-out-elastic":Np(Dp),"out-in-elastic":Pp(Dp),spring:Op,"spring-in":Op,"spring-out":Mp(Op),"spring-in-out":Np(Op),"spring-out-in":Pp(Op)},Ip=function(e){return _p(e).replace(/^ease-/,``).replace(/(\(|\s).+/,``).toLowerCase().trim()},Lp=function(e){return Fp[Ip(e)]||Fp.linear},Rp=function(e){return e},zp=1,Bp=.5,Vp=0;function Hp(e,t){return function(n){if(n>=1)return 1;var r=1/e;return n+=t*r,n-n%r}}var Up=`\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*`,Wp=RegExp(`cubic-bezier\\(${Up},${Up},${Up},${Up}\\)`),Gp=/steps\(\s*(\d+)\s*\)/,Kp=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/;function qp(e){var t=Wp.exec(e);if(t)return gp.apply(void 0,l(t.slice(1).map(Number)));var n=Gp.exec(e);if(n)return Hp(Number(n[1]),Vp);var r=Kp.exec(e);return r?Hp(Number(r[1]),{start:zp,middle:Bp,end:Vp}[r[2]]):Lp(e)}function Jp(e){return Math.abs(Yp(e)/(e.playbackRate||1))}function Yp(e){return e.duration===0||e.iterations===0?0:(e.duration===`auto`?0:Number(e.duration))*(e.iterations??1)}var Xp=0,Zp=1,Qp=2,$p=3;function em(e,t,n){if(t===null)return Xp;var r=n.endTime;return t<Math.min(n.delay,r)?Zp:t>=Math.min(n.delay+e+n.endDelay,r)?Qp:$p}function tm(e,t,n,r,i){switch(r){case Zp:return t===`backwards`||t===`both`?0:null;case $p:return n-i;case Qp:return t===`forwards`||t===`both`?e:null;case Xp:return null}}function nm(e,t,n,r,i){var a=i;return e===0?t!==Zp&&(a+=n):a+=r/e,a}function rm(e,t,n,r,i,a){var o=e===1/0?t%1:e%1;return o===0&&n===Qp&&r!==0&&(i!==0||a===0)&&(o=1),o}function im(e,t,n,r){return e===Qp&&t===1/0?1/0:n===1?Math.floor(r)-1:Math.floor(r)}function am(e,t,n){var r=e;if(e!==`normal`&&e!==`reverse`){var i=t;e===`alternate-reverse`&&(i+=1),r=`normal`,i!==1/0&&i%2!=0&&(r=`reverse`)}return r===`normal`?n:1-n}function om(e,t,n){var r=em(e,t,n),i=tm(e,n.fill,t,r,n.delay);if(i===null)return null;var a=n.duration===`auto`?0:n.duration,o=nm(a,r,n.iterations,i,n.iterationStart),s=rm(o,n.iterationStart,r,n.iterations,i,a),c=im(r,n.iterations,s,o),l=am(n.direction,c,s);return n.currentIteration=c,n.progress=l,n.easingFunction(l)}function sm(e,t,n){var r=lm(e,t),i=um(r,n);return function(e,t){if(t!==null)i.filter(function(e){return t>=e.applyFrom&&t<e.applyTo}).forEach(function(n){var r=t-n.startOffset,i=n.endOffset-n.startOffset,a=i===0?0:r/i;e.setAttribute(n.property,n.interpolation(a),!1,!1)});else for(var n in r)cm(n)&&e.setAttribute(n,null)}}function cm(e){return e!==`offset`&&e!==`easing`&&e!==`composite`&&e!==`computedOffset`}function lm(e,t){for(var n={},r=0;r<e.length;r++)for(var i in e[r])if(cm(i)){var a={offset:e[r].offset,computedOffset:e[r].computedOffset,easing:e[r].easing,easingFunction:qp(e[r].easing)||t.easingFunction,value:e[r][i]};n[i]=n[i]||[],n[i].push(a)}return n}function um(e,t){var n=[];for(var r in e)for(var i=e[r],a=0;a<i.length-1;a++){var o=a,s=a+1,c=i[o].computedOffset,l=i[s].computedOffset,u=c,d=l;a===0&&(u=-1/0,l===0&&(s=o)),a===i.length-2&&(d=1/0,c===1&&(o=s)),n.push({applyFrom:u,applyTo:d,startOffset:i[o].computedOffset,endOffset:i[s].computedOffset,easingFunction:i[o].easingFunction,property:r,interpolation:fm(r,i[o].value,i[s].value,t)})}return n.sort(function(e,t){return e.startOffset-t.startOffset}),n}var dm=function(e,t,n){return function(r){var i=pm(e,t,r);return hn(i)?i:n(i)}};function fm(e,t,n,r){var i=gl[e];if(i&&i.syntax&&i.int){var a=Y.styleValueRegistry.getPropertySyntax(i.syntax);if(a){var o=a.parser,s=o?o(t,r):t,c=o?o(n,r):n,u=a.mixer(s,c,r);if(u){var d=dm.apply(void 0,l(u));return function(e){return e===0?t:e===1?n:d(e)}}}}return dm(!1,!0,function(e){return e?n:t})}function pm(e,t,n){if(typeof e==`number`&&typeof t==`number`)return e*(1-n)+t*n;if(typeof e==`boolean`&&typeof t==`boolean`||typeof e==`string`&&typeof t==`string`)return n<.5?e:t;if(Array.isArray(e)&&Array.isArray(t)){for(var r=e.length,i=t.length,a=Math.max(r,i),o=[],s=0;s<a;s++)o.push(pm(e[s<r?s:r-1],t[s<i?s:i-1],n));return o}throw Error(`Mismatched interpolation arguments ${e}:${t}`)}var mm=function(){function e(){b(this,e),this.delay=0,this.direction=`normal`,this.duration=`auto`,this._easing=`linear`,this.easingFunction=Rp,this.endDelay=0,this.fill=`auto`,this.iterationStart=0,this.iterations=1,this.currentIteration=null,this.progress=null}return S(e,[{key:`easing`,get:function(){return this._easing},set:function(e){this.easingFunction=qp(e),this._easing=e}}])}();function hm(e){var t=[];for(var n in e)if(!(n in[`easing`,`offset`,`composite`])){var r=e[n];Array.isArray(r)||(r=[r]);for(var i=r.length,a=0;a<i;a++){if(!t[a]){var o={};`offset`in e&&(o.offset=Number(e.offset)),`easing`in e&&(o.easing=e.easing),`composite`in e&&(o.composite=e.composite),t[a]=o}r[a]!==void 0&&r[a]!==null&&(t[a][n]=r[a])}}return t.sort(function(e,t){return(e.computedOffset||0)-(t.computedOffset||0)}),t}function gm(e,t){if(e===null)return[];Array.isArray(e)||(e=hm(e));for(var n=e.map(function(e){var n={};for(var r in t!=null&&t.composite&&(n.composite=`auto`),e){var i=e[r];if(r===`offset`){if(i!==null){if(i=Number(i),!isFinite(i))throw Error(`Keyframe offsets must be numbers.`);if(i<0||i>1)throw Error(`Keyframe offsets must be between 0 and 1.`);n.computedOffset=i}}else if(r===`composite`&&[`replace`,`add`,`accumulate`,`auto`].indexOf(i)===-1)throw Error(`${i} compositing is not supported`);n[r]=i}return n.offset===void 0&&(n.offset=null),n.easing===void 0&&(n.easing=t?.easing||`linear`),n.composite===void 0&&(n.composite=`auto`),n}),r=!0,i=-1/0,a=0;a<n.length;a++){var o=n[a].offset;if(R(o))r=!1;else{if(o<i)throw TypeError(`Keyframes are not loosely sorted by offset. Sort or specify offsets.`);i=o}}n=n.filter(function(e){return Number(e.offset)>=0&&Number(e.offset)<=1});function s(){var e=n.length;n[e-1].computedOffset=Number(n[e-1].offset??1),e>1&&(n[0].computedOffset=Number(n[0].offset??0));for(var t=0,r=Number(n[0].computedOffset),i=1;i<e;i++){var a=n[i].computedOffset;if(!R(a)&&!R(r)){for(var o=1;o<i-t;o++)n[t+o].computedOffset=r+(Number(a)-r)*o/(i-t);t=i,r=Number(a)}}}return r||s(),n}var _m=`backwards|forwards|both|none`.split(`|`),vm=`reverse|alternate|alternate-reverse`.split(`|`);function ym(e,t){var n=new mm;return t&&(n.fill=`both`,n.duration=`auto`),typeof e==`number`&&!isNaN(e)?n.duration=e:e!==void 0&&Object.keys(e).forEach(function(t){if(e[t]!==void 0&&e[t]!==null&&e[t]!==`auto`){if((typeof n[t]==`number`||t===`duration`)&&(typeof e[t]!=`number`||isNaN(e[t]))||t===`fill`&&_m.indexOf(e[t])===-1||t===`direction`&&vm.indexOf(e[t])===-1)return;n[t]=e[t]}}),n}function bm(e,t){return e=xm(e??{duration:`auto`}),ym(e,t)}function xm(e){return typeof e==`number`&&(e=isNaN(e)?{duration:`auto`}:{duration:e}),e}var Sm=function(){function e(t,n,r){var i=this;b(this,e),this.composite=`replace`,this.iterationComposite=`replace`,this.target=t,this.timing=bm(r,!1),this.timing.effect=this,this.timing.activeDuration=Jp(this.timing),this.timing.endTime=Math.max(0,this.timing.delay+this.timing.activeDuration+this.timing.endDelay),this.normalizedKeyframes=gm(n,this.timing),this.interpolations=sm(this.normalizedKeyframes,this.timing,this.target);var a=Y.globalThis.Proxy;this.computedTiming=a?new a(this.timing,{get:function(e,t){return t===`duration`?e.duration===`auto`?0:e.duration:t===`fill`?e.fill===`auto`?`none`:e.fill:t===`localTime`?i.animation&&i.animation.currentTime||null:t===`currentIteration`?!i.animation||i.animation.playState!==`running`?null:e.currentIteration||0:t===`progress`?!i.animation||i.animation.playState!==`running`?null:e.progress||0:e[t]},set:function(){return!0}}):this.timing}return S(e,[{key:`applyInterpolations`,value:function(){this.interpolations(this.target,Number(this.timeFraction))}},{key:`update`,value:function(e){return e===null?!1:(this.timeFraction=om(this.timing.activeDuration,e,this.timing),this.timeFraction!==null)}},{key:`getKeyframes`,value:function(){return this.normalizedKeyframes}},{key:`setKeyframes`,value:function(e){this.normalizedKeyframes=gm(e)}},{key:`getComputedTiming`,value:function(){return this.computedTiming}},{key:`getTiming`,value:function(){return this.timing}},{key:`updateTiming`,value:function(e){var t=this;Object.keys(e||{}).forEach(function(n){t.timing[n]=e[n]})}}])}();function Cm(e,t){return Number(e.id)-Number(t.id)}var wm=function(){function e(t){var n=this;b(this,e),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(e){n.currentTime=e,n.discardAnimations(),n.animations.length===0?n.timelineTicking=!1:n.requestAnimationFrame(n.webAnimationsNextTick)},this.processRafCallbacks=function(e){var t=n.rafCallbacks;n.rafCallbacks=[],e<Number(n.currentTime)&&(e=Number(n.currentTime)),n.animations.sort(Cm),n.animations=n.tick(e,!0,n.animations)[0],t.forEach(function(t){t[1](e)}),n.applyPendingEffects()},this.document=t}return S(e,[{key:`getAnimations`,value:function(){return this.discardAnimations(),this.animations.slice()}},{key:`isTicking`,value:function(){return this.inTick}},{key:`play`,value:function(e,t,n){var r=new tp(new Sm(e,t,n),this);return this.animations.push(r),this.restartWebAnimationsNextTick(),r.updatePromises(),r.play(),r.updatePromises(),r}},{key:`applyDirtiedAnimation`,value:function(e){var t=this;if(!this.inTick){e.markTarget();var n=e.targetAnimations();n.sort(Cm),this.tick(Number(this.currentTime),!1,n.slice())[1].forEach(function(e){var n=t.animations.indexOf(e);n!==-1&&t.animations.splice(n,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?.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 t=this.rafId++;return this.rafCallbacks.length===0&&(this.frameId=this.document.defaultView.requestAnimationFrame(this.processRafCallbacks)),this.rafCallbacks.push([t,e]),t}},{key:`requestAnimationFrame`,value:function(e){var t=this;return this.rAF(function(n){t.updateAnimationsPromises(),e(n),t.updateAnimationsPromises()})}},{key:`tick`,value:function(e,t,n){var r=this,i,a;this.inTick=!0,this.hasRestartedThisFrame=!1,this.currentTime=e,this.ticking=!1;var o=[],s=[],c=[],l=[];return n.forEach(function(n){n.tick(e,t),n._inEffect?(s.push(n.effect),n.markTarget()):(o.push(n.effect),n.unmarkTarget()),n._needsTick&&(r.ticking=!0);var i=n._inEffect||n._needsTick;n._inTimeline=i,i?c.push(n):l.push(n)}),(i=this.pendingEffects).push.apply(i,o),(a=this.pendingEffects).push.apply(a,s),this.ticking&&this.requestAnimationFrame(function(){}),this.inTick=!1,[c,l]}}])}();Y.EasingFunction=qp,Y.AnimationTimeline=wm,Y.CameraContribution=function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.landmarks=[],e}return T(t,e),S(t,[{key:`rotate`,value:function(e,t,n){if(this.relElevation=za(t),this.relAzimuth=za(e),this.relRoll=za(n),this.elevation+=this.relElevation,this.azimuth+=this.relAzimuth,this.roll+=this.relRoll,this.type===co.EXPLORING){var r=jt(At(),[1,0,0],Ua((this.rotateWorld?1:-1)*this.relElevation)),i=jt(At(),[0,1,0],Ua((this.rotateWorld?1:-1)*this.relAzimuth)),a=jt(At(),[0,0,1],Ua(this.relRoll)),o=Mt(At(),i,r);o=Mt(At(),o,a);var s=Ne(P(),o);me(this.matrix,this.matrix,[0,0,-this.distance]),pe(this.matrix,this.matrix,s),me(this.matrix,this.matrix,[0,0,this.distance])}else{if(Math.abs(this.elevation)>90)return this;this.computeMatrix()}return this._getAxes(),this.type===co.ORBITING||this.type===co.EXPLORING?this._getPosition():this.type===co.TRACKING&&this._getFocalPoint(),this._update(),this}},{key:`pan`,value:function(e,t){var n=Va(e,t,0),r=tt(this.position);return ot(r,r,dt(et(),this.right,n[0])),ot(r,r,dt(et(),this.up,n[1])),this._setPosition(r),this.triggerUpdate(),this}},{key:`dolly`,value:function(e){var t=this.forward,n=tt(this.position),r=e*this.dollyingStep,i=this.distance+e*this.dollyingStep;return r=Math.max(Math.min(i,this.maxDistance),this.minDistance)-this.distance,n[0]+=r*t[0],n[1]+=r*t[1],n[2]+=r*t[2],this._setPosition(n),this.type===co.ORBITING||this.type===co.EXPLORING?this._getDistance():this.type===co.TRACKING&&ot(this.focalPoint,n,this.distanceVector),this.triggerUpdate(),this}},{key:`cancelLandmarkAnimation`,value:function(){this.landmarkAnimationID!==void 0&&this.canvas.cancelAnimationFrame(this.landmarkAnimationID)}},{key:`createLandmark`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.position,r=n===void 0?this.position:n,i=t.focalPoint,a=i===void 0?this.focalPoint:i,o=t.roll,s=t.zoom,c=new Y.CameraContribution;c.setType(this.type,void 0),c.setPosition(r[0],r[1]??this.position[1],r[2]??this.position[2]),c.setFocalPoint(a[0],a[1]??this.focalPoint[1],a[2]??this.focalPoint[2]),c.setRoll(o??this.roll),c.setZoom(s??this.zoom);var l={name:e,matrix:ae(c.getWorldTransform()),right:tt(c.right),up:tt(c.up),forward:tt(c.forward),position:tt(c.getPosition()),focalPoint:tt(c.getFocalPoint()),distanceVector:tt(c.getDistanceVector()),distance:c.getDistance(),dollyingStep:c.getDollyingStep(),azimuth:c.getAzimuth(),elevation:c.getElevation(),roll:c.getRoll(),relAzimuth:c.relAzimuth,relElevation:c.relElevation,relRoll:c.relRoll,zoom:c.getZoom()};return this.landmarks.push(l),l}},{key:`gotoLandmark`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=un(e)?this.landmarks.find(function(t){return t.name===e}):e;if(r){var i=hn(n)?{duration:n}:n,a=i.easing,o=a===void 0?`linear`:a,s=i.duration,c=s===void 0?100:s,l=i.easingFunction,u=l===void 0?void 0:l,d=i.onfinish,f=d===void 0?void 0:d,p=i.onframe,m=p===void 0?void 0:p,h=.01;this.cancelLandmarkAnimation();var g=r.position,_=r.focalPoint,v=r.zoom,y=r.roll,b=u||Y.EasingFunction(o),x,S=function(){t.setFocalPoint(_),t.setPosition(g),t.setRoll(y),t.setZoom(v),t.computeMatrix(),t.triggerUpdate(),f?.()};if(c===0)return S();var C=function(e){x===void 0&&(x=e);var n=e-x;if(n>=c){S();return}var r=b(n/c),i=et(),a=et(),o=1,s=0;if(gt(i,t.focalPoint,_,r),gt(a,t.position,g,r),s=t.roll*(1-r)+y*r,o=t.zoom*(1-r)+v*r,t.setFocalPoint(i),t.setPosition(a),t.setRoll(s),t.setZoom(o),St(i,_)+St(a,g)<=h&&v===void 0&&y===void 0)return S();t.computeMatrix(),t.triggerUpdate(),n<c&&(m?.(r),t.landmarkAnimationID=t.canvas.requestAnimationFrame(C))};this.canvas.requestAnimationFrame(C)}}}])}(mo);var Tm=[`body`,`startHead`,`endHead`,`startHeadOffset`,`endHeadOffset`],Em=[`body`,`startHead`,`endHead`,`startHeadOffset`,`endHeadOffset`],Dm=[`body`,`startHead`,`endHead`,`startHeadOffset`,`endHeadOffset`],Om=function(e){function t(e){var n;b(this,t),n=k(this,t,[y(y({},e),{},{type:t.tag})]);var r=n.attributes,i=r.body,a=r.startHead,o=r.endHead;r.startHeadOffset,r.endHeadOffset;var s=j(r,Tm);if(!i)throw Error(`Arrow's body is required`);return n.body=i,n.appendChild(n.body),n.handleBodyAttributeChanged(n.body),a&&n.appendArrowHead(n.getArrowHeadType(a),!0),o&&n.appendArrowHead(n.getArrowHeadType(o),!1),n.applyArrowStyle(s,[n.body,n.startHead,n.endHead]),n}return T(t,e),S(t,[{key:`handleBodyAttributeChanged`,value:function(e){var t=this;e.addEventListener(ad.ATTR_MODIFIED,function(e){var n=e.attrName;n===`x1`||n===`y1`?t.startHead&&t.transformArrowHead(t.startHead,!0):(n===`x2`||n===`y2`)&&t.endHead&&t.transformArrowHead(t.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(e,t,n){if(e===`opacity`||e===`strokeOpacity`||e===`stroke`||e===`lineWidth`||e===`increasedLineWidthForHitTesting`)this.applyArrowStyle(_({},e,n),[this.body,this.startHead,this.endHead]);else if(e===`startHead`||e===`endHead`){var r=e===`startHead`;if(this.destroyArrowHead(r),n){var i=this.attributes;i.body,i.startHead,i.endHead,i.startHeadOffset,i.endHeadOffset;var a=j(i,Em);this.appendArrowHead(this.getArrowHeadType(n),r),this.applyArrowStyle(a,[r?this.startHead:this.endHead])}}else if(e===`body`){var o=this.attributes;o.body,o.startHead,o.endHead,o.startHeadOffset,o.endHeadOffset;var s=j(o,Dm);this.body.destroy(),this.body=n,this.appendChild(this.body),this.applyArrowStyle(s,[this.body])}else e===`startHeadOffset`?this.moveArrowHeadAlongTangent(n,!0):e===`endHeadOffset`&&this.moveArrowHeadAlongTangent(n,!1)}},{key:`getArrowHeadType`,value:function(e){return typeof e==`boolean`?`default`:`custom`}},{key:`appendArrowHead`,value:function(e,t){var n=e===`default`?this.createDefaultArrowHead():t?this.attributes.startHead:this.attributes.endHead;this.transformArrowHead(n,t),n.setAttribute(`zIndex`,1),t?this.startHead=n:this.endHead=n,this.appendChild(n);var r=t?this.attributes.startHeadOffset:this.attributes.endHeadOffset;r&&this.moveArrowHeadAlongTangent(r,t)}},{key:`transformArrowHead`,value:function(e,t){var n=et(),r=0,i=0,a=0,o=0,s=0,c=this.body&&this.body.nodeName;if(c===U.LINE){var l=this.body.attributes,u=l.x1,d=l.x2,f=l.y1,p=l.y2;i=t?d:u,a=t?u:d,o=t?p:f,s=t?f:p}else if(c===U.POLYLINE){var h=this.body.attributes.points,g=h.length;i=t?h[1][0]:h[g-2][0],o=t?h[1][1]:h[g-2][1],a=t?h[0][0]:h[g-1][0],s=t?h[0][1]:h[g-1][1]}else if(c===U.PATH){var _=m(this.getTangent(this.body,t),2),v=_[0],y=_[1];i=v[0],o=v[1],a=y[0],s=y[1]}var b=i-a,x=o-s;r=Math.atan2(x,b),n=rt(a,s,0),t?(this.startHeadPosition=n,this.startHeadRad=r):(this.endHeadPosition=n,this.endHeadRad=r),e.setLocalPosition(n),e.setLocalEulerAngles(r*180/Math.PI+e.getLocalEulerAngles())}},{key:`moveArrowHeadAlongTangent`,value:function(e,t){var n=t?this.startHead:this.endHead;n&&n.setLocalPosition(xt(et(),t?this.startHeadPosition:this.endHeadPosition,rt(Math.cos(t?this.startHeadRad:this.endHeadRad)*e,Math.sin(t?this.startHeadRad:this.endHeadRad)*e,0))),this.body}},{key:`destroyArrowHead`,value:function(e){e&&this.startHead&&(this.startHead.destroy(),this.startHead=void 0),!e&&this.endHead&&(this.endHead.destroy(),this.endHead=void 0)}},{key:`getTangent`,value:function(e,t){return t?e.getStartTangent():e.getEndTangent()}},{key:`createDefaultArrowHead`,value:function(){var e=this.attributes,t=e.stroke,n=e.lineWidth,r=Math.sin,i=Math.cos,a=Math.PI,o=10*i(a/6);return new ff({style:{d:`M${o/2},${10*r(a/6)} L-${o/2},0 L${o/2},-${10*r(a/6)}`,stroke:t,lineWidth:n,transformOrigin:`center`}})}},{key:`applyArrowStyle`,value:function(e,t){var n=e.opacity,r=e.stroke,i=e.strokeOpacity,a=e.lineWidth,o=e.increasedLineWidthForHitTesting;t.forEach(function(e){e&&(R(n)||(e.style.opacity=n),R(r)||(e.style.stroke=r),R(i)||(e.style.strokeOpacity=i),R(a)||(e.style.lineWidth=a),R(o)||(e.style.increasedLineWidthForHitTesting=o))})}}])}(tf);Om.tag=`arrow`,Om.PARSED_STYLE_LIST=new Set([].concat(l(tf.PARSED_STYLE_LIST),[`body`,`startHead`,`endHead`,`startHeadOffset`,`endHeadOffset`,`stroke`,`lineWidth`,`opacity`,`strokeOpacity`]));var km=Math.PI,Am=km*2,jm=Math.sin,Mm=Math.cos,Nm=Math.acos,Pm=Math.atan2,Fm=Math.sqrt,Im=Math.max,Lm=Math.min,Rm=1e-4;[{name:`sr`,inherits:!1,interpolable:!0,syntax:K.LENGTH_PERCENTAGE},{name:`sr0`,inherits:!1,interpolable:!0,syntax:K.LENGTH_PERCENTAGE},{name:`startAngle`,inherits:!1,interpolable:!0,syntax:K.ANGLE},{name:`endAngle`,inherits:!1,interpolable:!0,syntax:K.ANGLE}].forEach(function(e){xf.registerProperty(e)});var zm=function(e,t,n,r){return{x:e+n*Math.cos(r),y:t+n*Math.sin(r)}};function Bm(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<Rm))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function Vm(e,t,n,r,i,a,o){var s=e-n,c=t-r,l=(o?a:-a)/Fm(s*s+c*c),u=l*c,d=-l*s,f=e+u,p=t+d,m=n+u,h=r+d,g=(f+m)/2,_=(p+h)/2,v=m-f,y=h-p,b=v*v+y*y,x=i-a,S=f*h-m*p,C=(y<0?-1:1)*Fm(Im(0,x*x*b-S*S)),w=(S*y-v*C)/b,T=(-S*v-y*C)/b,E=(S*y+v*C)/b,D=(-S*v+y*C)/b,O=w-g,k=T-_,A=E-g,j=D-_;return O*O+k*k>A*A+j*j&&(w=E,T=D),{cx:w,cy:T,x0:-u,y0:-d,x1:w*(i/x-1),y1:T*(i/x-1)}}function Hm(e,t){return t=t<0&&e>=0?t+Am:t,t-e<=km?0:1}var Um=function(e){function t(e){var n;return b(this,t),n=k(this,t,[e]),n.updatePath(),n}return T(t,e),S(t,[{key:`setAttribute`,value:function(e,n,r){Bi(t,`setAttribute`,this,3)([e,n,r]),[`startAngle`,`endAngle`,`sr`,`sr0`,`radius`].indexOf(e)>-1&&this.updatePath()}},{key:`updatePath`,value:function(){var e=this.parsedStyle,n=e.x,r=e.y,i=e.startAngle,a=e.endAngle,o=e.sr,s=e.sr0,c=e.radius,l=this.createPath(n,r,i?Ua(i):0,a?Ua(a):Math.PI*2,o||0,s||0,c||[0,0,0,0]);Bi(t,`setAttribute`,this,3)([`d`,l])}},{key:`createPath`,value:function(e,t,n,r,i,a,o){if(!(i<=0)){var s=zm(e,t,i,n),c=zm(e,t,i,r),l=zm(e,t,a,n),u=zm(e,t,a,r);if(_n(r-n,Math.PI*2)){var d=zm(e,t,i,n+Math.PI),f=zm(e,t,a,n+Math.PI),p=[[`M`,s.x,s.y],[`A`,i,i,0,1,1,d.x,d.y],[`A`,i,i,0,1,1,c.x,c.y],[`M`,l.x,l.y]];return a&&(p.push([`A`,a,a,0,1,0,f.x,f.y]),p.push([`A`,a,a,0,1,0,u.x,u.y])),p.push([`M`,s.x,s.y]),p.push([`Z`]),p}var h=r-n,g=i*Mm(n),_=i*jm(n),v=a*Mm(r),y=a*jm(r),b=i*Mm(r),x=i*jm(r),S=a*Mm(n),C=a*jm(n),w=m(o,4),T=w[0],E=w[1],D=w[2],O=w[3],k=(i-a)/2,A=Lm(k,T),j=Lm(k,E),ee=Lm(k,D),te=Lm(k,O),M=Im(A,j),ne=Im(ee,te),re=M,ie=ne;if((M>Rm||ne>Rm)&&h<km){var N=Bm(g,_,S,C,b,x,v,y);if(N){var P=g-N[0],ae=_-N[1],F=b-N[0],oe=x-N[1],se=1/jm(Nm((P*F+ae*oe)/(Fm(P*P+ae*ae)*Fm(F*F+oe*oe)))/2),ce=Fm(N[0]*N[0]+N[1]*N[1]);re=Lm(M,(i-ce)/(se+1)),ie=Lm(ne,(a-ce)/(se-1))}}var le=Hm(n,r),ue=!0,de=[];if(re>Rm){var fe=Lm(T,re),pe=Lm(E,re),me=Vm(S,C,g,_,i,fe,ue),I=Vm(b,x,v,y,i,pe,ue);if(de.push([`M`,e+me.cx+me.x0,t+me.cy+me.y0]),re<M&&fe===pe){var he=Pm(me.y0,me.x0),ge=Pm(I.y0,I.x0);de.push([`A`,re,re,0,Hm(he,ge),1,e+I.cx+I.x0,t+I.cy+I.y0])}else{if(fe>0){var _e=Pm(me.y0,me.x0),ve=Pm(me.y1,me.x1),ye=zm(e,t,i,ve);de.push([`A`,fe,fe,0,Hm(_e,ve),1,ye.x,ye.y])}var be=Pm(me.cy+me.y1,me.cx+me.x1),xe=Pm(I.cy+I.y1,I.cx+I.x1),Se=zm(e,t,i,xe);if(de.push([`A`,i,i,0,Hm(be,xe),1,Se.x,Se.y]),pe>0){var Ce=Pm(I.y1,I.x1),we=Pm(I.y0,I.x0);de.push([`A`,pe,pe,0,Hm(Ce,we),1,e+I.cx+I.x0,t+I.cy+I.y0])}}}else de.push([`M`,s.x,s.y]),de.push([`A`,i,i,0,le,1,c.x,c.y]);if(a<Rm)de.push([`L`,u.x,u.y]);else if(ie>Rm){var Te=Lm(O,ie),Ee=Lm(D,ie),De=Vm(v,y,0,0,a-i,Ee,ue),Oe=Vm(0,0,S,C,a-i,Te,ue);if(de.push([`L`,e+De.cx+De.x0,t+De.cy+De.y0]),ie<ne&&Te===Ee){var ke=Pm(De.y0,De.x0),Ae=Pm(Oe.y0,Oe.x0),je=zm(e,t,a,Ae);de.push([`A`,re,re,0,Hm(ke,Ae),1,je.x,je.y])}else{if(Ee>0){var Me=Pm(De.y0,De.x0),Ne=Pm(De.y1,De.x1),Pe=zm(e,t,a-i,Ne);de.push([`A`,Ee,Ee,0,Hm(Me,Ne),1,Pe.x,Pe.y])}var Fe=Pm(De.cy+De.y1,De.cx+De.x1),Ie=Pm(Oe.cy+Oe.y1,Oe.cx+Oe.x1),Le=zm(e,t,a,Ie);if(de.push([`A`,a,a,0,Hm(Ie,Fe),0,Le.x,Le.y]),de.push([`L`,Le.x,Le.y]),Te>0){var Re=Pm(Oe.y1,Oe.x1),ze=Pm(Oe.y0,Oe.x0);de.push([`A`,Te,Te,0,Hm(Re,ze),1,e+Oe.cx+Oe.x0,t+Oe.cy+Oe.y0])}}}else de.push([`L`,u.x,u.y]),de.push([`A`,a,a,0,le,0,l.x,l.y]);return de.push([`Z`]),de}}}])}(ff);Um.PARSED_STYLE_LIST=new Set([].concat(l(ff.PARSED_STYLE_LIST),[`x`,`y`,`sr`,`sr0`,`radius`,`startAngle`,`endAngle`]));var Wm={duration:500},Gm={duration:1e3,easing:`cubic-bezier(0.250, 0.460, 0.450, 0.940)`,iterations:1,fill:`both`},Km;(function(e){e.NodeAdded=`NodeAdded`,e.NodeUpdated=`NodeUpdated`,e.NodeRemoved=`NodeRemoved`,e.EdgeAdded=`EdgeAdded`,e.EdgeUpdated=`EdgeUpdated`,e.EdgeRemoved=`EdgeRemoved`,e.ComboAdded=`ComboAdded`,e.ComboUpdated=`ComboUpdated`,e.ComboRemoved=`ComboRemoved`})(Km||={});var qm;(function(e){e.DRAW=`draw`,e.COLLAPSE=`collapse`,e.EXPAND=`expand`,e.TRANSFORM=`transform`})(qm||={});var Jm;(function(e){e.CLICK=`canvas:click`,e.DBLCLICK=`canvas:dblclick`,e.POINTER_OVER=`canvas:pointerover`,e.POINTER_LEAVE=`canvas:pointerleave`,e.POINTER_ENTER=`canvas:pointerenter`,e.POINTER_MOVE=`canvas:pointermove`,e.POINTER_OUT=`canvas:pointerout`,e.POINTER_DOWN=`canvas:pointerdown`,e.POINTER_UP=`canvas:pointerup`,e.CONTEXT_MENU=`canvas:contextmenu`,e.DRAG_START=`canvas:dragstart`,e.DRAG=`canvas:drag`,e.DRAG_END=`canvas:dragend`,e.DRAG_ENTER=`canvas:dragenter`,e.DRAG_OVER=`canvas:dragover`,e.DRAG_LEAVE=`canvas:dragleave`,e.DROP=`canvas:drop`,e.WHEEL=`canvas:wheel`})(Jm||={});var Ym;(function(e){e.CLICK=`combo:click`,e.DBLCLICK=`combo:dblclick`,e.POINTER_OVER=`combo:pointerover`,e.POINTER_LEAVE=`combo:pointerleave`,e.POINTER_ENTER=`combo:pointerenter`,e.POINTER_MOVE=`combo:pointermove`,e.POINTER_OUT=`combo:pointerout`,e.POINTER_DOWN=`combo:pointerdown`,e.POINTER_UP=`combo:pointerup`,e.CONTEXT_MENU=`combo:contextmenu`,e.DRAG_START=`combo:dragstart`,e.DRAG=`combo:drag`,e.DRAG_END=`combo:dragend`,e.DRAG_ENTER=`combo:dragenter`,e.DRAG_OVER=`combo:dragover`,e.DRAG_LEAVE=`combo:dragleave`,e.DROP=`combo:drop`})(Ym||={});var X;(function(e){e.CLICK=`click`,e.DBLCLICK=`dblclick`,e.POINTER_OVER=`pointerover`,e.POINTER_LEAVE=`pointerleave`,e.POINTER_ENTER=`pointerenter`,e.POINTER_MOVE=`pointermove`,e.POINTER_OUT=`pointerout`,e.POINTER_DOWN=`pointerdown`,e.POINTER_UP=`pointerup`,e.CONTEXT_MENU=`contextmenu`,e.DRAG_START=`dragstart`,e.DRAG=`drag`,e.DRAG_END=`dragend`,e.DRAG_ENTER=`dragenter`,e.DRAG_OVER=`dragover`,e.DRAG_LEAVE=`dragleave`,e.DROP=`drop`,e.KEY_DOWN=`keydown`,e.KEY_UP=`keyup`,e.WHEEL=`wheel`,e.PINCH=`pinch`})(X||={});var Xm;(function(e){e.KEY_DOWN=`keydown`,e.KEY_UP=`keyup`})(Xm||={});var Zm;(function(e){e.CLICK=`edge:click`,e.DBLCLICK=`edge:dblclick`,e.POINTER_OVER=`edge:pointerover`,e.POINTER_LEAVE=`edge:pointerleave`,e.POINTER_ENTER=`edge:pointerenter`,e.POINTER_MOVE=`edge:pointermove`,e.POINTER_OUT=`edge:pointerout`,e.POINTER_DOWN=`edge:pointerdown`,e.POINTER_UP=`edge:pointerup`,e.CONTEXT_MENU=`edge:contextmenu`,e.DRAG_ENTER=`edge:dragenter`,e.DRAG_OVER=`edge:dragover`,e.DRAG_LEAVE=`edge:dragleave`,e.DROP=`edge:drop`})(Zm||={});var Z;(function(e){e.BEFORE_CANVAS_INIT=`beforecanvasinit`,e.AFTER_CANVAS_INIT=`aftercanvasinit`,e.BEFORE_SIZE_CHANGE=`beforesizechange`,e.AFTER_SIZE_CHANGE=`aftersizechange`,e.BEFORE_ELEMENT_CREATE=`beforeelementcreate`,e.AFTER_ELEMENT_CREATE=`afterelementcreate`,e.BEFORE_ELEMENT_UPDATE=`beforeelementupdate`,e.AFTER_ELEMENT_UPDATE=`afterelementupdate`,e.BEFORE_ELEMENT_DESTROY=`beforeelementdestroy`,e.AFTER_ELEMENT_DESTROY=`afterelementdestroy`,e.BEFORE_ELEMENT_TRANSLATE=`beforeelementtranslate`,e.AFTER_ELEMENT_TRANSLATE=`afterelementtranslate`,e.BEFORE_DRAW=`beforedraw`,e.AFTER_DRAW=`afterdraw`,e.BEFORE_RENDER=`beforerender`,e.AFTER_RENDER=`afterrender`,e.BEFORE_ANIMATE=`beforeanimate`,e.AFTER_ANIMATE=`afteranimate`,e.BEFORE_LAYOUT=`beforelayout`,e.AFTER_LAYOUT=`afterlayout`,e.BEFORE_STAGE_LAYOUT=`beforestagelayout`,e.AFTER_STAGE_LAYOUT=`afterstagelayout`,e.BEFORE_TRANSFORM=`beforetransform`,e.AFTER_TRANSFORM=`aftertransform`,e.BATCH_START=`batchstart`,e.BATCH_END=`batchend`,e.BEFORE_DESTROY=`beforedestroy`,e.AFTER_DESTROY=`afterdestroy`,e.BEFORE_RENDERER_CHANGE=`beforerendererchange`,e.AFTER_RENDERER_CHANGE=`afterrendererchange`})(Z||={});var Qm;(function(e){e.UNDO=`undo`,e.REDO=`redo`,e.CANCEL=`cancel`,e.ADD=`add`,e.CLEAR=`clear`,e.CHANGE=`change`})(Qm||={});var $m;(function(e){e.CLICK=`node:click`,e.DBLCLICK=`node:dblclick`,e.POINTER_OVER=`node:pointerover`,e.POINTER_LEAVE=`node:pointerleave`,e.POINTER_ENTER=`node:pointerenter`,e.POINTER_MOVE=`node:pointermove`,e.POINTER_OUT=`node:pointerout`,e.POINTER_DOWN=`node:pointerdown`,e.POINTER_UP=`node:pointerup`,e.CONTEXT_MENU=`node:contextmenu`,e.DRAG_START=`node:dragstart`,e.DRAG=`node:drag`,e.DRAG_END=`node:dragend`,e.DRAG_ENTER=`node:dragenter`,e.DRAG_OVER=`node:dragover`,e.DRAG_LEAVE=`node:dragleave`,e.DROP=`node:drop`})($m||={});var eh=`combo`,th=`tree`,nh;(function(e){e.NODE=`node`,e.EDGE=`edge`,e.COMBO=`combo`,e.THEME=`theme`,e.PALETTE=`palette`,e.LAYOUT=`layout`,e.BEHAVIOR=`behavior`,e.PLUGIN=`plugin`,e.ANIMATION=`animation`,e.TRANSFORM=`transform`,e.SHAPE=`shape`})(nh||={});var rh={animation:{},behavior:{},combo:{},edge:{},layout:{},node:{},palette:{},theme:{},plugin:{},transform:{},shape:{}};function ih(e,t){let n=rh[e]?.[t];if(n)return n}var ah=`5.1.1`,oh=`G6`;function sh(e){return`[${oh} v${ah}] ${e}`}var ch={mute:!1,debug:e=>{!ch.mute&&console.debug(sh(e))},info:e=>{!ch.mute&&console.info(sh(e))},warn:e=>{!ch.mute&&console.warn(sh(e))},error:e=>{!ch.mute&&console.error(sh(e))}};function lh(e){let{theme:t}=e;return t?ih(nh.THEME,t)||(ch.warn(`The theme of ${t} is not registered.`),{}):{}}function uh(e,t){if(Array.isArray(e)&&e.length===0)return null;let n=Array.isArray(e)?e[0]:e,r=Array.isArray(e)?e.slice(1):t||[];return new Proxy(n,{get(e,t){return typeof e[t]==`function`&&![`onframe`,`onfinish`].includes(t)?(...n)=>{e[t](...n),r.forEach(e=>e[t]?.call(e,...n))}:t===`finished`?Promise.all([n.finished,...r.map(e=>e.finished)]):Reflect.get(e,t)},set(e,t,n){return[`onframe`,`onfinish`].includes(t)||r.forEach(e=>{e[t]=n}),Reflect.set(e,t,n)}})}function dh(e){let t=e.reduce((e,t)=>(Object.entries(t).forEach(([t,n])=>{e[t]===void 0?e[t]=[n]:e[t].push(n)}),e),{});Object.entries(t).forEach(([n,r])=>{(r.length!==e.length||r.some(e=>R(e))||r.every(e=>![`sourceNode`,`targetNode`,`childrenNode`].includes(n)&&qn(e,r[0])))&&delete t[n]});let n=Object.entries(t).reduce((e,[t,n])=>(n.forEach((n,r)=>{e[r]?e[r][t]=n:e[r]={[t]:n}}),e),[]);return e.length!==0&&n.length===0&&n.push({_:0},{_:0}),n}function fh(e){switch(e){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 ph(e,t){let{animation:n}=e;if(n===!1||t===!1)return!1;let r=Object.assign({},Wm);return $t(n)&&Object.assign(r,n),$t(t)&&Object.assign(r,t),r}function mh(e){return typeof e==`string`?ih(nh.ANIMATION,e)||(ch.warn(`The animation of ${e} is not registered.`),[]):e}function hh(e,t,n,r){let{animation:i}=e;if(i===!1||r===!1)return[];let a=e?.[t]?.animation;if(a===!1)return[];let o=a?.[n];if(o===!1)return[];let s=lh(e)[t]?.animation,c=(e=[])=>mh(e).map(e=>Object.assign(Object.assign(Object.assign(Object.assign({},Gm),$t(i)&&i),e),$t(r)&&r));if(o)return c(o);if(!s)return[];let l=s[n];return l===!1?[]:c(l)}function gh(e,t,n,r=[]){if(!r&&e===0&&t===0&&n===0)return null;if(Array.isArray(r)){let i=-1,a=[];for(let o=0;o<r.length;o++){let s=r[o];if(s[0]===`translate`){if(s[1]===e&&s[2]===t)return null;i=o,a.push([`translate`,e,t])}else if(s[0]===`translate3d`){if(s[1]===e&&s[2]===t&&s[3]===n)return null;i=o,a.push([`translate3d`,e,t,n??0])}else a.push(s)}return i===-1&&a.splice(0,0,hn(n)?[`translate3d`,e,t,n??0]:[`translate`,e,t]),a.length===0?null:a}let i=r?r.replace(/translate(3d)?\([^)]*\)/g,``):``;return n===0?`translate(${e}, ${t})${i}`:`translate3d(${e}, ${t}, ${n})${i}`}var _h=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},vh=(e,t,n)=>{if(!n.length)return null;let[r,i]=t,a=t=>{if(t){let n=e.getShape(t);if(!n)return null;let a=`get${wn(t)}Style`,o=(e?.[a])?.bind(e)||(e=>e);return{shape:n,fromStyle:o?.(r)||{},toStyle:o?.(i)||{}}}else return{shape:e,fromStyle:r,toStyle:i}},o,s=n.map(e=>{var{fields:t,shape:n,states:r}=e,i=_h(e,[`fields`,`shape`,`states`]);let s=a(n);if(!s)return null;let{shape:c,fromStyle:l,toStyle:u}=s,d=[{},{}];if(t.forEach(e=>{Object.assign(d[0],{[e]:l[e]??fh(e)}),Object.assign(d[1],{[e]:u[e]??fh(e)})}),d.some(e=>Object.keys(e).some(e=>[`x`,`y`,`z`].includes(e)))){let{x:e=0,y:t=0,z:n,transform:r=``}=c.attributes||{};d.forEach(i=>{i.transform=gh(i.x??e,i.y??t,i.z??n,r)})}let f=c.animate(dh(d),i);return n===void 0&&(o=f),f}).filter(Boolean),c=o||s?.[0];return c?uh(c,s.filter(e=>e!==e)):null},yh=[{fields:[`opacity`]}],bh=[{fields:[`x`,`y`]}],xh=[{fields:[`x`,`y`]}],Sh=xh,Ch=[{fields:[`sourceNode`,`targetNode`]}],wh=Ch,Th=[{fields:[`childrenNode`,`x`,`y`]}],Eh=Th;function Dh(e){return`source`in e&&`target`in e}function Oh(e){return e.length===2}function kh(e){return e.length===3}function Ah(e){return e instanceof Float32Array?!0:Array.isArray(e)&&(e.length===2||e.length===3)?e.every(e=>typeof e==`number`):!1}function jh(e,t,n){return e>=t&&e<=n}function Mh(e=0){if(Array.isArray(e)){let[t=0,n=t,r=t,i=n]=e;return[t,n,r,i]}return[e,e,e,e]}function Nh(e=0){let t=Mh(e);return t[0]+t[2]}function Ph(e){return e.max[0]-e.min[0]}function Fh(e){return e.max[1]-e.min[1]}function Ih(e){return[Ph(e),Fh(e)]}function Lh(e,t){let n=Ah(e)?Rh(e):e.getShape(`key`).getBounds();return t?zh(n,t):n}function Rh(e){let[t,n,r=0]=e,i=new ja;return i.setMinMax([t,n,r],[t,n,r]),i}function zh(e,t){let[n,r,i,a]=Mh(t),[o,s,c]=e.min,[l,u,d]=e.max,f=new ja;return f.setMinMax([o-a,s-n,c],[l+r,u+i,d]),f}function Bh(e){if(e.length===0)return new ja;if(e.length===1)return e[0];let t=new ja;t.setMinMax(e[0].min,e[0].max);for(let n=1;n<e.length;n++){let r=e[n];t.setMinMax([Math.min(t.min[0],r.min[0]),Math.min(t.min[1],r.min[1]),Math.min(t.min[2],r.min[2])],[Math.max(t.max[0],r.max[0]),Math.max(t.max[1],r.max[1]),Math.max(t.max[2],r.max[2])])}return t}function Vh(e,t){let[n,r]=e.min,[i,a]=e.max,[o,s]=t.min,[c,l]=t.max;return n>=o&&i<=c&&r>=s&&a<=l}function Hh(e,t){return jh(e[0],t.min[0],t.max[0])&&jh(e[1],t.min[1],t.max[1])}function Uh(e,t,n=!1){let{min:[r,i],max:[a,o]}=t,s=(e[1]===i||e[1]===o)&&(n||jh(e[0],r,a)),c=(e[0]===r||e[0]===a)&&(n||jh(e[1],i,o));return s||c}function Wh(e,t){return!Hh(e,t)}function Gh(e,t){let{center:n}=t;return e[0]===n[0]&&e[1]===n[1]}function Kh(e,t){let[n,r]=e,[i,a]=t.min,[o,s]=t.max,c=n-i,l=o-n,u=r-a,d=s-r,f=Math.min(c,l,u,d);return f===c?`left`:f===l?`right`:f===u?`top`:f===d?`bottom`:`left`}function qh(e,t){let n=In(e);if(Hh(e,t))switch(Kh(e,t)){case`left`:n[0]=t.min[0];break;case`right`:n[0]=t.max[0];break;case`top`:n[1]=t.min[1];break;case`bottom`:n[1]=t.max[1];break}else{let[r,i]=e,[a,o]=t.min,[s,c]=t.max;n[0]=jh(r,a,s)?r:r<a?a:s,n[1]=jh(i,o,c)?i:i<o?o:c}return n}function Jh(e,t){let{center:n}=e,[r,i]=Ih(e);return[t===`up`||t===`down`?n[0]:t===`right`?n[0]-r/6:n[0]+r/6,t===`left`||t===`right`?n[1]:t===`down`?n[1]-i/6:n[1]+i/6]}function Yh(e,t){let[n,r]=Ih(e);return[n,r]=t===`up`||t===`down`?[n,r]:[r,n],(r**2-(Math.sqrt((n/2)**2+r**2)-n/2)**2)/(2*r)}function Xh(e){let{min:[t,n],max:[r,i]}=e,a=[t,i],o=[r,i],s=[r,n],c=[t,n];return[[a,o],[o,s],[s,c],[c,a]]}var Zh=function(e,t){return e===t},Qh=function(){function e(e,t){t===void 0&&(t=null),this.value=e,this.next=t}return e.prototype.toString=function(e){return e?e(this.value):`${this.value}`},e}(),$h=function(){function e(e){e===void 0&&(e=Zh),this.head=null,this.tail=null,this.compare=e}return e.prototype.prepend=function(e){var t=new Qh(e,this.head);return this.head=t,this.tail||=t,this},e.prototype.append=function(e){var t=new Qh(e);return this.head?(this.tail.next=t,this.tail=t,this):(this.head=t,this.tail=t,this)},e.prototype.delete=function(e){if(!this.head)return null;for(var t=null;this.head&&this.compare(this.head.value,e);)t=this.head,this.head=this.head.next;var n=this.head;if(n!==null)for(;n.next;)this.compare(n.next.value,e)?(t=n.next,n.next=n.next.next):n=n.next;return this.compare(this.tail.value,e)&&(this.tail=n),t},e.prototype.find=function(e){var t=e.value,n=t===void 0?void 0:t,r=e.callback,i=r===void 0?void 0:r;if(!this.head)return null;for(var a=this.head;a;){if(i&&i(a.value)||n!==void 0&&this.compare(a.value,n))return a;a=a.next}return null},e.prototype.deleteTail=function(){var e=this.tail;if(this.head===this.tail)return this.head=null,this.tail=null,e;for(var t=this.head;t.next;)t.next.next?t=t.next:t.next=null;return this.tail=t,e},e.prototype.deleteHead=function(){if(!this.head)return null;var e=this.head;return this.head.next?this.head=this.head.next:(this.head=null,this.tail=null),e},e.prototype.fromArray=function(e){var t=this;return e.forEach(function(e){return t.append(e)}),this},e.prototype.toArray=function(){for(var e=[],t=this.head;t;)e.push(t),t=t.next;return e},e.prototype.reverse=function(){for(var e=this.head,t=null,n=null;e;)n=e.next,e.next=t,t=e,e=n;this.tail=this.head,this.head=t},e.prototype.toString=function(e){return e===void 0&&(e=void 0),this.toArray().map(function(t){return t.toString(e)}).toString()},e}();(function(){function e(){this.linkedList=new $h}return e.prototype.isEmpty=function(){return!this.linkedList.head},e.prototype.peek=function(){return this.linkedList.head?this.linkedList.head.value:null},e.prototype.enqueue=function(e){this.linkedList.append(e)},e.prototype.dequeue=function(){var e=this.linkedList.deleteHead();return e?e.value:null},e.prototype.toString=function(e){return this.linkedList.toString(e)},e})();var eg=function(e,t,n){t===void 0&&(t=[]);var r=t.filter(function(t){return t.source===e||t.target===e});return n===`target`?r.filter(function(t){return t.source===e}).map(function(e){return e.target}):n===`source`?r.filter(function(t){return t.target===e}).map(function(e){return e.source}):r.map(function(t){return t.source===e?t.target:t.source})},tg=function(e,t){return t.filter(function(t){return t.source===e})},ng=function(e,t){return t.filter(function(t){return t.source===e||t.target===e})},rg=function(e){var t={},n=e.nodes,r=n===void 0?[]:n,i=e.edges,a=i===void 0?[]:i;return r.forEach(function(e){t[e.id]={degree:0,inDegree:0,outDegree:0}}),a.forEach(function(e){t[e.source].degree++,t[e.source].outDegree++,t[e.target].degree++,t[e.target].inDegree++}),t},ig={}.toString,ag=function(e,t){return ig.call(e)===`[object `+t+`]`},og=(function(e){return ag(e,`Function`)}),sg=(function(e){return Array.isArray?Array.isArray(e):ag(e,`Array`)}),cg=(function(e){var t=typeof e;return e!==null&&t===`object`||t===`function`});function lg(e,t){if(e){var n;if(sg(e))for(var r=0,i=e.length;r<i&&(n=t(e[r],r),n!==!1);r++);else if(cg(e)){for(var a in e)if(e.hasOwnProperty(a)&&(n=t(e[a],a),n===!1))break}}}var ug=Array.prototype;ug.splice,ug.indexOf,Array.prototype.splice;var dg=(function(e){return ag(e,`String`)});Number.isInteger&&Number.isInteger,180/Math.PI,Math.PI/180;var fg=Object.values?function(e){return Object.values(e)}:function(e){var t=[];return lg(e,function(n,r){og(e)&&r===`prototype`||t.push(n)}),t};({}).toString;var pg=function(e){if(typeof e!=`object`||!e)return e;var t;if(sg(e)){t=[];for(var n=0,r=e.length;n<r;n++)typeof e[n]==`object`&&e[n]!=null?t[n]=pg(e[n]):t[n]=e[n]}else for(var i in t={},e)typeof e[i]==`object`&&e[i]!=null?t[i]=pg(e[i]):t[i]=e[i];return t},mg=(function(e,t){if(!og(e))throw TypeError(`Expected a function`);var n=function(){var r=[...arguments],i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return a.set(i,o),o};return n.cache=new Map,n});H();var hg;mg(function(e,t){t===void 0&&(t={});var n=t.fontSize,r=t.fontFamily,i=t.fontWeight,a=t.fontStyle,o=t.fontVariant;return hg||=document.createElement(`canvas`).getContext(`2d`),hg.font=[a,o,i,n+`px`,r].join(` `),hg.measureText(dg(e)?e:``).width},function(e,t){return t===void 0&&(t={}),yr([e],fg(t)).join(``)}),function(){function e(){this.map={}}return e.prototype.has=function(e){return this.map[e]!==void 0},e.prototype.get=function(e,t){var n=this.map[e];return n===void 0?t:n},e.prototype.set=function(e,t){this.map[e]=t},e.prototype.clear=function(){this.map={}},e.prototype.delete=function(e){delete this.map[e]},e.prototype.size=function(){return Object.keys(this.map).length},e}(),H();var gg=function(e,t,n){for(var r=1/0,i,a=0;a<t.length;a++){var o=t[a].id;!n[o]&&e[o]<=r&&(r=e[o],i=t[a])}return i},_g=function(e,t,n,r){var i=e.nodes,a=i===void 0?[]:i,o=e.edges,s=o===void 0?[]:o,c=[],l={},u={},d={};a.forEach(function(e,n){var r=e.id;c.push(r),u[r]=1/0,r===t&&(u[r]=0)});for(var f=a.length,p=function(e){var t=gg(u,a,l),i=t.id;if(l[i]=!0,u[i]===1/0)return`continue`;var o=[];o=n?tg(i,s):ng(i,s),o.forEach(function(e){var n=e.target,a=e.source,o=n===i?a:n,s=r&&e[r]?e[r]:1;u[o]>u[t.id]+s?(u[o]=u[t.id]+s,d[o]=[t.id]):u[o]===u[t.id]+s&&d[o].push(t.id)})},m=0;m<f;m++)p(m);d[t]=[t];var h={};for(var g in u)u[g]!==1/0&&vg(t,g,d,h);var _={};for(var g in h)_[g]=h[g][0];return{length:u,path:_,allPath:h}};function vg(e,t,n,r){if(e===t)return[e];if(r[t])return r[t];for(var i=[],a=0,o=n[t];a<o.length;a++){var s=o[a],c=vg(e,s,n,r);if(!c)return;for(var l=0,u=c;l<u.length;l++){var d=u[l];sg(d)?i.push(B(B([],d,!0),[t],!1)):i.push([d,t])}}return r[t]=i,r[t]}var yg=function(e,t,n,r,i){var a=_g(e,t,r,i),o=a.length,s=a.path,c=a.allPath;return{length:o[n],path:s[n],allPath:c[n]}};(function(){function e(e){this.arr=e}return e.prototype.getArr=function(){return this.arr||[]},e.prototype.add=function(t){var n=t.arr;if(!this.arr?.length)return new e(n);if(!n?.length)return new e(this.arr);if(this.arr.length===n.length){var r=[];for(var i in this.arr)r[i]=this.arr[i]+n[i];return new e(r)}},e.prototype.subtract=function(t){var n=t.arr;if(!this.arr?.length)return new e(n);if(!n?.length)return new e(this.arr);if(this.arr.length===n.length){var r=[];for(var i in this.arr)r[i]=this.arr[i]-n[i];return new e(r)}},e.prototype.avg=function(t){var n=[];if(t!==0)for(var r in this.arr)n[r]=this.arr[r]/t;return new e(n)},e.prototype.negate=function(){var t=[];for(var n in this.arr)t[n]=-this.arr[n];return new e(t)},e.prototype.squareEuclideanDistance=function(e){var t=e.arr;if(!this.arr?.length||!t?.length)return 0;if(this.arr.length===t.length){var n=0;for(var r in this.arr)n+=(this.arr[r]-e.arr[r])**2;return n}},e.prototype.euclideanDistance=function(e){var t=e.arr;if(!this.arr?.length||!t?.length)return 0;if(this.arr.length===t.length){var n=0;for(var r in this.arr)n+=(this.arr[r]-e.arr[r])**2;return Math.sqrt(n)}else console.error(`The two vectors are unequal in length.`)},e.prototype.normalize=function(){var t=[],n=pg(this.arr);n.sort(function(e,t){return e-t});var r=n[n.length-1],i=n[0];for(var a in this.arr)t[a]=(this.arr[a]-i)/(r-i);return new e(t)},e.prototype.norm2=function(){if(!this.arr?.length)return 0;var e=0;for(var t in this.arr)e+=this.arr[t]**2;return Math.sqrt(e)},e.prototype.dot=function(e){var t=e.arr;if(!this.arr?.length||!t?.length)return 0;if(this.arr.length===t.length){var n=0;for(var r in this.arr)n+=this.arr[r]*e.arr[r];return n}else console.error(`The two vectors are unequal in length.`)},e.prototype.equal=function(e){var t=e.arr;if(this.arr?.length!==t?.length)return!1;for(var n in this.arr)if(this.arr[n]!==t[n])return!1;return!0},e})();var bg;(function(e){e.EuclideanDistance=`euclideanDistance`})(bg||={}),function(){function e(e){this.count=e.length,this.parent={};for(var t=0,n=e;t<n.length;t++){var r=n[t];this.parent[r]=r}}return e.prototype.find=function(e){for(;this.parent[e]!==e;)e=this.parent[e];return e},e.prototype.union=function(e,t){var n=this.find(e),r=this.find(t);n!==r&&(n<r?(this.parent[t]!==t&&this.union(this.parent[t],e),this.parent[t]=this.parent[e]):(this.parent[e]!==e&&this.union(this.parent[e],t),this.parent[e]=this.parent[t]))},e.prototype.connected=function(e,t){return this.find(e)===this.find(t)},e}();var xg=function(e,t){return e-t};(function(){function e(e){e===void 0&&(e=xg),this.compareFn=e,this.list=[]}return e.prototype.getLeft=function(e){return 2*e+1},e.prototype.getRight=function(e){return 2*e+2},e.prototype.getParent=function(e){return e===0?null:Math.floor((e-1)/2)},e.prototype.isEmpty=function(){return this.list.length<=0},e.prototype.top=function(){return this.isEmpty()?void 0:this.list[0]},e.prototype.delMin=function(){var e=this.top(),t=this.list.pop();return this.list.length>0&&(this.list[0]=t,this.moveDown(0)),e},e.prototype.insert=function(e){if(e!==null){this.list.push(e);var t=this.list.length-1;return this.moveUp(t),!0}return!1},e.prototype.moveUp=function(e){for(var t=this.getParent(e);e&&e>0&&this.compareFn(this.list[t],this.list[e])>0;){var n=this.list[t];this.list[t]=this.list[e],this.list[e]=n,e=t,t=this.getParent(e)}},e.prototype.moveDown=function(e){var t,n=e,r=this.getLeft(e),i=this.getRight(e),a=this.list.length;r!==null&&r<a&&this.compareFn(this.list[n],this.list[r])>0?n=r:i!==null&&i<a&&this.compareFn(this.list[n],this.list[i])>0&&(n=i),e!==n&&(t=[this.list[n],this.list[e]],this.list[e]=t[0],this.list[n]=t[1],this.moveDown(n))},e})();var Sg=function(e,t,n){typeof t!=`number`&&(t=1e-6),typeof n!=`number`&&(n=.85);for(var r=1,i=0,a=1e3,o=e.nodes,s=o===void 0?[]:o,c=e.edges,l=c===void 0?[]:c,u=s.length,d,f={},p={},m=0;m<u;++m){var h=s[m],g=h.id;f[g]=1/u,p[g]=1/u}for(var _=rg(e);a>0&&r>t;){i=0;for(var m=0;m<u;++m){var h=s[m],g=h.id;if(d=0,_[h.id].inDegree===0)f[g]=0;else{for(var v=eg(g,l,`source`),y=0;y<v.length;++y){var b=v[y],x=_[b].outDegree;x>0&&(d+=p[b]/x)}f[g]=n*d,i+=f[g]}}i=(1-i)/u,r=0;for(var m=0;m<u;++m){var h=s[m],g=h.id;d=f[g]+i,r+=Math.abs(d-p[g]),p[g]=d}--a}return p},Cg=function(){function e(e,t,n,r){e===void 0&&(e=-1),t===void 0&&(t=-1),n===void 0&&(n=-1),r===void 0&&(r=`-1`),this.id=e,this.from=t,this.to=n,this.label=r}return e}(),wg=function(){function e(e,t){e===void 0&&(e=-1),t===void 0&&(t=`-1`),this.id=e,this.label=t,this.edges=[],this.edgeMap={}}return e.prototype.addEdge=function(e){this.edges.push(e),this.edgeMap[e.id]=e},e}(),Tg=function(){function e(e,t,n){e===void 0&&(e=-1),t===void 0&&(t=!0),n===void 0&&(n=!1),this.id=e,this.edgeIdAutoIncrease=t,this.edges=[],this.nodes=[],this.nodeMap={},this.edgeMap={},this.nodeLabelMap={},this.edgeLabelMap={},this.counter=0,this.directed=n}return e.prototype.getNodeNum=function(){return this.nodes.length},e.prototype.addNode=function(e,t){if(!this.nodeMap[e]){var n=new wg(e,t);this.nodes.push(n),this.nodeMap[e]=n,this.nodeLabelMap[t]||(this.nodeLabelMap[t]=[]),this.nodeLabelMap[t].push(e)}},e.prototype.addEdge=function(e,t,n,r){if((this.edgeIdAutoIncrease||e===void 0)&&(e=this.counter++),!(this.nodeMap[t]&&this.nodeMap[n]&&this.nodeMap[n].edgeMap[e])){var i=new Cg(e,t,n,r);if(this.edges.push(i),this.edgeMap[e]=i,this.nodeMap[t].addEdge(i),this.edgeLabelMap[r]||(this.edgeLabelMap[r]=[]),this.edgeLabelMap[r].push(i),!this.directed){var a=new Cg(e,n,t,r);this.nodeMap[n].addEdge(a),this.edgeLabelMap[r].push(a)}}},e}(),Eg=function(){function e(e,t,n,r,i){this.fromNode=e,this.toNode=t,this.nodeEdgeNodeLabel={nodeLabel1:n||`-1`,edgeLabel:r||`-1`,nodeLabel2:i||`-1`}}return e.prototype.equalTo=function(e){return this.fromNode===e.formNode&&this.toNode===e.toNode&&this.nodeEdgeNodeLabel===e.nodeEdgeNodeLabel},e.prototype.notEqualTo=function(e){return!this.equalTo(e)},e}(),Dg=function(){function e(){this.rmpath=[],this.dfsEdgeList=[]}return e.prototype.equalTo=function(e){var t=this.dfsEdgeList.length;if(t!==e.length)return!1;for(var n=0;n<t;n++)if(this.dfsEdgeList[n]!==e[n])return!1;return!0},e.prototype.notEqualTo=function(e){return!this.equalTo(e)},e.prototype.pushBack=function(e,t,n,r,i){return this.dfsEdgeList.push(new Eg(e,t,n,r,i)),this.dfsEdgeList},e.prototype.toGraph=function(e,t){e===void 0&&(e=-1),t===void 0&&(t=!1);var n=new Tg(e,!0,t);return this.dfsEdgeList.forEach(function(e){var t=e.fromNode,r=e.toNode,i=e.nodeEdgeNodeLabel,a=i.nodeLabel1,o=i.edgeLabel,s=i.nodeLabel2;a!==`-1`&&n.addNode(t,a),s!==`-1`&&n.addNode(r,s),a!==`-1`&&s!==a&&n.addEdge(void 0,t,r,o)}),n},e.prototype.buildRmpath=function(){this.rmpath=[];for(var e=void 0,t=this.dfsEdgeList.length-1;t>=0;t--){var n=this.dfsEdgeList[t],r=n.fromNode,i=n.toNode;r<i&&(e===void 0||i===e)&&(this.rmpath.push(t),e=r)}return this.rmpath},e.prototype.getNodeNum=function(){var e={};return this.dfsEdgeList.forEach(function(t){e[t.fromNode]||(e[t.fromNode]=!0),e[t.toNode]||(e[t.toNode]=!0)}),Object.keys(e).length},e}(),Og=function(){function e(e){if(this.his={},this.nodesUsed={},this.edgesUsed={},this.edges=[],e){for(;e;){var t=e.edge;this.edges.push(t),this.nodesUsed[t.from]=1,this.nodesUsed[t.to]=1,this.edgesUsed[t.id]=1,e=e.preNode}this.edges=this.edges.reverse()}}return e.prototype.hasNode=function(e){return this.nodesUsed[e.id]===1},e.prototype.hasEdge=function(e){return this.edgesUsed[e.id]===1},e}();(function(){function e(e){var t=e.graphs,n=e.minSupport,r=n===void 0?2:n,i=e.minNodeNum,a=i===void 0?1:i,o=e.maxNodeNum,s=o===void 0?4:o,c=e.top,l=c===void 0?10:c,u=e.directed,d=u===void 0?!1:u,f=e.verbose,p=f===void 0?!1:f;this.graphs=t,this.dfsCode=new Dg,this.support=0,this.frequentSize1Subgraphs=[],this.frequentSubgraphs=[],this.minSupport=r,this.top=l,this.directed=d,this.counter=0,this.maxNodeNum=s,this.minNodeNum=a,this.verbose=p,this.maxNodeNum<this.minNodeNum&&(this.maxNodeNum=this.minNodeNum),this.reportDF=[]}return e.prototype.findForwardRootEdges=function(e,t){var n=this,r=[],i=e.nodeMap;return t.edges.forEach(function(e){(n.directed||t.label<=i[e.to].label)&&r.push(e)}),r},e.prototype.findBackwardEdge=function(e,t,n,r){if(!this.directed&&t===n)return null;for(var i=e.nodeMap,a=i[n.to].edges,o=a.length,s=0;s<o;s++){var c=a[s];if(!(r.hasEdge(c)||c.to!==t.from)){if(!this.directed){if(t.label<c.label||t.label===c.label&&i[t.to].label<=i[n.to].label)return c}else if(i[t.from].label<i[n.to].label||i[t.from].label===i[n.to].label&&t.label<=c.label)return c}}return null},e.prototype.findForwardPureEdges=function(e,t,n,r){for(var i=[],a=t.to,o=e.nodeMap[a].edges,s=o.length,c=0;c<s;c++){var l=o[c],u=e.nodeMap[l.to];n<=u.label&&!r.hasNode(u)&&i.push(l)}return i},e.prototype.findForwardRmpathEdges=function(e,t,n,r){for(var i=[],a=e.nodeMap,o=a[t.to].label,s=a[t.from].edges,c=s.length,l=0;l<c;l++){var u=s[l],d=a[u.to].label;t.to===u.to||n>d||r.hasNode(a[u.to])||(t.label<u.label||t.label===u.label&&o<=d)&&i.push(u)}return i},e.prototype.getSupport=function(e){var t={};return e.forEach(function(e){t[e.graphId]||(t[e.graphId]=!0)}),Object.keys(t).length},e.prototype.findMinLabel=function(e){var t=void 0;return Object.keys(e).forEach(function(n){var r=e[n],i=r.nodeLabel1,a=r.edgeLabel,o=r.nodeLabel2;if(!t){t={nodeLabel1:i,edgeLabel:a,nodeLabel2:o};return}(i<t.nodeLabel1||i===t.nodeLabel1&&a<t.edgeLabel||i===t.nodeLabel1&&a===t.edgeLabel&&o<t.nodeLabel2)&&(t={nodeLabel1:i,edgeLabel:a,nodeLabel2:o})}),t},e.prototype.isMin=function(){var e=this,t=this.dfsCode;if(this.verbose&&console.log(`isMin checking`,t),t.dfsEdgeList.length===1)return!0;var n=this.directed,r=t.toGraph(-1,n),i=r.nodeMap,a=new Dg,o={};r.nodes.forEach(function(t){e.findForwardRootEdges(r,t).forEach(function(e){var n=i[e.to],a=`${t.label}-${e.label}-${n.label}`;o[a]||(o[a]={projected:[],nodeLabel1:t.label,edgeLabel:e.label,nodeLabel2:n.label});var s={graphId:r.id,edge:e,preNode:null};o[a].projected.push(s)})});var s=this.findMinLabel(o);if(s)return a.dfsEdgeList.push(new Eg(0,1,s.nodeLabel1,s.edgeLabel,s.nodeLabel2)),function o(s){for(var c=a.buildRmpath(),l=a.dfsEdgeList[0].nodeEdgeNodeLabel.nodeLabel1,u=a.dfsEdgeList[c[0]].toNode,d={},f=!1,p=0,m=n?-1:0,h=function(t){if(f)return`break`;s.forEach(function(n){var i=new Og(n),o=e.findBackwardEdge(r,i.edges[c[t]],i.edges[c[0]],i);o&&(d[o.label]||(d[o.label]={projected:[],edgeLabel:o.label}),d[o.label].projected.push({graphId:r.id,edge:d,preNode:n}),p=a.dfsEdgeList[c[t]].fromNode,f=!0)})},g=c.length-1;g>m&&h(g)!==`break`;g--);if(f){var _=e.findMinLabel(d);a.dfsEdgeList.push(new Eg(u,p,`-1`,_.edgeLabel,`-1`));var v=a.dfsEdgeList.length-1;return e.dfsCode.dfsEdgeList[v]===a.dfsEdgeList[v]?o(d[_.edgeLabel].projected):!1}var y={};f=!1;var b=0;s.forEach(function(t){var n=new Og(t),a=e.findForwardPureEdges(r,n.edges[c[0]],l,n);a.length>0&&(f=!0,b=u,a.forEach(function(e){var n=`${e.label}-${i[e.to].label}`;y[n]||(y[n]={projected:[],edgeLabel:e.label,nodeLabel2:i[e.to].label}),y[n].projected.push({graphId:r.id,edge:e,preNode:t})}))});for(var x=c.length,S=function(t){if(f)return`break`;var n=c[t];s.forEach(function(t){var o=new Og(t),s=e.findForwardRmpathEdges(r,o.edges[n],l,o);s.length>0&&(f=!0,b=a.dfsEdgeList[n].fromNode,s.forEach(function(e){var n=`${e.label}-${i[e.to].label}`;y[n]||(y[n]={projected:[],edgeLabel:e.label,nodeLabel2:i[e.to].label}),y[n].projected.push({graphId:r.id,edge:e,preNode:t})}))})},g=0;g<x&&S(g)!==`break`;g++);if(!f)return!0;var C=e.findMinLabel(y);a.dfsEdgeList.push(new Eg(b,u+1,`-1`,C.edgeLabel,C.nodeLabel2));var w=a.dfsEdgeList.length-1;return t.dfsEdgeList[w]===a.dfsEdgeList[w]?o(y[`${C.edgeLabel}-${C.nodeLabel2}`].projected):!1}(o[`${s.nodeLabel1}-${s.edgeLabel}-${s.nodeLabel2}`].projected)},e.prototype.report=function(){if(!(this.dfsCode.getNodeNum()<this.minNodeNum)){this.counter++;var e=this.dfsCode.toGraph(this.counter,this.directed);this.frequentSubgraphs.push(pg(e))}},e.prototype.subGraphMining=function(e){var t=this;if(!(this.getSupport(e)<this.minSupport)&&this.isMin()){this.report();var n=this.dfsCode.getNodeNum(),r=this.dfsCode.buildRmpath(),i=this.dfsCode.dfsEdgeList[r[0]].toNode,a=this.dfsCode.dfsEdgeList[0].nodeEdgeNodeLabel.nodeLabel1,o={},s={};e.forEach(function(e){for(var c=t.graphs[e.graphId],l=c.nodeMap,u=new Og(e),d=r.length-1;d>=0;d--){var f=t.findBackwardEdge(c,u.edges[r[d]],u.edges[r[0]],u);if(f){var p=`${t.dfsCode.dfsEdgeList[r[d]].fromNode}-${f.label}`;s[p]||(s[p]={projected:[],toNodeId:t.dfsCode.dfsEdgeList[r[d]].fromNode,edgeLabel:f.label}),s[p].projected.push({graphId:e.graphId,edge:f,preNode:e})}}if(!(n>=t.maxNodeNum)){t.findForwardPureEdges(c,u.edges[r[0]],a,u).forEach(function(t){var n=`${i}-${t.label}-${l[t.to].label}`;o[n]||(o[n]={projected:[],fromNodeId:i,edgeLabel:t.label,nodeLabel2:l[t.to].label}),o[n].projected.push({graphId:e.graphId,edge:t,preNode:e})});for(var m=function(n){t.findForwardRmpathEdges(c,u.edges[r[n]],a,u).forEach(function(i){var a=`${t.dfsCode.dfsEdgeList[r[n]].fromNode}-${i.label}-${l[i.to].label}`;o[a]||(o[a]={projected:[],fromNodeId:t.dfsCode.dfsEdgeList[r[n]].fromNode,edgeLabel:i.label,nodeLabel2:l[i.to].label}),o[a].projected.push({graphId:e.graphId,edge:i,preNode:e})})},d=0;d<r.length;d++)m(d)}}),Object.keys(s).forEach(function(e){var n=s[e],r=n.toNodeId,a=n.edgeLabel;t.dfsCode.dfsEdgeList.push(new Eg(i,r,`-1`,a,`-1`)),t.subGraphMining(s[e].projected),t.dfsCode.dfsEdgeList.pop()}),Object.keys(o).forEach(function(e){var n=o[e],r=n.fromNodeId,a=n.edgeLabel,s=n.nodeLabel2;t.dfsCode.dfsEdgeList.push(new Eg(r,i+1,`-1`,a,s)),t.subGraphMining(o[e].projected),t.dfsCode.dfsEdgeList.pop()})}},e.prototype.generate1EdgeFrequentSubGraphs=function(){var e=this.graphs,t=this.directed,n=this.minSupport,r=this.frequentSize1Subgraphs,i={},a={},o={},s={};return Object.keys(e).forEach(function(n){var r=e[n],c=r.nodeMap;r.nodes.forEach(function(e,r){var l=e.label,u=`${n}-${l}`;if(!o[u]){var d=i[l]||0;d++,i[l]=d}o[u]={graphKey:n,label:l},e.edges.forEach(function(e){var r=l,i=c[e.to].label;if(!t&&r>i){var o=i;i=r,r=o}var u=e.label,d=`${n}-${r}-${u}-${i}`,f=`${r}-${u}-${i}`;if(!a[f]){var p=a[f]||0;p++,a[f]=p}s[d]={graphId:n,nodeLabel1:r,edgeLabel:u,nodeLabel2:i}})})}),Object.keys(i).forEach(function(e){if(!(i[e]<n)){var t={nodes:[],edges:[]};t.nodes.push({id:`0`,label:e}),r.push(t)}}),r},e.prototype.run=function(){var e=this;if(this.frequentSize1Subgraphs=this.generate1EdgeFrequentSubGraphs(),!(this.maxNodeNum<2)){var t=this.graphs;this.directed;var n={};Object.keys(t).forEach(function(r){var i=t[r],a=i.nodeMap;i.nodes.forEach(function(t){e.findForwardRootEdges(i,t).forEach(function(e){var i=a[e.to],o=`${t.label}-${e.label}-${i.label}`;n[o]||(n[o]={projected:[],nodeLabel1:t.label,edgeLabel:e.label,nodeLabel2:i.label});var s={graphId:r,edge:e,preNode:null};n[o].projected.push(s)})})}),Object.keys(n).forEach(function(t){var r=n[t],i=r.projected,a=r.nodeLabel1,o=r.edgeLabel,s=r.nodeLabel2;e.dfsCode.dfsEdgeList.push(new Eg(0,1,a,o,s)),e.subGraphMining(i),e.dfsCode.dfsEdgeList.pop()})}},e})(),function(){function e(e){e===void 0&&(e=10),this.linkedList=new $h,this.maxStep=e}return Object.defineProperty(e.prototype,`length`,{get:function(){return this.linkedList.toArray().length},enumerable:!1,configurable:!0}),e.prototype.isEmpty=function(){return!this.linkedList.head},e.prototype.isMaxStack=function(){return this.toArray().length>=this.maxStep},e.prototype.peek=function(){return this.isEmpty()?null:this.linkedList.head.value},e.prototype.push=function(e){this.linkedList.prepend(e),this.length>this.maxStep&&this.linkedList.deleteTail()},e.prototype.pop=function(){var e=this.linkedList.deleteHead();return e?e.value:null},e.prototype.toArray=function(){return this.linkedList.toArray().map(function(e){return e.value})},e.prototype.clear=function(){for(;!this.isEmpty();)this.pop()},e}();function Q(e){if(e.id!==void 0)return e.id;if(e.source!==void 0&&e.target!==void 0)return`${e.source}-${e.target}`;throw Error(sh(`The datum does not have available id.`))}function kg(e){return e.combo}function Ag(e,t){let n={nodes:(e.nodes||[]).map(Q),edges:(e.edges||[]).map(Q),combos:(e.combos||[]).map(Q)};return t?Object.values(n).flat():n}var jg=(e,t,n)=>{var r;switch(n.type){case`degree`:{let i=new Map;return(r=e.nodes)==null||r.forEach(e=>{let r=t(Q(e),n.direction).length;i.set(Q(e),r)}),i}case`betweenness`:return Ng(e,n.directed,n.weightPropertyName);case`closeness`:return Pg(e,n.directed,n.weightPropertyName);case`eigenvector`:return Ig(e,n.directed);case`pagerank`:return Fg(e,n.epsilon,n.linkProb);default:return Mg(e)}},Mg=e=>{var t;let n=new Map;return(t=e.nodes)==null||t.forEach(e=>{n.set(Q(e),0)}),n},Ng=(e,t,n)=>{let r=Mg(e),{nodes:i=[]}=e;return i.forEach(a=>{i.forEach(i=>{if(a!==i){let{allPath:o}=yg(e,Q(a),Q(i),t,n),s=o.length;o.flat().forEach(e=>{e!==Q(a)&&e!==Q(i)&&r.set(e,r.get(e)+1/s)})}})}),r},Pg=(e,t,n)=>{let r=new Map,{nodes:i=[]}=e;return i.forEach(a=>{let o=i.reduce((r,i)=>{if(a!==i){let{length:o}=yg(e,Q(a),Q(i),t,n);r+=o}return r},0);r.set(Q(a),1/o)}),r},Fg=(e,t,n)=>{var r;let i=new Map,a=Sg(e,t,n);return(r=e.nodes)==null||r.forEach(e=>{i.set(Q(e),a[Q(e)])}),i},Ig=(e,t)=>{let{nodes:n=[]}=e,r=Rg(Lg(e,t),n.length),i=new Map;return n.forEach((e,t)=>{i.set(Q(e),r[t])}),i},Lg=(e,t)=>{let{nodes:n=[],edges:r=[]}=e,i=Array(n.length).fill(null).map(()=>Array(n.length).fill(0));return r.forEach(({source:e,target:r})=>{let a=n.findIndex(t=>Q(t)===e),o=n.findIndex(e=>Q(e)===r);t?i[a][o]=1:(i[a][o]=1,i[o][a]=1)}),i},Rg=(e,t,n=100,r=1e-6)=>{let i=Array(t).fill(1),a=1/0;for(let o=0;o<n&&a>r;o++){let n=Array(t).fill(0);for(let r=0;r<t;r++)for(let a=0;a<t;a++)n[r]+=e[r][a]*i[a];let r=Math.sqrt(n.reduce((e,t)=>e+t*t,0));for(let e=0;e<t;e++)n[e]/=r;a=Math.sqrt(n.reduce((e,t,n)=>e+(t-i[n])*t,0)),i=n}return i};function zg(e,t,n,r=qn){let i=new Map(e.map(e=>[n(e),e])),a=new Map(t.map(e=>[n(e),e])),o=new Set(i.keys()),s=new Set(a.keys()),c=[],l=[],u=[],d=[];return s.forEach(e=>{o.has(e)?r(i.get(e),a.get(e))?d.push(a.get(e)):l.push(a.get(e)):c.push(a.get(e))}),o.forEach(e=>{s.has(e)||u.push(i.get(e))}),{enter:c,exit:u,keep:d,update:l}}function Bg(e,t,n){let r=e=>{n&&!n(e)||(e.style.visibility=t)};e.forEach(e=>{r(e)})}function Vg(e,t,n){let r={},i=e=>(e in r||(r[e]=0),`${t}-${e}-${r[e]++}`);return n.map(t=>typeof t==`string`?{type:t,key:i(t)}:typeof t==`function`?t.call(e):t.key?t:Object.assign(Object.assign({},t),{key:i(t.type)}))}var Hg=class{constructor(e){this.extensions=[],this.extensionMap={},this.context=e}setExtensions(e){let t=Vg(this.context.graph,this.category,e),{enter:n,update:r,exit:i,keep:a}=zg(this.extensions,t,e=>e.key);this.createExtensions(n),this.updateExtensions([...r,...a]),this.destroyExtensions(i),this.extensions=t}createExtension(e){let{category:t}=this,{key:n,type:r}=e,i=ih(t,r);if(!i)return ch.warn(`The extension ${r} of ${t} is not registered.`);let a=new i(this.context,e);a.initialized=!0,this.extensionMap[n]=a}createExtensions(e){e.forEach(e=>this.createExtension(e))}updateExtension(e){let{key:t}=e,n=this.extensionMap[t];n&&n.update(e)}updateExtensions(e){e.forEach(e=>this.updateExtension(e))}destroyExtension(e){let t=this.extensionMap[e];t&&(t.initialized&&!t.destroyed&&t.destroy(),delete this.extensionMap[e])}destroyExtensions(e){e.forEach(({key:e})=>this.destroyExtension(e))}destroy(){this.destroyExtensions(this.extensions),this.context={},this.extensions=[],this.extensionMap={}}},Ug=class{constructor(e,t){this.events=[],this.initialized=!1,this.destroyed=!1,this.context=e,this.options=t}update(e){this.options=Object.assign(this.options,e)}destroy(){this.context={},this.options={},this.destroyed=!0}},Wg=class extends Ug{},Gg=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.isOverlapping=(e,t)=>t.some(t=>e.intersects(t)),this.occupiedBounds=[],this.detectLabelCollision=e=>{let t=this.context.viewport,n={show:[],hide:[]};return this.occupiedBounds=[],e.forEach(e=>{let r=e.getShape(`label`).getRenderBounds();t.isInViewport(r,!0)&&!this.isOverlapping(r,this.occupiedBounds)?(n.show.push(e),this.occupiedBounds.push(zh(r,this.options.padding))):n.hide.push(e)}),n},this.hideLabelIfExceedViewport=(e,t)=>{let{exit:n}=zg(e,t,e=>e.id);n?.forEach(this.hideLabel)},this.nodeCentralities=new Map,this.sortNodesByCentrality=(e,t)=>{let{model:n}=this.context,r=n.getData(),i=n.getRelatedEdgesData.bind(n);return e.map(e=>(this.nodeCentralities.has(e.id)||(this.nodeCentralities=jg(r,i,t)),{node:e,centrality:this.nodeCentralities.get(e.id)})).sort((e,t)=>t.centrality-e.centrality).map(e=>e.node)},this.sortLabelElementsInView=e=>{let{sort:t,sortNode:n,sortCombo:r,sortEdge:i}=this.options,{model:a}=this.context;if(L(t))return e.sort((e,n)=>t(a.getElementDataById(e.id),a.getElementDataById(n.id)));let{node:o=[],edge:s=[],combo:c=[]}=pn(e,e=>e.type),l=L(r)?c.sort((e,t)=>r(...a.getComboData([e.id,t.id]))):c,u=L(n)?o.sort((e,t)=>n(...a.getNodeData([e.id,t.id]))):this.sortNodesByCentrality(o,n),d=L(i)?s.sort((e,t)=>i(...a.getEdgeData([e.id,t.id]))):s;return[...l,...u,...d]},this.labelElementsInView=[],this.isFirstRender=!0,this.onToggleVisibility=e=>{if(e.data?.stage===`zIndex`)return;if(!this.validate(e)){this.hiddenElements.size>0&&(this.hiddenElements.forEach(this.showLabel),this.hiddenElements.clear());return}let t=this.isFirstRender?this.getLabelElements():this.getLabelElementsInView();this.hideLabelIfExceedViewport(this.labelElementsInView,t),this.labelElementsInView=t;let n=this.sortLabelElementsInView(this.labelElementsInView),{show:r,hide:i}=this.detectLabelCollision(n);for(let e=r.length-1;e>=0;e--)this.showLabel(r[e]);i.forEach(this.hideLabel)},this.hiddenElements=new Map,this.hideLabel=e=>{let t=e.getShape(`label`);t&&Bg(t,`hidden`),this.hiddenElements.set(e.id,e)},this.showLabel=e=>{let t=e.getShape(`label`);t&&Bg(t,`visible`),e.toFront(),this.hiddenElements.delete(e.id)},this.onTransform=$n(this.onToggleVisibility,this.options.throttle,{leading:!0}),this.enableToggle=!0,this.toggle=e=>{this.enableToggle&&this.onToggleVisibility(e)},this.onBeforeRender=()=>{this.enableToggle=!1},this.onAfterRender=e=>{this.onToggleVisibility(e),this.enableToggle=!0},this.bindEvents()}update(e){this.unbindEvents(),super.update(e),this.bindEvents(),this.onToggleVisibility({})}getLabelElements(){let{elementMap:e}=this.context.element,t=[];for(let n in e){let r=e[n];r.isVisible()&&r.getShape(`label`)&&t.push(r)}return t}getLabelElementsInView(){let e=this.context.viewport;return this.getLabelElements().filter(t=>e.isInViewport(t.getShape(`key`).getRenderBounds()))}bindEvents(){let{graph:e}=this.context;e.on(Z.BEFORE_RENDER,this.onBeforeRender),e.on(Z.AFTER_RENDER,this.onAfterRender),e.on(Z.AFTER_DRAW,this.toggle),e.on(Z.AFTER_LAYOUT,this.toggle),e.on(Z.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){let{graph:e}=this.context;e.off(Z.BEFORE_RENDER,this.onBeforeRender),e.off(Z.AFTER_RENDER,this.onAfterRender),e.off(Z.AFTER_DRAW,this.toggle),e.off(Z.AFTER_LAYOUT,this.toggle),e.off(Z.AFTER_TRANSFORM,this.onTransform)}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}destroy(){this.unbindEvents(),super.destroy()}};Gg.defaultOptions={enable:!0,throttle:100,padding:0,sortNode:{type:`degree`}};var Kg=[0,0,0];function qg(e,t){if(e.length==t.length)return[e,t];if(kh(e)&&e[2]!==0||kh(t)&&t[2]!==0)throw Error(sh(`Vectors could not operate due to different dimensions.`));return[s_(e),s_(t)]}function Jg(e,t){return[e,t]=qg(e,t),e.map((e,n)=>e+t[n])}function Yg(e,t){return[e,t]=qg(e,t),e.map((e,n)=>e-t[n])}function Xg(e,t){return typeof t==`number`?e.map(e=>e*t):([e,t]=qg(e,t),e.map((e,n)=>e*t[n]))}function Zg(e,t){return typeof t==`number`?e.map(e=>e/t):([e,t]=qg(e,t),e.map((e,n)=>{if(t[n]==0)throw Error(sh(`Vector could not be divided by zero`));return e/t[n]}))}function Qg(e,t){return[e,t]=qg(e,t),e.reduce((e,n,r)=>e+n*t[r],0)}function $g(e,t){let n=c_(e),r=c_(t);return[n[1]*r[2]-n[2]*r[1],n[2]*r[0]-n[0]*r[2],n[0]*r[1]-n[1]*r[0]]}function e_(e,t){return e.map(e=>e*t)}function t_(e,t){return[e,t]=qg(e,t),Math.sqrt(e.reduce((e,n,r)=>e+(n-t[r])**2,0))}function n_(e,t){return[e,t]=qg(e,t),e.reduce((e,n,r)=>e+Math.abs(n-t[r]),0)}function r_(e){let t=e.reduce((e,t)=>e+t**2,0);return e.map(e=>e/Math.sqrt(t))}function i_(e,t,n=!1){[e,t]=qg(e,t);let r=e[0]*t[1]-e[1]*t[0],i=Math.acos(Xg(e,t).reduce((e,t)=>e+t,0)/(t_(e,Kg)*t_(t,Kg)));return n&&r<0&&(i=2*Math.PI-i),i}function a_(e,t=!0){return t?[-e[1],e[0]]:[e[1],-e[0]]}function o_(e,t){return e.map(e=>e%t)}function s_(e){return[e[0],e[1]]}function c_(e){return Oh(e)?[e[0],e[1],0]:e}function l_(e){let[t,n]=e;return!t&&!n?0:Math.atan2(n,t)}function u_(e,t){let[n,r]=e;if(t%360==0)return[n,r];let i=t*Math.PI/180,a=Math.cos(i),o=Math.sin(i);return[n*a-r*o,n*o+r*a]}function d_(e,t){let[n,r]=e,[i,a]=t;return $g(Yg(n,r),Yg(i,a)).every(e=>e===0)}function f_(e,t,n=!1){if(d_(e,t))return;let[r,i]=e,[a,o]=t,s=((r[0]-a[0])*(a[1]-o[1])-(r[1]-a[1])*(a[0]-o[0]))/((r[0]-i[0])*(a[1]-o[1])-(r[1]-i[1])*(a[0]-o[0])),c=o[0]-a[0]?(r[0]-a[0]+s*(i[0]-r[0]))/(o[0]-a[0]):(r[1]-a[1]+s*(i[1]-r[1]))/(o[1]-a[1]);if(!(!n&&(!jh(s,0,1)||!jh(c,0,1))))return[r[0]+s*(i[0]-r[0]),r[1]+s*(i[1]-r[1])]}function p_(e){if(Array.isArray(e))return jh(e[0],0,1)&&jh(e[1],0,1)?e:[.5,.5];let t=e.split(`-`);return[t.includes(`left`)?0:t.includes(`right`)?1:.5,t.includes(`top`)?0:t.includes(`bottom`)?1:.5]}function m_(e){let{x:t=0,y:n=0,z:r=0}=e.style||{};return[+t,+n,+r]}function h_(e){let{x:t,y:n,z:r}=e.style||{};return t!==void 0||n!==void 0||r!==void 0}function g_(e,t){let[n,r]=t,{min:i,max:a}=e;return[i[0]+n*(a[0]-i[0]),i[1]+r*(a[1]-i[1])]}function __(e,t=`center`){return g_(e,p_(t))}function v_(e){return[e.x,e.y,e.z??0]}function y_(e){return{x:e[0],y:e[1],z:e[2]??0}}function b_(e,t=0){return e.map(e=>parseFloat(e.toFixed(t)))}function x_(e,t,n,r=!1){if(qn(e,t))return e;let i=r_(r?Yg(e,t):Yg(t,e)),a=[i[0]*n,i[1]*n];return Jg(s_(e),a)}function S_(e,t){return e[1]===t[1]}function C_(e,t){return e[0]===t[0]}function w_(e,t){return S_(e,t)||C_(e,t)}function T_(e,t,n){return d_([e,t],[t,n])}function E_(e,t){return[2*t[0]-e[0],2*t[1]-e[1]]}function D_(e,t,n,r=!0,i=!1){for(let a=0;a<n.length;a++){let o=n[a],s=n[(a+1)%n.length];r&&(o=Jg(t,o),s=Jg(t,s));let c=f_([t,i?E_(e,t):e],[o,s]);if(c)return{point:c,line:[o,s]}}return{point:t,line:void 0}}function O_(e,t,n,r){let i=e[0],a=e[1],o=!1;n===void 0&&(n=0),r===void 0&&(r=t.length);let s=r-n;for(let e=0,r=s-1;e<s;r=e++){let s=t[e+n][0],c=t[e+n][1],l=t[r+n][0],u=t[r+n][1];c>a!=u>a&&i<(l-s)*(a-c)/(u-c)+s&&(o=!o)}return o}function k_(e,t,n=!1){return D_(e,__(t,`center`),[__(t,`left-top`),__(t,`right-top`),__(t,`right-bottom`),__(t,`left-bottom`)],!1,n).point}function A_(e,t,n=!1){let r=t.center,i=Yg(n?E_(e,r):e,t.center),a=Math.atan2(i[1],i[0]);if(isNaN(a))return r;let o=Ph(t)/2,s=Fh(t)/2;return[r[0]+o*Math.cos(a),r[1]+s*Math.sin(a)]}function j_(e,t){let n=1/0,r=[e[0],t[0]];return e.forEach(e=>{t.forEach(t=>{let i=t_(e,t);i<n&&(n=i,r=[e,t])})}),r}function M_(e,t){let n=1/0,r=[[0,0],[0,0]];return t.forEach(t=>{let i=N_(e,t);i<n&&(n=i,r=t)}),r}function N_(e,t){return t_(e,P_(e,t))}function P_(e,t){let[n,r]=t[0],[i,a]=t[1],[o,s]=e,c=i-n,l=a-r;if(c===0&&l===0)return[n,r];let u=((o-n)*c+(s-r)*l)/(c*c+l*l);return u>1?u=1:u<0&&(u=0),[n+u*c,r+u*l]}function F_(e){return Zg(e.reduce((e,t)=>Jg(e,t),[0,0]),e.length)}function I_(e,t=!0){let n=F_(e);return e.sort(([e,r],[i,a])=>{let o=Math.atan2(r-n[1],e-n[0]),s=Math.atan2(a-n[1],i-n[0]);return t?s-o:o-s})}function L_(e,t){return[e,[e[0],t[1]],t,[t[0],e[1]]]}var R_=class e{constructor(t,n,r){if(this.phase=n,this.pointerByTouch=[],this.initialDistance=null,this.emitter=t,e.instance)return e.callbacks[this.phase].push(r),e.instance;this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.bindEvents(),e.instance=this,e.callbacks[this.phase].push(r)}bindEvents(){let{emitter:e}=this;e.on(X.POINTER_DOWN,this.onPointerDown),e.on(X.POINTER_MOVE,this.onPointerMove),e.on(X.POINTER_UP,this.onPointerUp)}updatePointerPosition(e,t,n){let r=this.pointerByTouch.findIndex(t=>t.pointerId===e);r>=0&&(this.pointerByTouch[r]={x:t,y:n,pointerId:e})}onPointerDown(t){let{x:n,y:r}=t.client||{};if(!(n===void 0||r===void 0)&&(this.pointerByTouch.push({x:n,y:r,pointerId:t.pointerId}),t.pointerType===`touch`&&this.pointerByTouch.length===2)){e.isPinching=!0;let n=this.pointerByTouch[0].x-this.pointerByTouch[1].x,r=this.pointerByTouch[0].y-this.pointerByTouch[1].y;this.initialDistance=Math.sqrt(n*n+r*r),e.callbacks.pinchstart.forEach(e=>e(t,{scale:0}))}}onPointerMove(t){if(this.pointerByTouch.length!==2||this.initialDistance===null)return;let{x:n,y:r}=t.client||{};if(n===void 0||r===void 0)return;this.updatePointerPosition(t.pointerId,n,r);let 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;e.callbacks.pinchmove.forEach(e=>e(t,{scale:(o-1)*5}))}onPointerUp(t){var n;e.callbacks.pinchend.forEach(e=>e(t,{scale:0})),e.isPinching=!1,this.initialDistance=null,this.pointerByTouch=[],(n=e.instance)==null||n.tryDestroy()}destroy(){this.emitter.off(X.POINTER_DOWN,this.onPointerDown),this.emitter.off(X.POINTER_MOVE,this.onPointerMove),this.emitter.off(X.POINTER_UP,this.onPointerUp),e.instance=null}off(t,n){let r=e.callbacks[t].indexOf(n);r>-1&&e.callbacks[t].splice(r,1),this.tryDestroy()}tryDestroy(){Object.values(e.callbacks).every(e=>e.length===0)&&this.destroy()}};R_.isPinching=!1,R_.instance=null,R_.callbacks={pinchstart:[],pinchmove:[],pinchend:[]};var z_=new Set([`Control`,`Alt`,`Meta`,`Shift`]);function B_(e){return z_.has(e)}var V_=e=>e.map(e=>un(e)?e.toLocaleLowerCase():e),H_=class{constructor(e){this.map=new Map,this.boundHandlePinch=()=>{},this.recordKey=new Set,this.onKeyDown=e=>{e?.key&&(this.recordKey.add(e.key),this.trigger(e))},this.onKeyUp=e=>{e?.key&&this.recordKey.delete(e.key)},this.onKeyDownWindow=e=>{B_(e.key)&&this.recordKey.add(e.key)},this.onKeyUpWindow=e=>{B_(e.key)&&this.recordKey.delete(e.key)},this.onWheel=e=>{this.triggerExtendKey(X.WHEEL,e)},this.onDrag=e=>{this.triggerExtendKey(X.DRAG,e)},this.handlePinch=(e,t)=>{this.triggerExtendKey(X.PINCH,Object.assign(Object.assign({},e),t))},this.onFocus=()=>{this.recordKey.clear()},this.emitter=e,this.bindEvents()}bind(e,t){e.length!==0&&(e.includes(X.PINCH)&&!this.pinchHandler&&(this.boundHandlePinch=this.handlePinch.bind(this),this.pinchHandler=new R_(this.emitter,`pinchmove`,this.boundHandlePinch)),this.map.set(e,t))}unbind(e,t){this.map.forEach((n,r)=>{qn(r,e)&&(!t||t===n)&&this.map.delete(r)})}unbindAll(){this.map.clear()}match(e){return qn(V_(Array.from(this.recordKey)).sort(),V_(e).sort())}bindEvents(){var e;let{emitter:t}=this;window.addEventListener(X.KEY_DOWN,this.onKeyDownWindow),window.addEventListener(X.KEY_UP,this.onKeyUpWindow),t.on(X.KEY_DOWN,this.onKeyDown),t.on(X.KEY_UP,this.onKeyUp),t.on(X.WHEEL,this.onWheel),t.on(X.DRAG,this.onDrag),(e=globalThis.addEventListener)==null||e.call(globalThis,`focus`,this.onFocus)}trigger(e){this.map.forEach((t,n)=>{this.match(n)&&t(e)})}triggerExtendKey(e,t){this.map.forEach((n,r)=>{r.includes(e)&&qn(Array.from(this.recordKey),r.filter(t=>t!==e))&&n(t)})}destroy(){var e,t;this.unbindAll(),this.emitter.off(X.KEY_DOWN,this.onKeyDown),this.emitter.off(X.KEY_UP,this.onKeyUp),window.removeEventListener(X.KEY_DOWN,this.onKeyDownWindow),window.removeEventListener(X.KEY_UP,this.onKeyUpWindow),this.emitter.off(X.WHEEL,this.onWheel),this.emitter.off(X.DRAG,this.onDrag),(e=this.pinchHandler)==null||e.off(`pinchmove`,this.boundHandlePinch),(t=globalThis.removeEventListener)==null||t.call(globalThis,`focus`,this.onFocus)}},U_=class e extends Wg{constructor(t,n){super(t,Wn({},e.defaultOptions,n)),this.shortcut=new H_(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(e){if(!this.validate(e)||!this.isKeydown()||this.startPoint)return;let{canvas:t,graph:n}=this.context,r=Object.assign({},this.options.style);this.options.style.lineWidth&&(r.lineWidth=+this.options.style.lineWidth/n.getZoom()),this.rectShape=new _f({id:`g6-brush-select`,style:r}),t.appendChild(this.rectShape),this.startPoint=[e.canvas.x,e.canvas.y]}onPointerMove(e){var t;if(!this.startPoint)return;let{immediately:n,mode:r}=this.options;this.endPoint=W_(e,this.context.graph),(t=this.rectShape)==null||t.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&&r===`default`&&this.updateElementsStates(L_(this.startPoint,this.endPoint))}onPointerUp(e){if(this.startPoint){if(!this.endPoint){this.clearBrush();return}this.endPoint=W_(e,this.context.graph),this.updateElementsStates(L_(this.startPoint,this.endPoint)),this.clearBrush()}}clearStates(){this.endPoint||this.clearElementsStates()}clearElementsStates(){let{graph:e}=this.context,t=Object.values(e.getData()).reduce((e,t)=>Object.assign({},e,t.reduce((e,t)=>{let n=(t.states||[])?.filter(e=>e!==this.options.state);return e[Q(t)]=n,e},{})),{});e.setElementState(t,this.options.animation)}updateElementsStates(e){let{graph:t}=this.context,{enableElements:n,state:r,mode:i,onSelect:a}=this.options,o=this.selector(t,e,n),s={};switch(i){case`union`:o.forEach(e=>{s[e]=[...t.getElementState(e),r]});break;case`diff`:o.forEach(e=>{let n=t.getElementState(e);s[e]=n.includes(r)?n.filter(e=>e!==r):[...n,r]});break;case`intersect`:o.forEach(e=>{s[e]=t.getElementState(e).includes(r)?[r]:[]});break;default:o.forEach(e=>{s[e]=[r]});break}L(a)&&a(s),t.setElementState(s,this.options.animation)}selector(e,t,n){if(!n||n.length===0)return[];let r=[],i=e.getData();return n.forEach(n=>{i[`${n}s`].forEach(n=>{let i=Q(n);e.getElementVisibility(i)!==`hidden`&&O_(e.getElementPosition(i),t)&&r.push(i)})}),n.includes(`edge`)&&i.edges?.forEach(e=>{let{source:t,target:n}=e;r.includes(t)&&r.includes(n)&&r.push(Q(e))}),r}clearBrush(){var e;(e=this.rectShape)==null||e.remove(),this.rectShape=void 0,this.startPoint=void 0,this.endPoint=void 0}isKeydown(){let{trigger:e}=this.options,t=Array.isArray(e)?e:[e];return this.shortcut.match(t.filter(e=>e!==`drag`))}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}bindEvents(){let{graph:e}=this.context;e.on(X.POINTER_DOWN,this.onPointerDown),e.on(X.POINTER_MOVE,this.onPointerMove),e.on(X.POINTER_UP,this.onPointerUp),e.on(Jm.CLICK,this.clearStates)}unbindEvents(){let{graph:e}=this.context;e.off(X.POINTER_DOWN,this.onPointerDown),e.off(X.POINTER_MOVE,this.onPointerMove),e.off(X.POINTER_UP,this.onPointerUp),e.off(Jm.CLICK,this.clearStates)}update(e){this.unbindEvents(),this.options=Wn(this.options,e),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}};U_.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`}};var W_=(e,t)=>{if((e.targetType===`node`||e.targetType===`combo`)&&!(e.nativeEvent.target instanceof HTMLCanvasElement)){let[n,r]=t.getCanvasByClient([e.client.x,e.client.y]);return[n,r]}return[e.canvas.x,e.canvas.y]},G_=.8,K_=[`node`,`edge`,`combo`];function q_(e,t,n,r,i=0){r===`TB`&&t(e,i);let a=n(e);if(a)for(let e of a)q_(e,t,n,r,i+1);r===`BT`&&t(e,i)}function J_(e,t,n){let r=[[e,0]];for(;r.length;){let[e,i]=r.shift();t(e,i);let a=n(e);if(a)for(let e of a)r.push([e,i+1])}}function Y_(e,t,n,r,i=`both`){if(t===`combo`||t===`node`)return X_(e,n,r,i);let a=e.getEdgeData(n);if(!a)return[];let o=X_(e,a.source,r-1,i),s=X_(e,a.target,r-1,i);return Array.from(new Set([...o,...s,n]))}function X_(e,t,n,r=`both`){let i=new Set,a=new Set,o=new Set;return J_(t,(t,i)=>{i>n||(o.add(t),e.getRelatedEdgesData(t,r).forEach(e=>{let t=Q(e);!a.has(t)&&i<n&&(o.add(t),a.add(t))}))},t=>e.getRelatedEdgesData(t,r).map(e=>e.source===t?e.target:e.source).filter(e=>i.has(e)?!1:(i.add(e),!0))),Array.from(o)}function Z_(e){return e.states||[]}var Q_=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},$_=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.onClickSelect=e=>Q_(this,void 0,void 0,function*(){var t,n;this.validate(e)&&(yield this.updateState(e),(n=(t=this.options).onClick)==null||n.call(t,e))}),this.onClickCanvas=e=>Q_(this,void 0,void 0,function*(){var t,n;this.validate(e)&&(yield this.clearState(),(n=(t=this.options).onClick)==null||n.call(t,e))}),this.shortcut=new H_(t.graph),this.bindEvents()}bindEvents(){let{graph:e}=this.context;this.unbindEvents(),K_.forEach(t=>{e.on(`${t}:${X.CLICK}`,this.onClickSelect)}),e.on(Jm.CLICK,this.onClickCanvas)}get isMultipleSelect(){let{multiple:e,trigger:t}=this.options;return e&&this.shortcut.match(t)}getNeighborIds(e){let{target:t,targetType:n}=e,{graph:r}=this.context,{degree:i}=this.options;return Y_(r,n,t.id,typeof i==`function`?i(e):i).filter(e=>e!==t.id)}updateState(e){return Q_(this,void 0,void 0,function*(){let{state:t,unselectedState:n,neighborState:r,animation:i}=this.options;if(!t&&!r&&!n)return;let{target:a}=e,{graph:o}=this.context,s=Z_(o.getElementData(a.id)).includes(t)?`unselect`:`select`,c={},l=this.isMultipleSelect,u=[a.id],d=this.getNeighborIds(e);if(!l)if(s===`select`){Object.assign(c,this.getClearStates(!!n));let e=(e,t)=>{e.forEach(e=>{c[e]||(c[e]=o.getElementState(e)),c[e].push(t)})};e(u,t),e(d,r),n&&Object.keys(c).forEach(e=>{!u.includes(e)&&!d.includes(e)&&c[e].push(n)})}else Object.assign(c,this.getClearStates());else if(Object.assign(c,this.getDataStates()),s===`select`){let e=(e,t)=>{e.forEach(e=>{let r=new Set(o.getElementState(e));r.add(t),r.delete(n),c[e]=Array.from(r)})};e(u,t),e(d,r),n&&Object.keys(c).forEach(e=>{let i=c[e];!i.includes(t)&&!i.includes(r)&&!i.includes(n)&&c[e].push(n)})}else{let e=c[a.id];c[a.id]=e.filter(e=>e!==t&&e!==r),e.includes(n)||c[a.id].push(n),d.forEach(e=>{c[e]=c[e].filter(e=>e!==r),c[e].includes(t)||c[e].push(n)})}yield o.setElementState(c,i)})}getDataStates(){let{graph:e}=this.context,{nodes:t,edges:n,combos:r}=e.getData(),i={};return[...t,...n,...r].forEach(e=>{i[Q(e)]=Z_(e)}),i}getClearStates(e=!1){let{graph:t}=this.context,{state:n,unselectedState:r,neighborState:i}=this.options,a=new Set([n,r,i]),{nodes:o,edges:s,combos:c}=t.getData(),l={};return[...o,...s,...c].forEach(t=>{let n=Z_(t),r=n.filter(e=>!a.has(e));(e||r.length!==n.length)&&(l[Q(t)]=r)}),l}clearState(){return Q_(this,void 0,void 0,function*(){let{graph:e}=this.context;yield e.setElementState(this.getClearStates(),this.options.animation)})}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}unbindEvents(){let{graph:e}=this.context;K_.forEach(t=>{e.off(`${t}:${X.CLICK}`,this.onClickSelect)}),e.off(Jm.CLICK,this.onClickCanvas)}destroy(){this.unbindEvents(),super.destroy()}};$_.defaultOptions={animation:!0,enable:!0,multiple:!1,trigger:[`shift`],state:`selected`,neighborState:`selected`,unselectedState:void 0,degree:0};function ev(e){return!!e.style?.collapsed}function tv(e,t){if(!e.startsWith(t))return!1;let n=e[t.length];return n>=`A`&&n<=`Z`}function nv(e,t){return`${t}${wn(e)}`}function rv(e,t,n=!0){if(!t||!tv(e,t))return e;let r=e.slice(t.length);return n?Sn(r):r}function iv(e,t){let n=Object.entries(e).reduce((e,[n,r])=>(n===`className`||n===`class`||tv(n,t)&&Object.assign(e,{[rv(n,t)]:r}),e),{});if(`opacity`in e){let r=nv(`opacity`,t),i=e.opacity;if(r in e){let t=e[r];Object.assign(n,{opacity:i*t})}else Object.assign(n,{opacity:i})}return n}function av(e,t){let n=t.length;return Object.keys(e).reduce((r,i)=>{if(i.startsWith(t)){let t=i.slice(n);r[t]=e[i]}return r},{})}function ov(e,t){let n=typeof t==`string`?[t]:t,r={};return Object.keys(e).forEach(t=>{n.find(e=>t.startsWith(e))||(r[t]=e[t])}),r}function sv(e=0){if(typeof e==`number`)return[e,e,e];let[t,n=t,r=t]=e;return[t,n,r]}var cv=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function lv(e,t){let{datum:n,graph:r}=t;return typeof e==`function`?e.call(r,n):Object.fromEntries(Object.entries(e).map(([e,t])=>typeof t==`function`?[e,t.call(r,n)]:[e,t]))}function uv(e,t){let n=e?.style||{},r=t?.style||{};for(let e in n)e in r||(r[e]=n[e]);return Object.assign({},e,t,{style:r})}function dv(e){let{x:t,y:n,z:r,class:i,className:a,transform:o,transformOrigin:s,zIndex:c,visibility:l}=e;return cv(e,[`x`,`y`,`z`,`class`,`className`,`transform`,`transformOrigin`,`zIndex`,`visibility`])}function fv(e,t){let n=sv(e),r={};return t.text&&!t.fontSize&&(r={fontSize:Math.min(...n)*.5}),t.src&&(!t.width||!t.height)&&(r={width:n[0]*.5,height:n[1]*.5}),r}function pv(e){if(e)return typeof e==`string`||typeof e==`function`||Array.isArray(e)?{type:`group`,field:e=>e.id,color:e,invert:!1}:e}function mv(e,t){if(!t)return{};let{type:n,color:r,field:i,invert:a}=t,o=e=>{let t=typeof r==`string`?ih(`palette`,r):r;if(typeof t==`function`){let n={};return e.forEach(([e,r])=>{n[e]=t(a?1-r:r)}),n}else if(Array.isArray(t)){let n=a?[...t].reverse():t,r={};return e.forEach(([e,i])=>{r[e]=n[i%t.length]}),r}return{}},s=(e,t)=>typeof e==`string`?t.data?.[e]:e?.(t);if(n===`group`){let t=pn(e,e=>{if(!i)return`default`;let t=s(i,e);return t?String(t):`default`}),n=o(Object.keys(t).map((e,t)=>[e,t])),r={};return Object.entries(t).forEach(([e,t])=>{t.forEach(t=>{r[Q(t)]=n[e]})}),r}else if(n===`value`){let[t,n]=e.reduce(([e,t],n)=>{let r=s(i,n);if(typeof r!=`number`)throw Error(sh(`Palette field ${i} is not a number`));return[Math.min(e,r),Math.max(t,r)]},[1/0,-1/0]),r=n-t;return o(e.map(e=>[e.id,(s(i,e)-t)/r]))}}function hv(e){let t=typeof e==`string`?ih(`palette`,e):e;if(typeof t!=`function`)return t}function gv(e,t){let n=2*e;return typeof t==`string`?n=e*Number(t.replace(`%`,``))/100:typeof t==`number`&&(n=t),isNaN(n)&&(n=2*e),n}function _v(e,t,n=1,r=!1){let i=r?n:1;return gv((e.max[0]-e.min[0])*i,t)}function vv(e,t,n=1){return gv(t_(e[0],e[1])*n,t)}var yv=class extends tf{constructor(e){xv(e.style),super(e),this.shapeMap={},this.animateMap={},this.render(this.attributes,this),this.setVisibility(),this.bindEvents()}get parsedAttributes(){return this.attributes}upsert(e,t,n,r,i){var a,o,s,c,l,u,d,f;let p=this.shapeMap[e];if(n===!1){p&&((a=i?.beforeDestroy)==null||a.call(i,p),r.removeChild(p),delete this.shapeMap[e],(o=i?.afterDestroy)==null||o.call(i,p));return}let m=typeof t==`string`?ih(nh.SHAPE,t):t;if(!m)throw Error(sh(`Shape ${t} not found`));if(!p||p.destroyed||!(p instanceof m)){p&&((s=i?.beforeDestroy)==null||s.call(i,p),p?.destroy(),(c=i?.afterDestroy)==null||c.call(i,p)),(l=i?.beforeCreate)==null||l.call(i);let t=new m({className:e,style:n});return r.appendChild(t),this.shapeMap[e]=t,(u=i?.afterCreate)==null||u.call(i,t),t}return(d=i?.beforeUpdate)==null||d.call(i,p),$x(p,n),(f=i?.afterUpdate)==null||f.call(i,p),p}update(e={}){let t=Object.assign({},this.attributes,e);xv(t),Qx(this,t),this.render(t,this),this.setVisibility()}bindEvents(){}getGraphicStyle(e){return dv(e)}get compositeShapes(){return[[`badges`,`badge-`],[`ports`,`port-`]]}animate(e,t){if(e.length===0)return null;let n=[];if(e[0].x!==void 0||e[0].y!==void 0||e[0].z!==void 0){let{x:t=0,y:n=0,z:r=0}=this.attributes;e.forEach(e=>{let{x:i=t,y:a=n,z:o=r}=e;Object.assign(e,{transform:o?[[`translate3d`,i,a,o]]:[[`translate`,i,a]]})})}let r=super.animate(e,t);if(r&&(bv(this,r),n.push(r)),Array.isArray(e)&&e.length>0){let r=[`transform`,`transformOrigin`,`x`,`y`,`z`,`zIndex`];if(Object.keys(e[0]).some(e=>!r.includes(e))){Object.entries(this.shapeMap).forEach(([r,i])=>{let a=`get${wn(r)}Style`,o=this[a];if(L(o)){let r=e.map(e=>o.call(this,Object.assign(Object.assign({},this.attributes),e))),a=i.animate(dh(r),t);a&&(bv(i,a),n.push(a))}});let r=(r,i)=>{if(!Kn(r)){let a=`get${wn(i)}Style`,o=this[a];if(L(o)){let i=e.map(e=>o.call(this,Object.assign(Object.assign({},this.attributes),e)));Object.entries(i[0]).map(([e])=>{let a=i.map(t=>t[e]),o=r[e];if(o){let e=o.animate(dh(a),t);e&&(bv(o,e),n.push(e))}})}}};this.compositeShapes.forEach(([e,t])=>{r(av(this.shapeMap,t),e)})}}return uh(n)}getShape(e){return this.shapeMap[e]}setVisibility(){let{visibility:e}=this.attributes;Bg(this,e)}destroy(){this.shapeMap={},this.animateMap={},super.destroy()}};function bv(e,t){t?.finished.then(()=>{let n=e.activeAnimations.findIndex(e=>e===t);n>-1&&e.activeAnimations.splice(n,1)})}function xv(e){if(!e)return{};if(`x`in e||`y`in e||`z`in e){let{x:t=0,y:n=0,z:r,transform:i}=e,a=gh(t,n,r,i);a&&(e.transform=a)}return e}var Sv=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Cv=class e extends yv{constructor(t){super(uv({style:e.defaultStyleProps},t))}isTextStyle(e){return tv(e,`label`)}isBackgroundStyle(e){return tv(e,`background`)}getTextStyle(e){let t=this.getGraphicStyle(e),{padding:n}=t;return ov(Sv(t,[`padding`]),`background`)}getBackgroundStyle(e){if(e.background===!1)return!1;let t=this.getGraphicStyle(e),{wordWrap:n,wordWrapWidth:r,padding:i}=t,a=iv(t,`background`),{min:[o,s],center:[c,l],halfExtents:[u,d]}=this.shapeMap.text.getGeometryBounds(),[f,p,m,h]=Mh(i),g=u*2+h+p,{width:_,height:v}=a;_&&v?Object.assign(a,{x:c-Number(_)/2,y:l-Number(v)/2}):Object.assign(a,{x:o-h,y:s-f,width:n?Math.min(g,r+h+p):g,height:d*2+f+m});let{radius:y}=a;if(typeof y==`string`&&y.endsWith(`%`)){let e=Number(y.replace(`%`,``))/100;a.radius=Math.min(+a.width,+a.height)*e}return a}render(e=this.parsedAttributes,t=this){this.upsert(`text`,yf,this.getTextStyle(e),t),this.upsert(`background`,_f,this.getBackgroundStyle(e),t)}getGeometryBounds(){return(this.getShape(`background`)||this.getShape(`text`)).getGeometryBounds()}};Cv.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};var wv=class e extends yv{constructor(t){super(uv({style:e.defaultStyleProps},t))}getBadgeStyle(e){return this.getGraphicStyle(e)}render(e=this.parsedAttributes,t=this){this.upsert(`label`,Cv,this.getBadgeStyle(e),t)}getGeometryBounds(){let e=this.getShape(`label`);return(e.getShape(`background`)||e.getShape(`text`)).getGeometryBounds()}};wv.defaultStyleProps={padding:[2,4,2,4],fontSize:10,wordWrap:!1,backgroundRadius:`50%`,backgroundOpacity:1};function Tv(e,t=!0){let n=[];return e.forEach((e,t)=>{n.push([t===0?`M`:`L`,...e])}),t&&n.push([`Z`]),n}var Ev={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 Dv(e){let t=e.replace(/[\n\r]/g,``).replace(/-/g,` -`).replace(/(\d*\.)(\d+)(?=\.)/g,`$1$2 `).trim().split(/\s*,|\s+/),n=[],r=``,i={};for(;t.length>0;){let e=t.shift();e in Ev?r=e:t.unshift(e),i={type:r},Ev[r].forEach(n=>{e=t.shift(),i[n]=e}),r===`M`?r=`L`:r===`m`&&(r=`l`);let[a,...o]=Object.values(i);n.push([a,...o.map(Number)])}return n}function Ov(e){let t=[];return(typeof e==`string`?Dv(e):e).forEach(e=>{let n=e[0];if(n===`Z`){t.push(t[0]);return}if(n!==`A`)for(let n=1;n<e.length;n+=2)t.push([e[n],e[n+1],0]);else{let n=e.length;t.push([e[n-2],e[n-1],0])}}),t}var kv=e=>{if(e.length<2)return[[`M`,0,0],[`L`,0,0]];let t=e[0],n=e[1],r=e[e.length-1],i=e[e.length-2];e.unshift(i,r),e.push(t,n);let a=[[`M`,r[0],r[1]]];for(let t=1;t<e.length-2;t+=1){let[n,r]=e[t-1],[i,o]=e[t],[s,c]=e[t+1],[l,u]=t===e.length-2?[s,c]:e[t+2],d=i+(s-n)/6,f=o+(c-r)/6,p=s-(l-i)/6,m=c-(u-o)/6;a.push([`C`,d,f,p,m,s,c])}return a};function Av(e,t,n,r,i,a,o){let[s,c]=__(e,t),l={textAlign:t===`left`?`right`:t===`right`?`left`:`center`,textBaseline:t===`top`?`bottom`:t===`bottom`?`top`:`middle`,transform:[[`translate`,s+n,c+r]]};if(t===`center`||!i)return l;let u=Ov(a);if(!u||u.length<=3)return l;let d=u.map((e,t)=>{let n=e,r=u[(t+1)%u.length];return qn(n,r)?null:[n,r]}).filter(Boolean),f=M_([s,c],d),p=P_([s,c],f);if(p&&f&&(l.transform=[[`translate`,p[0]+n,p[1]+r]],o)){let e=Math.atan((f[0][1]-f[1][1])/(f[0][0]-f[1][0]));l.transform.push([`rotate`,e/Math.PI*180]),l.textAlign=`center`,(t===`right`||t===`left`)&&(e>0?l.textBaseline=t===`right`?`bottom`:`top`:l.textBaseline=t===`right`?`top`:`bottom`)}return l}var jv=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Mv=class e extends yv{constructor(t){super(uv({style:e.defaultStyleProps},t))}getLabelStyle(e){if(!e.label||!e.d||e.d.length===0)return!1;let t=iv(this.getGraphicStyle(e),`label`),{maxWidth:n,offsetX:r,offsetY:i,autoRotate:a,placement:o,closeToPath:s}=t,c=jv(t,[`maxWidth`,`offsetX`,`offsetY`,`autoRotate`,`placement`,`closeToPath`]),l=this.shapeMap.key?.getRenderBounds();return Object.assign(Av(l,o,r,i,s,e.d,a),{wordWrapWidth:_v(l,n)},c)}getKeyStyle(e){return this.getGraphicStyle(e)}render(e,t){this.upsert(`key`,ff,this.getKeyStyle(e),t),this.upsert(`label`,Cv,this.getLabelStyle(e),t)}};Mv.defaultStyleProps={label:!0,labelPlacement:`bottom`,labelCloseToPath:!0,labelAutoRotate:!0,labelOffsetX:0,labelOffsetY:0};function Nv(e){let t=[],n=e=>{e?.children.length&&e.children.forEach(e=>{t.push(e),n(e)})};return n(e),t}function Pv(e){let t=[],n=e.parentNode;for(;n;)t.push(n),n=n.parentNode;return t}var Fv=class extends cf{constructor(e){super(e),this.onMounted=()=>{this.handleRadius()},this.onAttrModified=()=>{this.handleRadius()},Lv=this,this.isMutationObserved=!0,this.addEventListener(ad.MOUNTED,this.onMounted),this.addEventListener(ad.ATTR_MODIFIED,this.onAttrModified)}handleRadius(){let{radius:e,clipPath:t,width:n=0,height:r=0}=this.attributes;if(e&&n&&r){let[i,a]=this.getBounds().min,o={x:i,y:a,radius:e,width:n,height:r};if(t)Object.assign(this.parsedStyle.clipPath.style,o);else{let e=new _f({style:o});this.style.clipPath=e}}else t&&(this.style.clipPath=null)}},Iv=new WeakMap,Lv=null,Rv=e=>{if(Lv&&Pv(Lv).includes(e)){let t=Iv.get(e);t?t.includes(Lv)||t.push(Lv):Iv.set(e,[Lv])}},zv=e=>{let t=Iv.get(e);t&&t.forEach(e=>e.handleRadius())},Bv=class extends yv{constructor(e){super(e)}isImage(){let{src:e}=this.attributes;return!!e}getIconStyle(e=this.attributes){let{width:t=0,height:n=0}=e,r=this.getGraphicStyle(e);return this.isImage()?Object.assign({x:-t/2,y:-n/2},r):Object.assign({textBaseline:`middle`,textAlign:`center`},r)}render(e=this.attributes,t=this){this.upsert(`icon`,this.isImage()?Fv:yf,this.getIconStyle(e),t)}},Vv=class extends yv{get context(){return this.config.context}get parsedAttributes(){return this.attributes}onframe(){}animate(e,t){let n=super.animate(e,t);return n&&(n.onframe=()=>this.onframe(),n.finished.then(()=>this.onframe())),n}},Hv=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Uv=class e extends Vv{constructor(t){super(uv({style:e.defaultStyleProps},t)),this.type=`node`}getSize(e=this.attributes){let{size:t}=e;return sv(t)}getKeyStyle(e){let t=this.getGraphicStyle(e);return Object.assign(ov(t,[`label`,`halo`,`icon`,`badge`,`port`]))}getLabelStyle(e){if(e.label===!1||!e.labelText)return!1;let t=iv(this.getGraphicStyle(e),`label`),{placement:n,maxWidth:r,offsetX:i,offsetY:a}=t,o=Hv(t,[`placement`,`maxWidth`,`offsetX`,`offsetY`]),s=this.getShape(`key`).getLocalBounds();return Object.assign(Gx(s,n,i,a),{wordWrapWidth:_v(s,r)},o)}getHaloStyle(e){if(e.halo===!1)return!1;let t=this.getKeyStyle(e),{fill:n}=t,r=Hv(t,[`fill`]),i=iv(this.getGraphicStyle(e),`halo`);return Object.assign(Object.assign(Object.assign({},r),{stroke:n}),i)}getIconStyle(e){if(e.icon===!1||!e.iconText&&!e.iconSrc)return!1;let t=iv(this.getGraphicStyle(e),`icon`);return Object.assign(fv(e.size,t),t)}getBadgesStyle(e){let t=av(this.shapeMap,`badge-`),n={};if(Object.keys(t).forEach(e=>{n[e]=!1}),e.badge===!1||!e.badges?.length)return n;let{badges:r=[],badgePalette:i,opacity:a=1}=e,o=Hv(e,[`badges`,`badgePalette`,`opacity`]),s=hv(i),c=iv(this.getGraphicStyle(o),`badge`);return r.forEach((e,t)=>{n[t]=Object.assign(Object.assign({backgroundFill:s?s[t%s?.length]:void 0,opacity:a},c),this.getBadgeStyle(e))}),n}getBadgeStyle(e){let t=this.getShape(`key`),{placement:n=`top`,offsetX:r,offsetY:i}=e,a=Hv(e,[`placement`,`offsetX`,`offsetY`]),o=Gx(t.getLocalBounds(),n,r,i,!0);return Object.assign(Object.assign({},o),a)}getPortsStyle(e){let t=this.getPorts(),n={};if(Object.keys(t).forEach(e=>{n[e]=!1}),e.port===!1||!e.ports?.length)return n;let r=iv(this.getGraphicStyle(e),`port`),{ports:i=[]}=e;return i.forEach((t,i)=>{let a=t.key||i,o=Object.assign(Object.assign({},r),t);if(Lx(o))n[a]=!1;else{let[r,i]=this.getPortXY(e,t);n[a]=Object.assign({transform:[[`translate`,r,i]]},o)}}),n}getPortXY(e,t){let{placement:n=`left`}=t,r=this.getShape(`key`);return Fx(Wv(this.context,r),n)}getPorts(){return av(this.shapeMap,`port-`)}getCenter(){return this.getShape(`key`).getBounds().center}getIntersectPoint(e,t=!1){return k_(e,this.getShape(`key`).getBounds(),t)}drawHaloShape(e,t){let n=this.getHaloStyle(e),r=this.getShape(`key`);this.upsert(`halo`,r.constructor,n,t)}drawIconShape(e,t){let n=this.getIconStyle(e);this.upsert(`icon`,Bv,n,t),Rv(this)}drawBadgeShapes(e,t){let n=this.getBadgesStyle(e);Object.keys(n).forEach(e=>{let r=n[e];this.upsert(`badge-${e}`,wv,r,t)})}drawPortShapes(e,t){let n=this.getPortsStyle(e);Object.keys(n).forEach(e=>{let r=n[e],i=`port-${e}`;this.upsert(i,$d,r,t)})}drawLabelShape(e,t){let n=this.getLabelStyle(e);this.upsert(`label`,Cv,n,t)}_drawKeyShape(e,t){return this.drawKeyShape(e,t)}render(e=this.parsedAttributes,t=this){this._drawKeyShape(e,t),this.getShape(`key`)&&(this.drawHaloShape(e,t),this.drawIconShape(e,t),this.drawBadgeShapes(e,t),this.drawLabelShape(e,t),this.drawPortShapes(e,t))}update(e){super.update(e),e&&(`x`in e||`y`in e||`z`in e)&&zv(this)}onframe(){this.drawBadgeShapes(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this)}};Uv.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 Wv(e,t){if(!e)return t.getLocalBounds();let n=e.canvas.getLayer(),r=t.cloneNode();Bg(r,`hidden`),n.appendChild(r);let i=r.getLocalBounds();return r.destroy(),i}var Gv=class e extends Uv{constructor(t){super(uv({style:e.defaultStyleProps},t))}drawKeyShape(e,t){return this.upsert(`key`,$d,this.getKeyStyle(e),t)}getKeyStyle(e){let t=super.getKeyStyle(e);return Object.assign(Object.assign({},t),{r:Math.min(...this.getSize(e))/2})}getIconStyle(e){let t=super.getIconStyle(e),{r:n}=this.getShape(`key`).attributes,r=n*2*G_;return t?Object.assign({width:r,height:r},t):!1}getIntersectPoint(e,t=!1){return A_(e,this.getShape(`key`).getBounds(),t)}};Gv.defaultStyleProps={size:32};var Kv=class extends Uv{constructor(e){super(e)}get parsedAttributes(){return this.attributes}drawKeyShape(e,t){return this.upsert(`key`,mf,this.getKeyStyle(e),t)}getKeyStyle(e){let t=super.getKeyStyle(e);return Object.assign(Object.assign({},t),{points:this.getPoints(e)})}getIntersectPoint(e,t=!1){let{points:n}=this.getShape(`key`).attributes;return D_(e,[+(this.attributes?.x||0),+(this.attributes?.y||0)],n,!0,t).point}},qv=class extends Kv{constructor(e){super(e)}getPoints(e){let[t,n]=this.getSize(e);return Xx(t,n)}},Jv=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Yv=class e extends Gv{constructor(t){super(uv({style:e.defaultStyleProps},t))}parseOuterR(){let{size:e}=this.parsedAttributes;return Math.min(...sv(e))/2}parseInnerR(){let{innerR:e}=this.parsedAttributes;return un(e)?parseInt(e)/100*this.parseOuterR():e}drawDonutShape(e,t){let{donuts:n}=e;if(!n?.length)return;let r=n.map(e=>hn(e)?{value:e}:e),i=iv(this.getGraphicStyle(e),`donut`),a=hv(e.donutPalette);if(!a)return;let o=r.reduce((e,t)=>e+(t.value??0),0),s=this.parseOuterR(),c=this.parseInnerR(),l=0;r.forEach((e,n)=>{let{value:u=0,color:d=a[n%a.length]}=e,f=Jv(e,[`value`,`color`]),p=(o===0?1/r.length:u/o)*360;this.upsert(`round${n}`,ff,Object.assign(Object.assign(Object.assign({},i),{d:$v(s,c,l,l+p),fill:d}),f),t),l+=p})}render(e,t=this){super.render(e,t),this.drawDonutShape(e,t)}};Yv.defaultStyleProps={innerR:`50%`,donuts:[],donutPalette:`tableau`};var Xv=(e,t,n,r)=>[e+Math.sin(r)*n,t-Math.cos(r)*n],Zv=(e,t,n,r)=>r<=0||n<=r?[[`M`,e-n,t],[`A`,n,n,0,1,1,e+n,t],[`A`,n,n,0,1,1,e-n,t],[`Z`]]:[[`M`,e-n,t],[`A`,n,n,0,1,1,e+n,t],[`A`,n,n,0,1,1,e-n,t],[`Z`],[`M`,e+r,t],[`A`,r,r,0,1,0,e-r,t],[`A`,r,r,0,1,0,e+r,t],[`Z`]],Qv=(e,t,n,r,i,a)=>{let[o,s]=[i/360*2*Math.PI,a/360*2*Math.PI],c=[Xv(e,t,r,o),Xv(e,t,n,o),Xv(e,t,n,s),Xv(e,t,r,s)],l=+(s-o>Math.PI);return[[`M`,c[0][0],c[0][1]],[`L`,c[1][0],c[1][1]],[`A`,n,n,0,l,1,c[2][0],c[2][1]],[`L`,c[3][0],c[3][1]],[`A`,r,r,0,l,0,c[0][0],c[0][1]],[`Z`]]},$v=(e=0,t=0,n,r)=>{let[i,a]=[0,0];return Math.abs(n-r)%360<1e-6?Zv(i,a,e,t):Qv(i,a,e,t,n,r)},ey=class e extends Uv{constructor(t){super(uv({style:e.defaultStyleProps},t))}drawKeyShape(e,t){return this.upsert(`key`,nf,this.getKeyStyle(e),t)}getKeyStyle(e){let t=super.getKeyStyle(e),[n,r]=this.getSize(e);return Object.assign(Object.assign({},t),{rx:n/2,ry:r/2})}getIconStyle(e){let t=super.getIconStyle(e),{rx:n,ry:r}=this.getShape(`key`).attributes,i=Math.min(+n,+r)*2*G_;return t?Object.assign({width:i,height:i},t):!1}getIntersectPoint(e,t=!1){return A_(e,this.getShape(`key`).getBounds(),t)}};ey.defaultStyleProps={size:[45,35]};var ty=class extends Kv{constructor(e){super(e)}getOuterR(e){return e.outerR||Math.min(...this.getSize(e))/2}getPoints(e){return eS(this.getOuterR(e))}getIconStyle(e){let t=super.getIconStyle(e),n=this.getOuterR(e)*G_;return t?Object.assign({width:n,height:n},t):!1}};function ny(e,t){if(!{}.hasOwnProperty.call(e,t))throw TypeError(`attempted to use private field on non-instance`);return e}var ry=0;function iy(e){return`__private_`+ ry+++`_`+e}var ay=iy(`renderState`),oy=function(){function e(t){b(this,e),this.renderQueue=[],Object.defineProperty(this,ay,{writable:!0,value:{restoreStack:[],prevObject:null,currentContext:new Map}}),this.clearFullScreenLastFrame=!1,this.clearFullScreen=!1,this.vpMatrix=P(),this.dprMatrix=P(),this.tmpMat4=P(),this.vec3a=et(),this.vec3b=et(),this.vec3c=et(),this.vec3d=et(),this.canvasRendererPluginOptions=t}return S(e,[{key:`apply`,value:function(t,n){var r=this;this.context=t;var i=this.context,a=i.config,o=i.camera,s=i.renderingService,c=i.renderingContext,l=i.pathGeneratorFactory,u=a.renderer.getConfig().enableRenderingOptimization;a.renderer.getConfig().enableDirtyCheck=!1,a.renderer.getConfig().enableDirtyRectangleRendering=!1,this.pathGeneratorFactory=l;var d=t.contextService,f=c.root.ownerDocument.defaultView;s.hooks.init.tap(e.tag,function(){var e=d.getDPR(),t=a.width,n=a.height,i=d.getContext();r.clearRect(i,0,0,t*e,n*e,a.background)}),s.hooks.destroy.tap(e.tag,function(){r.renderQueue=[],ny(r,ay)[ay]={restoreStack:[],prevObject:null,currentContext:null}});var p=function(){var e,t=d.getContext(),n=d.getDPR(),i=a.width,o=a.height,c=r.canvasRendererPluginOptions,l=c.dirtyObjectNumThreshold,u=c.dirtyObjectRatioThreshold,p=s.getStats(),m=p.total,h=p.rendered,g=h/m;r.clearFullScreen=r.clearFullScreenLastFrame||!((e=f.context.renderingPlugins[1])!=null&&e.isFirstTimeRenderingFinished)||s.disableDirtyRectangleRendering()||h>l&&g>u,t&&(typeof t.resetTransform==`function`?t.resetTransform():t.setTransform(1,0,0,1,0,0),r.clearFullScreen&&r.clearRect(t,0,0,i*n,o*n,a.background))},h=function(e,t){for(var i=[e];i.length>0;){var a,o=i.pop();o.isVisible()&&!o.isCulled()&&(u?r.renderDisplayObjectOptimized(o,t,r.context,ny(r,ay)[ay],n):r.renderDisplayObject(o,t,r.context,ny(r,ay)[ay],n));for(var s=((a=o.sortable)==null||(a=a.sorted)==null?void 0:a.length)>0?o.sortable.sorted:o.childNodes,c=s.length-1;c>=0;c--)i.push(s[c])}};s.hooks.endFrame.tap(e.tag,function(){if(p(),c.root.childNodes.length===0){r.clearFullScreenLastFrame=!0;return}u=a.renderer.getConfig().enableRenderingOptimization,ny(r,ay)[ay]={restoreStack:[],prevObject:null,currentContext:ny(r,ay)[ay].currentContext},ny(r,ay)[ay].currentContext.clear(),r.clearFullScreenLastFrame=!1;var e=d.getContext(),t=d.getDPR();if(be(r.dprMatrix,[t,t,1]),pe(r.vpMatrix,r.dprMatrix,o.getOrthoMatrix()),r.clearFullScreen)u?(e.save(),h(c.root,e),e.restore()):h(c.root,e);else{var i=r.safeMergeAABB(r.mergeDirtyAABBs(r.renderQueue));if(ja.isEmpty(i)){r.renderQueue=[];return}var s=r.convertAABB2Rect(i),l=s.x,g=s.y,_=s.width,v=s.height,y=_t(r.vec3a,[l,g,0],r.vpMatrix),b=_t(r.vec3b,[l+_,g,0],r.vpMatrix),x=_t(r.vec3c,[l,g+v,0],r.vpMatrix),S=_t(r.vec3d,[l+_,g+v,0],r.vpMatrix),C=Math.min(y[0],b[0],S[0],x[0]),w=Math.min(y[1],b[1],S[1],x[1]),T=Math.max(y[0],b[0],S[0],x[0]),E=Math.max(y[1],b[1],S[1],x[1]),D=Math.floor(C),O=Math.floor(w),k=Math.ceil(T-C),A=Math.ceil(E-w);e.save(),r.clearRect(e,D,O,k,A,a.background),e.beginPath(),e.rect(D,O,k,A),e.clip(),e.setTransform(r.vpMatrix[0],r.vpMatrix[1],r.vpMatrix[4],r.vpMatrix[5],r.vpMatrix[12],r.vpMatrix[13]),a.renderer.getConfig().enableDirtyRectangleRenderingDebug&&f.dispatchEvent(new Yu(Of.DIRTY_RECTANGLE,{dirtyRect:{x:D,y:O,width:k,height:A}}));var j=m(i.getMin(),2),ee=j[0],te=j[1],M=m(i.getMax(),2),ne=M[0],re=M[1];c.root.ownerDocument.elementsFromBBox(ee,te,ne,re).sort(function(e,t){return e.sortable.renderOrder-t.sortable.renderOrder}).forEach(function(t){t&&t.isVisible()&&!t.isCulled()&&r.renderDisplayObject(t,e,r.context,ny(r,ay)[ay],n)}),e.restore(),r.renderQueue.forEach(function(e){r.saveDirtyAABB(e)}),r.renderQueue=[]}ny(r,ay)[ay].restoreStack.forEach(function(){e.restore()}),ny(r,ay)[ay].restoreStack=[]}),s.hooks.render.tap(e.tag,function(e){r.clearFullScreen||r.renderQueue.push(e)})}},{key:`clearRect`,value:function(e,t,n,r,i,a){e.clearRect(t,n,r,i),a&&(e.fillStyle=a,e.fillRect(t,n,r,i))}},{key:`renderDisplayObjectOptimized`,value:function(e,t,n,r,i){var a=e.nodeName,o=!1,s=!1,c=this.context.styleRendererFactory[a],l=this.pathGeneratorFactory[a],u=e.parsedStyle.clipPath;if(u){o=!r.prevObject||!Xe(u.getWorldTransform(),r.prevObject.getWorldTransform()),o&&(this.applyWorldTransform(t,u),r.prevObject=null);var d=this.pathGeneratorFactory[u.nodeName];d&&(t.save(),s=!0,t.beginPath(),d(t,u.parsedStyle),t.closePath(),t.clip())}if(c){o=!r.prevObject||!Xe(e.getWorldTransform(),r.prevObject.getWorldTransform()),o&&this.applyWorldTransform(t,e);var f=!r.prevObject;if(!f){var p=r.prevObject.nodeName;f=a===U.TEXT?p!==U.TEXT:a===U.IMAGE?p!==U.IMAGE:p===U.TEXT||p===U.IMAGE}c.applyStyleToContext(t,e,f,r),r.prevObject=e}l&&(t.beginPath(),l(t,e.parsedStyle),a!==U.LINE&&a!==U.PATH&&a!==U.POLYLINE&&t.closePath()),c&&c.drawToContext(t,e,ny(this,ay)[ay],this,i),s&&t.restore(),e.dirty(!1)}},{key:`renderDisplayObject`,value:function(e,t,n,r,i){var a=e.nodeName,o=r.restoreStack[r.restoreStack.length-1];o&&!(e.compareDocumentPosition(o)&Zu.DOCUMENT_POSITION_CONTAINS)&&(t.restore(),r.restoreStack.pop());var s=this.context.styleRendererFactory[a],c=this.pathGeneratorFactory[a],l=e.parsedStyle.clipPath;if(l){this.applyWorldTransform(t,l);var u=this.pathGeneratorFactory[l.nodeName];u&&(t.save(),r.restoreStack.push(e),t.beginPath(),u(t,l.parsedStyle),t.closePath(),t.clip())}s&&(this.applyWorldTransform(t,e),t.save(),this.applyAttributesToContext(t,e)),c&&(t.beginPath(),c(t,e.parsedStyle),a!==U.LINE&&a!==U.PATH&&a!==U.POLYLINE&&t.closePath()),s&&(s.render(t,e.parsedStyle,e,n,this,i),t.restore()),e.dirty(!1)}},{key:`applyAttributesToContext`,value:function(e,t){var n=t.parsedStyle,r=n.stroke,i=n.fill,a=n.opacity,o=n.lineDash,s=n.lineDashOffset;o&&e.setLineDash(o),R(s)||(e.lineDashOffset=s),R(a)||(e.globalAlpha*=a),!R(r)&&!Array.isArray(r)&&!r.isNone&&(e.strokeStyle=t.attributes.stroke),!R(i)&&!Array.isArray(i)&&!i.isNone&&(e.fillStyle=t.attributes.fill)}},{key:`convertAABB2Rect`,value:function(e){var t=e.getMin(),n=e.getMax(),r=Math.floor(t[0]),i=Math.floor(t[1]),a=Math.ceil(n[0]),o=Math.ceil(n[1]);return{x:r,y:i,width:a-r,height:o-i}}},{key:`mergeDirtyAABBs`,value:function(e){var t=new ja;return e.forEach(function(e){var n=e.getRenderBounds();t.add(n);var r=e.renderable.dirtyRenderBounds;r&&t.add(r)}),t}},{key:`saveDirtyAABB`,value:function(e){var t=e.renderable;t.dirtyRenderBounds||=new ja;var n=e.getRenderBounds();n&&t.dirtyRenderBounds.update(n.center,n.halfExtents)}},{key:`applyWorldTransform`,value:function(e,t,n){n?(F(this.tmpMat4,t.getLocalTransform()),pe(this.tmpMat4,n,this.tmpMat4),pe(this.tmpMat4,this.vpMatrix,this.tmpMat4)):(F(this.tmpMat4,t.getWorldTransform()),pe(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(){var e=new ja;return[...arguments].forEach(function(t){e.add(t)}),e}}])}();oy.tag=`CanvasRenderer`;function sy(e,t,n,r,i,a,o){var s,c;if(e.image.nodeName===`rect`){var l=e.image.parsedStyle,u=l.width,d=l.height;c=r.contextService.getDPR();var f=r.config.offscreenCanvas;s=a.offscreenCanvasCreator.getOrCreateCanvas(f),s.width=u*c,s.height=d*c;var p=a.offscreenCanvasCreator.getOrCreateContext(f),m={restoreStack:[],prevObject:null,currentContext:new Map};e.image.forEach(function(e){i.renderDisplayObject(e,p,r,m,a)}),m.restoreStack.forEach(function(){p.restore()})}return o.getOrCreatePatternSync(t,e,n,s,c,t.getGeometryBounds().min,function(){t.dirty(),r.renderingService.dirty()})}function cy(e,t,n,r){var i;if(e.type===Ss.LinearGradient||e.type===Ss.RadialGradient){var a=t.getGeometryBounds(),o=a&&a.halfExtents[0]*2||1,s=a&&a.halfExtents[1]*2||1,c=a&&a.min||[0,0];i=r.getOrCreateGradient(y(y({type:e.type},e.value),{},{min:c,width:o,height:s}),n)}return i}var ly=[`shadowBlur`,`shadowOffsetX`,`shadowOffsetY`],uy=[`lineCap`,`lineJoin`,`miterLimit`],dy={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},fy={};function py(e,t,n,r){var i=r.has(t)?r.get(t):dy[t];return i!==n&&(t===`lineDash`?e.setLineDash(n):e[t]=n,r.set(t,n)),i}var my=function(e){function t(){return b(this,t),k(this,t,arguments)}return T(t,e),S(t,[{key:`render`,value:function(e,t,n,r,i,a){var o=t.fill,s=t.fillRule,c=t.opacity,l=c===void 0?1:c,u=t.fillOpacity,d=u===void 0?1:u,f=t.stroke,p=t.strokeOpacity,m=p===void 0?1:p,h=t.lineWidth,g=h===void 0?1:h,_=t.lineCap,v=t.lineJoin,y=t.shadowType,b=t.shadowColor,x=t.shadowBlur,S=t.filter,C=t.miterLimit,w=o&&!o.isNone,T=f&&!f.isNone&&g>0,E=o?.alpha===0,D=!!(S&&S.length),O=!R(b)&&x>0,k=n.nodeName,A=y===`inner`,j=T&&O&&(k===U.PATH||k===U.LINE||k===U.POLYLINE||E||A);w&&(e.globalAlpha=l*d,j||hy(n,e,O),gy(e,n,o,s,r,i,a,this.imagePool),j||this.clearShadowAndFilter(e,D,O)),T&&(e.globalAlpha=l*m,e.lineWidth=g,R(C)||(e.miterLimit=C),R(_)||(e.lineCap=_),R(v)||(e.lineJoin=v),j&&(A&&(e.globalCompositeOperation=`source-atop`),hy(n,e,!0),A&&(_y(e,n,f,r,i,a,this.imagePool),e.globalCompositeOperation=dy.globalCompositeOperation,this.clearShadowAndFilter(e,D,!0))),_y(e,n,f,r,i,a,this.imagePool))}},{key:`clearShadowAndFilter`,value:function(e,t,n){if(n&&(e.shadowColor=`transparent`,e.shadowBlur=0),t){var r=e.filter;!R(r)&&r.indexOf(`drop-shadow`)>-1&&(e.filter=r.replace(/drop-shadow\([^)]*\)/,``).trim()||`none`)}}}])}(function(){function e(t){b(this,e),this.imagePool=t}return S(e,[{key:`applyAttributesToContext`,value:function(e,t){}},{key:`render`,value:function(e,t,n,r,i,a){}},{key:`applyCommonStyleToContext`,value:function(e,t,n,r){var i=n?fy:r.prevObject.parsedStyle,a=t.parsedStyle;(n||a.opacity!==i.opacity)&&py(e,`globalAlpha`,R(a.opacity)?dy.globalAlpha:a.opacity,r.currentContext),(n||a.blend!==i.blend)&&py(e,`globalCompositeOperation`,R(a.blend)?dy.globalCompositeOperation:a.blend,r.currentContext)}},{key:`applyStrokeFillStyleToContext`,value:function(e,t,n,r){var i=n?fy:r.prevObject.parsedStyle,a=t.parsedStyle,o=a.lineWidth,s=o===void 0?dy.lineWidth:o,c=a.fill&&!a.fill.isNone;if(a.stroke&&!a.stroke.isNone&&s>0){(n||t.attributes.stroke!==r.prevObject.attributes.stroke)&&py(e,`strokeStyle`,!R(a.stroke)&&!Array.isArray(a.stroke)&&!a.stroke.isNone?t.attributes.stroke:dy.strokeStyle,r.currentContext),(n||a.lineWidth!==i.lineWidth)&&py(e,`lineWidth`,R(a.lineWidth)?dy.lineWidth:a.lineWidth,r.currentContext),(n||a.lineDash!==i.lineDash)&&py(e,`lineDash`,a.lineDash||dy.lineDash,r.currentContext),(n||a.lineDashOffset!==i.lineDashOffset)&&py(e,`lineDashOffset`,R(a.lineDashOffset)?dy.lineDashOffset:a.lineDashOffset,r.currentContext);for(var l=0;l<uy.length;l++){var u=uy[l];(n||a[u]!==i[u])&&py(e,u,R(a[u])?dy[u]:a[u],r.currentContext)}}c&&(n||t.attributes.fill!==r.prevObject.attributes.fill)&&py(e,`fillStyle`,!R(a.fill)&&!Array.isArray(a.fill)&&!a.fill.isNone?t.attributes.fill:dy.fillStyle,r.currentContext)}},{key:`applyStyleToContext`,value:function(e,t,n,r){var i=t.nodeName;this.applyCommonStyleToContext(e,t,n,r),i===U.IMAGE||this.applyStrokeFillStyleToContext(e,t,n,r)}},{key:`applyShadowAndFilterStyleToContext`,value:function(e,t,n,r){var i=t.parsedStyle;if(n){py(e,`shadowColor`,i.shadowColor.toString(),r.currentContext);for(var a=0;a<ly.length;a++){var o=ly[a];py(e,o,i[o]||dy[o],r.currentContext)}}i.filter&&i.filter.length&&py(e,`filter`,t.attributes.filter,r.currentContext)}},{key:`clearShadowAndFilterStyleForContext`,value:function(e,t,n,r){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;if(t){py(e,`shadowColor`,dy.shadowColor,r.currentContext);for(var a=0;a<ly.length;a++){var o=ly[a];py(e,o,dy[o],r.currentContext)}}if(n)if(t&&i){var s=e.filter;!R(s)&&s.indexOf(`drop-shadow`)>-1&&py(e,`filter`,s.replace(/drop-shadow\([^)]*\)/,``).trim()||dy.filter,r.currentContext)}else py(e,`filter`,dy.filter,r.currentContext)}},{key:`fillToContext`,value:function(e,t,n,r,i){var a=this,o=t.parsedStyle,s=o.fill,c=o.fillRule,l=null;if(Array.isArray(s)&&s.length>0)s.forEach(function(r){var i=py(e,`fillStyle`,cy(r,t,e,a.imagePool),n.currentContext);l??=i,c?e.fill(c):e.fill()});else{if($s(s)){var u=sy(s,t,e,t.ownerDocument.defaultView.context,r,i,this.imagePool);u&&(e.fillStyle=u,l=!0)}c?e.fill(c):e.fill()}l!==null&&py(e,`fillStyle`,l,n.currentContext)}},{key:`strokeToContext`,value:function(e,t,n,r,i){var a=this,o=t.parsedStyle.stroke,s=null;if(Array.isArray(o)&&o.length>0)o.forEach(function(r){var i=py(e,`strokeStyle`,cy(r,t,e,a.imagePool),n.currentContext);s??=i,e.stroke()});else{if($s(o)){var c=sy(o,t,e,t.ownerDocument.defaultView.context,r,i,this.imagePool);if(c){var l=py(e,`strokeStyle`,c,n.currentContext);s??=l}}e.stroke()}s!==null&&py(e,`strokeStyle`,s,n.currentContext)}},{key:`drawToContext`,value:function(e,t,n,r,i){var a=t.nodeName,o=t.parsedStyle,s=o.opacity,c=s===void 0?dy.globalAlpha:s,l=o.fillOpacity,u=l===void 0?dy.fillOpacity:l,d=o.strokeOpacity,f=d===void 0?dy.strokeOpacity:d,p=o.lineWidth,m=p===void 0?dy.lineWidth:p,h=o.fill&&!o.fill.isNone,g=o.stroke&&!o.stroke.isNone&&m>0;if(!(!h&&!g)){var _=!R(o.shadowColor)&&o.shadowBlur>0,v=o.shadowType===`inner`,y=o.fill?.alpha===0,b=!!(o.filter&&o.filter.length),x=_&&g&&(a===U.PATH||a===U.LINE||a===U.POLYLINE||y||v),S=null;if(h&&(x||this.applyShadowAndFilterStyleToContext(e,t,_,n),S=py(e,`globalAlpha`,c*u,n.currentContext),this.fillToContext(e,t,n,r,i),x||this.clearShadowAndFilterStyleForContext(e,_,b,n)),g){var C=!1,w=py(e,`globalAlpha`,c*f,n.currentContext);if(S=h?S:w,x&&(this.applyShadowAndFilterStyleToContext(e,t,_,n),C=!0,v)){var T=e.globalCompositeOperation;e.globalCompositeOperation=`source-atop`,this.strokeToContext(e,t,n,r,i),e.globalCompositeOperation=T,this.clearShadowAndFilterStyleForContext(e,_,b,n,!0)}this.strokeToContext(e,t,n,r,i),C&&this.clearShadowAndFilterStyleForContext(e,_,b,n)}S!==null&&py(e,`globalAlpha`,S,n.currentContext)}}}])}());function hy(e,t,n){var r=e.parsedStyle,i=r.filter,a=r.shadowColor,o=r.shadowBlur,s=r.shadowOffsetX,c=r.shadowOffsetY;i&&i.length&&(t.filter=e.style.filter),n&&(t.shadowColor=a.toString(),t.shadowBlur=o||0,t.shadowOffsetX=s||0,t.shadowOffsetY=c||0)}function gy(e,t,n,r,i,a,o,s){var c=arguments.length>8&&arguments[8]!==void 0?arguments[8]:!1;Array.isArray(n)?n.forEach(function(n){e.fillStyle=cy(n,t,e,s),c||(r?e.fill(r):e.fill())}):($s(n)&&(e.fillStyle=sy(n,t,e,i,a,o,s)),c||(r?e.fill(r):e.fill()))}function _y(e,t,n,r,i,a,o){var s=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1;Array.isArray(n)?n.forEach(function(n){e.strokeStyle=cy(n,t,e,o),s||e.stroke()}):($s(n)&&(e.strokeStyle=sy(n,t,e,r,i,a,o)),s||e.stroke())}function vy(e,t){var n=m(e,4),r=n[0],i=n[1],a=n[2],o=n[3],s=m(t,4),c=s[0],l=s[1],u=s[2],d=s[3],f=Math.max(r,c),p=Math.max(i,l),h=Math.min(r+a,c+u),g=Math.min(i+o,l+d);return h<=f||g<=p?null:[f,p,h-f,g-p]}function yy(e,t){var n=_t(et(),[e[0],e[1],0],t),r=_t(et(),[e[0]+e[2],e[1],0],t),i=_t(et(),[e[0],e[1]+e[3],0],t),a=_t(et(),[e[0]+e[2],e[1]+e[3],0],t);return[Math.min(n[0],r[0],i[0],a[0]),Math.min(n[1],r[1],i[1],a[1]),Math.max(n[0],r[0],i[0],a[0])-Math.min(n[0],r[0],i[0],a[0]),Math.max(n[1],r[1],i[1],a[1])-Math.min(n[1],r[1],i[1],a[1])]}var by=function(e){function t(){return b(this,t),k(this,t,arguments)}return T(t,e),S(t,[{key:`renderDownSampled`,value:function(e,t,n,r){var i=r.src,a=r.imageCache;if(!a.downSampled){this.imagePool.createDownSampledImage(i,n).then(function(){n.ownerDocument&&(n.dirty(),n.ownerDocument.defaultView.context.renderingService.dirty())}).catch(function(e){console.error(e)});return}e.drawImage(a.downSampled,Math.floor(r.drawRect[0]),Math.floor(r.drawRect[1]),Math.ceil(r.drawRect[2]),Math.ceil(r.drawRect[3]))}},{key:`renderTile`,value:function(e,t,n,r){var i=r.src,a=r.imageCache,o=r.imageRect,s=r.drawRect,c=a.size,l=e.getTransform(),u=l.a,d=l.b,f=l.c,p=l.d,m=l.e,h=l.f;if(e.resetTransform(),!(a!=null&&a.gridSize)){this.imagePool.createImageTiles(i,[],function(){n.ownerDocument&&(n.dirty(),n.ownerDocument.defaultView.context.renderingService.dirty())},n).catch(function(e){console.error(e)});return}for(var g=[c[0]/o[2],c[1]/o[3]],_=[a.tileSize[0]/g[0],a.tileSize[1]/g[1]],v=[Math.floor((s[0]-o[0])/_[0]),Math.ceil((s[0]+s[2]-o[0])/_[0])],y=v[0],b=v[1],x=[Math.floor((s[1]-o[1])/_[1]),Math.ceil((s[1]+s[3]-o[1])/_[1])],S=x[0],C=x[1],w=S;w<=C;w++)for(var T=y;T<=b;T++){var E=a.tiles[w][T];if(E){var D=[Math.floor(o[0]+E.tileX*_[0]),Math.floor(o[1]+E.tileY*_[1]),Math.ceil(_[0]),Math.ceil(_[1])];e.drawImage(E.data,D[0],D[1],D[2],D[3])}}e.setTransform(u,d,f,p,m,h)}},{key:`render`,value:function(e,n,r){var i=n.x,a=i===void 0?0:i,o=n.y,s=o===void 0?0:o,c=n.width,l=n.height,u=n.src,d=n.shadowColor,f=n.shadowBlur,p=this.imagePool.getImageSync(u,r),m=p?.img,h=c,g=l;if(m){h||=m.width,g||=m.height,hy(r,e,!R(d)&&f>0);try{var _=r.ownerDocument.defaultView.getContextService().getDomElement(),v=_.width,y=_.height,b=e.getTransform(),x=b.a,S=b.b,C=b.c,w=b.d,T=b.e,E=b.f,D=oe(x,C,0,0,S,w,0,0,0,0,1,0,T,E,0,1),O=yy([a,s,h,g],D),k=vy([0,0,v,y],O);if(!k)return;if(!r.ownerDocument.defaultView.getConfig().enableLargeImageOptimization){t.renderFull(e,n,r,{image:m,drawRect:[a,s,h,g]});return}if(O[2]/p.size[0]<(p.downSamplingRate||.5)){this.renderDownSampled(e,n,r,{src:u,imageCache:p,drawRect:[a,s,h,g]});return}if(!ImagePool.isSupportTile){t.renderFull(e,n,r,{image:m,drawRect:[a,s,h,g]});return}this.renderTile(e,n,r,{src:u,imageCache:p,imageRect:O,drawRect:k})}catch{}}}},{key:`drawToContext`,value:function(e,t,n,r,i){this.render(e,t.parsedStyle,t)}}],[{key:`renderFull`,value:function(e,t,n,r){e.drawImage(r.image,Math.floor(r.drawRect[0]),Math.floor(r.drawRect[1]),Math.ceil(r.drawRect[2]),Math.ceil(r.drawRect[3]))}}])}(my),xy=function(e){function t(){return b(this,t),k(this,t,arguments)}return T(t,e),S(t,[{key:`render`,value:function(e,t,n,r,i,a){n.getBounds();var o=t.lineWidth,s=o===void 0?1:o,c=t.textAlign,l=c===void 0?`start`:c,u=t.textBaseline,d=u===void 0?`alphabetic`:u,f=t.lineJoin,p=f===void 0?`miter`:f,m=t.miterLimit,h=m===void 0?10:m,g=t.letterSpacing,_=g===void 0?0:g,v=t.stroke,y=t.fill,b=t.fillRule,x=t.fillOpacity,S=x===void 0?1:x,C=t.strokeOpacity,w=C===void 0?1:C,T=t.opacity,E=T===void 0?1:T,D=t.metrics,O=t.x,k=O===void 0?0:O,A=t.y,j=A===void 0?0:A,ee=t.dx,te=t.dy,M=t.shadowColor,ne=t.shadowBlur,re=t.textDecorationLine,ie=D.font,N=D.lines,P=D.height,ae=D.lineHeight,F=D.lineMetrics;e.font=ie,e.lineWidth=s,e.textAlign=l===`middle`?`center`:l;var oe=d;oe===`alphabetic`&&(oe=`bottom`),e.lineJoin=p,R(h)||(e.miterLimit=h);var se=j;d===`middle`?se+=-P/2-ae/2:d===`bottom`||d===`alphabetic`||d===`ideographic`?se+=-P:(d===`top`||d===`hanging`)&&(se+=-ae);var ce=k+(ee||0);se+=te||0,N.length===1&&(oe===`bottom`?(oe=`middle`,se-=.5*P):oe===`top`&&(oe=`middle`,se+=.5*P)),e.textBaseline=oe,hy(n,e,!R(M)&&ne>0);for(var le=0;le<N.length;le++){var ue=s/2+ce;se+=ae,!R(v)&&!v.isNone&&s&&this.drawLetterSpacing(e,n,N[le],F[le],l,ue,se,_,y,b,S,v,w,E,!0,r,i,a),R(y)||this.drawLetterSpacing(e,n,N[le],F[le],l,ue,se,_,y,b,S,v,w,E,!1,r,i,a)}re&&re!==`none`&&this.drawTextDecorations(e,t,n,N,ae,ce,j+(te||0),r,i,a)}},{key:`drawLetterSpacing`,value:function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_){if(s===0){m?this.strokeText(e,t,n,a,o,d,f,h,g,_):this.fillText(e,t,n,a,o,c,l,u,p,h,g,_);return}var v=e.textAlign;e.textAlign=`left`;var y=a;i===`center`||i===`middle`?y=a-r.width/2:(i===`right`||i===`end`)&&(y=a-r.width);for(var b=Array.from(n),x=e.measureText(n).width,S=0,C=0;C<b.length;++C){var w=b[C];m?this.strokeText(e,t,w,y,o,d,f,h,g,_):this.fillText(e,t,w,y,o,c,l,u,p,h,g,_),S=e.measureText(n.substring(C+1)).width,y+=x-S+s,x=S}e.textAlign=v}},{key:`fillText`,value:function(e,t,n,r,i,a,o,s,c,l,u,d){gy(e,t,a,o,l,u,d,this.imagePool,!0);var f,p=!R(s)&&s!==1;p&&(f=e.globalAlpha,e.globalAlpha=s*c),e.fillText(n,r,i),p&&(e.globalAlpha=f)}},{key:`strokeText`,value:function(e,t,n,r,i,a,o,s,c,l){_y(e,t,a,s,c,l,this.imagePool,!0);var u,d=!R(o)&&o!==1;d&&(u=e.globalAlpha,e.globalAlpha=o),e.strokeText(n,r,i),d&&(e.globalAlpha=u)}},{key:`drawTextDecorations`,value:function(e,t,n,r,i,a,o,s,c,l){var u=t.textDecorationLine,d=t.textDecorationColor,f=t.textDecorationStyle,p=t.textDecorationThickness,m=p===void 0?1:p,h=t.textAlign,g=h===void 0?`start`:h,_=t.lineWidth,v=_===void 0?1:_,y=t.metrics;if(!(!u||u===`none`)){var b=y.lineMetrics,x=u.split(` `);switch(e.lineWidth=m,d&&(e.strokeStyle=`rgba(${d.r}, ${d.g}, ${d.b}, ${d.alpha})`),f){case`dashed`:e.setLineDash([5,5]);break;case`dotted`:e.setLineDash([2,2]);break;case`wavy`:e.setLineDash([]);break;default:e.setLineDash([]);break}var S=o,C=t.textBaseline,w=C===void 0?`alphabetic`:C;w===`middle`?S+=-y.height/2-i/2:w===`bottom`||w===`alphabetic`||w===`ideographic`?S+=-y.height:(w===`top`||w===`hanging`)&&(S+=-i);for(var T=0;T<r.length;T++){S+=i;var E=b[T];if(E){var D=v/2,O=a,k=a+E.width;g===`center`||g===`middle`?(O=a-E.width/2,k=a+E.width/2):(g===`right`||g===`end`)&&(O=a-E.width,k=a),O+=D,k+=D;var A=ee(x),j;try{for(A.s();!(j=A.n()).done;){var te=j.value,M=S;switch(te){case`underline`:M+=2;break;case`overline`:M-=i-2;break;case`line-through`:M-=i/2;break;default:continue}f===`wavy`?this.drawWavyLine(e,O,k,M):(e.beginPath(),e.moveTo(O,M),e.lineTo(k,M),e.stroke())}}catch(e){A.e(e)}finally{A.f()}}}e.setLineDash([])}}},{key:`drawWavyLine`,value:function(e,t,n,r){var i=2,a=10,o=Math.floor((n-t)/a);e.beginPath(),e.moveTo(t,r);for(var s=0;s<o;s++){var c=t+s*a+a/4,l=r+i,u=t+s*a+a/2,d=r;e.quadraticCurveTo(c,l,u,d);var f=t+s*a+a*3/4,p=r-i,m=t+(s+1)*a,h=r;e.quadraticCurveTo(f,p,m,h)}e.stroke()}},{key:`drawToContext`,value:function(e,t,n,r,i){this.render(e,t.parsedStyle,t,t.ownerDocument.defaultView.context,r,i)}}])}(my),Sy=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return b(this,t),e=k(this,t),e.name=`canvas-renderer`,e.options=n,e}return T(t,e),S(t,[{key:`init`,value:function(){var e,t=y({dirtyObjectNumThreshold:500,dirtyObjectRatioThreshold:.8},this.options),n=this.context.imagePool,r=new my(n),i=(e={},_(_(_(_(_(_(_(_(_(_(e,U.CIRCLE,r),U.ELLIPSE,r),U.RECT,r),U.IMAGE,new by(n)),U.TEXT,new xy(n)),U.LINE,r),U.POLYLINE,r),U.POLYGON,r),U.PATH,r),U.GROUP,void 0),_(_(_(e,U.HTML,void 0),U.MESH,void 0),U.FRAGMENT,void 0));this.context.defaultStyleRendererFactory=i,this.context.styleRendererFactory=i,this.addRenderingPlugin(new oy(t))}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins(),delete this.context.defaultStyleRendererFactory,delete this.context.styleRendererFactory}}])}(Ca),Cy=et(),wy=et(),Ty=et(),Ey=P(),Dy=function(){function e(){var t=this;b(this,e),this.isHit=function(e,n,r,i){var a=t.context.pointInPathPickerFactory[e.nodeName];if(a){var o=ue(Ey,r),s=_t(wy,at(Ty,n[0],n[1],0),o);if(a(e,new Pa(s[0],s[1]),i,t.isPointInPath,t.context,t.runtime))return!0}return!1},this.isPointInPath=function(e,n){var r=t.runtime.offscreenCanvasCreator.getOrCreateContext(t.context.config.offscreenCanvas),i=t.context.pathGeneratorFactory[e.nodeName];return i&&(r.beginPath(),i(r,e.parsedStyle),r.closePath()),r.isPointInPath(n.x,n.y)}}return S(e,[{key:`apply`,value:function(t,n){var r=this,i=t.renderingService,a=t.renderingContext;this.context=t,this.runtime=n;var o=a.root?.ownerDocument;i.hooks.pick.tapPromise(e.tag,function(){var e=xa(ya().mark(function e(t){return ya().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt(`return`,r.pick(o,t));case 1:case`end`:return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}()),i.hooks.pickSync.tap(e.tag,function(e){return r.pick(o,e)})}},{key:`pick`,value:function(e,t){var n=t.topmost,r=t.position,i=r.x,a=r.y,o=at(Cy,i,a,0),s=e.elementsFromBBox(o[0],o[1],o[0],o[1]),c=[],l=ee(s),u;try{for(l.s();!(u=l.n()).done;){var d=u.value,f=d.getWorldTransform();if(this.isHit(d,o,f,!1)){var p=Ul(d);if(p){var m=p.parsedStyle.clipPath;if(this.isHit(m,o,m.getWorldTransform(),!0)){if(n)return t.picked=[d],t;c.push(d)}}else{if(n)return t.picked=[d],t;c.push(d)}}}}catch(e){l.e(e)}finally{l.f()}return t.picked=c,t}}])}();Dy.tag=`CanvasPicker`;function Oy(e,t,n){var r=e.parsedStyle,i=r.cx,a=i===void 0?0:i,o=r.cy,s=o===void 0?0:o,c=r.r,l=r.fill,u=r.stroke,d=r.lineWidth,f=d===void 0?1:d,p=r.increasedLineWidthForHitTesting,h=p===void 0?0:p,g=r.pointerEvents,_=g===void 0?`auto`:g,v=(f+h)/2,y=Vi(a,s,t.x,t.y),b=m($l(_,l,u),2),x=b[0],S=b[1];return x&&S||n?y<=c+v:x?y<=c:S?y>=c-v&&y<=c+v:!1}function ky(e,t,n,r){return e/(n*n)+t/(r*r)}function Ay(e,t,n){var r=e.parsedStyle,i=r.cx,a=i===void 0?0:i,o=r.cy,s=o===void 0?0:o,c=r.rx,l=r.ry,u=r.fill,d=r.stroke,f=r.lineWidth,p=f===void 0?1:f,h=r.increasedLineWidthForHitTesting,g=h===void 0?0:h,_=r.pointerEvents,v=_===void 0?`auto`:_,y=t.x,b=t.y,x=m($l(v,u,d),2),S=x[0],C=x[1],w=(p+g)/2,T=(y-a)*(y-a),E=(b-s)*(b-s);return S&&C||n?ky(T,E,c+w,l+w)<=1:S?ky(T,E,c,l)<=1:C?ky(T,E,c-w,l-w)>=1&&ky(T,E,c+w,l+w)<=1:!1}function jy(e,t,n,r,i,a){return i>=e&&i<=e+n&&a>=t&&a<=t+r}function My(e,t,n,r,i,a,o){var s=i/2;return jy(e-s,t-s,n,i,a,o)||jy(e+n-s,t-s,i,r,a,o)||jy(e+s,t+r-s,n,i,a,o)||jy(e-s,t+s,i,r,a,o)}function Ny(e,t,n,r,i,a,o,s){var c=(Math.atan2(s-t,o-e)+Math.PI*2)%(Math.PI*2),l={x:e+n*Math.cos(c),y:t+n*Math.sin(c)};return Vi(l.x,l.y,o,s)<=a/2}function Py(e,t,n,r,i,a,o){var s=Math.min(e,n),c=Math.max(e,n),l=Math.min(t,r),u=Math.max(t,r),d=i/2;return a>=s-d&&a<=c+d&&o>=l-d&&o<=u+d?Qi(e,t,n,r,a,o)<=i/2:!1}function Fy(e,t,n,r,i){var a=e.length;if(a<2)return!1;for(var o=0;o<a-1;o++){var s=e[o][0],c=e[o][1],l=e[o+1][0],u=e[o+1][1];if(Py(s,c,l,u,t,n,r))return!0}if(i){var d=e[0],f=e[a-1];if(Py(d[0],d[1],f[0],f[1],t,n,r))return!0}return!1}var Iy=1e-6;function Ly(e){return Math.abs(e)<Iy?0:e<0?-1:1}function Ry(e,t,n){return(n[0]-e[0])*(t[1]-e[1])===(t[0]-e[0])*(n[1]-e[1])&&Math.min(e[0],t[0])<=n[0]&&n[0]<=Math.max(e[0],t[0])&&Math.min(e[1],t[1])<=n[1]&&n[1]<=Math.max(e[1],t[1])}function zy(e,t,n){var r=!1,i=e.length;if(i<=2)return!1;for(var a=0;a<i;a++){var o=e[a],s=e[(a+1)%i];if(Ry(o,s,[t,n]))return!0;Ly(o[1]-n)>0!=Ly(s[1]-n)>0&&Ly(t-(n-o[1])*(o[0]-s[0])/(o[1]-s[1])-o[0])<0&&(r=!r)}return r}function By(e,t,n){for(var r=!1,i=0;i<e.length;i++){var a=e[i];if(r=zy(a,t,n),r)break}return r}function Vy(e,t,n){var r=e.parsedStyle,i=r.x1,a=r.y1,o=r.x2,s=r.y2,c=r.lineWidth,l=c===void 0?1:c,u=r.increasedLineWidthForHitTesting,d=u===void 0?0:u,f=r.pointerEvents,p=f===void 0?`auto`:f,h=r.fill,g=r.stroke;return!m($l(p,h,g),2)[1]&&!n||!l?!1:Py(i,a,o,s,l+d,t.x,t.y)}function Hy(e,t,n,r,i){for(var a=!1,o=t/2,s=0;s<e.length;s++){var c=e[s],l=c.currentPoint,u=c.params,d=c.prePoint,f=c.box;if(!(f&&!jy(f.x-o,f.y-o,f.width+t,f.height+t,n,r)))switch(c.command){case`L`:case`Z`:if(a=Py(d[0],d[1],l[0],l[1],t,n,r),a)return!0;break;case`Q`:if(a=ua(d[0],d[1],u[1],u[2],u[3],u[4],n,r)<=t/2,a)return!0;break;case`C`:if(a=ra(d[0],d[1],u[1],u[2],u[3],u[4],u[5],u[6],n,r,i)<=t/2,a)return!0;break;case`A`:c.cubicParams||=ci(d[0],d[1],u[1],u[2],u[3],u[4],u[5],u[6],u[7],void 0);for(var p=c.cubicParams,m=d,h=0;h<p.length;h+=6){var g=ra(m[0],m[1],p[h],p[h+1],p[h+2],p[h+3],p[h+4],p[h+5],n,r,i);if(m=[p[h+4],p[h+5]],a=g<=t/2,a)return!0}break}}return a}function Uy(e,t,n,r,i,a){var o=e.parsedStyle,s=o.lineWidth,c=s===void 0?1:s,l=o.increasedLineWidthForHitTesting,u=l===void 0?0:l,d=o.stroke,f=o.fill,p=o.d,h=o.pointerEvents,g=h===void 0?`auto`:h,_=p.segments,v=p.hasArc,y=p.polylines,b=p.polygons,x=m($l(g,b?.length&&f,d),2),S=x[0],C=x[1],w=Cc(e),T=!1;return S||n?(T=v?r(e,t):By(b,t.x,t.y)||By(y,t.x,t.y),T):((C||n)&&(T=Hy(_,c+u,t.x,t.y,w)),T)}function Wy(e,t,n){var r=e.parsedStyle,i=r.stroke,a=r.fill,o=r.lineWidth,s=o===void 0?1:o,c=r.increasedLineWidthForHitTesting,l=c===void 0?0:c,u=r.points,d=r.pointerEvents,f=m($l(d===void 0?`auto`:d,a,i),2),p=f[0],h=f[1],g=!1;return(h||n)&&(g=Fy(u.points,s+l,t.x,t.y,!0)),!g&&(p||n)&&(g=zy(u.points,t.x,t.y)),g}function Gy(e,t,n){var r=e.parsedStyle,i=r.lineWidth,a=i===void 0?1:i,o=r.increasedLineWidthForHitTesting,s=o===void 0?0:o,c=r.points,l=r.pointerEvents,u=l===void 0?`auto`:l,d=r.fill,f=r.stroke;return!m($l(u,d,f),2)[1]&&!n||!a?!1:Fy(c.points,a+s,t.x,t.y,!1)}function Ky(e,t,n,r,i){var a=e.parsedStyle,o=a.radius,s=a.fill,c=a.stroke,l=a.lineWidth,u=l===void 0?1:l,d=a.increasedLineWidthForHitTesting,f=d===void 0?0:d,p=a.x,h=p===void 0?0:p,g=a.y,_=g===void 0?0:g,v=a.width,y=a.height,b=a.pointerEvents,x=m($l(b===void 0?`auto`:b,s,c),2),S=x[0],C=x[1],w=o&&o.some(function(e){return e!==0}),T=u+f;if(w){var E=!1;return(C||n)&&(E=qy(h,_,v,y,o.map(function(e){return mn(e,0,Math.min(Math.abs(v)/2,Math.abs(y)/2))}),T,t.x,t.y)),!E&&(S||n)&&(E=r(e,t)),E}else{var D=T/2;if(S&&C||n)return jy(h-D,_-D,v+D,y+D,t.x,t.y);if(S)return jy(h,_,v,y,t.x,t.y);if(C)return My(h,_,v,y,T,t.x,t.y)}return!1}function qy(e,t,n,r,i,a,o,s){var c=m(i,4),l=c[0],u=c[1],d=c[2],f=c[3];return Py(e+l,t,e+n-u,t,a,o,s)||Py(e+n,t+u,e+n,t+r-d,a,o,s)||Py(e+n-d,t+r,e+f,t+r,a,o,s)||Py(e,t+r-f,e,t+l,a,o,s)||Ny(e+n-u,t+u,u,1.5*Math.PI,2*Math.PI,a,o,s)||Ny(e+n-d,t+r-d,d,0,.5*Math.PI,a,o,s)||Ny(e+f,t+r-f,f,.5*Math.PI,Math.PI,a,o,s)||Ny(e+l,t+l,l,Math.PI,1.5*Math.PI,a,o,s)}function Jy(e,t,n,r,i,a){var o=e.parsedStyle,s=o.pointerEvents,c=s===void 0?`auto`:s,l=o.x,u=l===void 0?0:l,d=o.y,f=d===void 0?0:d,p=o.width,m=o.height;if(c===`non-transparent-pixel`){var h=i.config.offscreenCanvas,g=a.offscreenCanvasCreator.getOrCreateCanvas(h),_=a.offscreenCanvasCreator.getOrCreateContext(h,{willReadFrequently:!0});return g.width=p,g.height=m,i.defaultStyleRendererFactory[U.IMAGE].render(_,y(y({},e.parsedStyle),{},{x:0,y:0}),e,void 0,void 0,void 0),_.getImageData(t.x-u,t.y-f,1,1).data.every(function(e){return e!==0})}return!0}function Yy(e,t,n,r){var i=e.getGeometryBounds();return t.x>=i.min[0]&&t.y>=i.min[1]&&t.x<=i.max[0]&&t.y<=i.max[1]}var Xy=function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.name=`canvas-picker`,e}return T(t,e),S(t,[{key:`init`,value:function(){var e,t=(e={},_(_(_(_(_(_(_(_(_(_(e,U.CIRCLE,Oy),U.ELLIPSE,Ay),U.RECT,Ky),U.LINE,Vy),U.POLYLINE,Gy),U.POLYGON,Wy),U.PATH,Uy),U.TEXT,Yy),U.GROUP,null),U.IMAGE,Jy),_(_(e,U.HTML,null),U.MESH,null));this.context.pointInPathPickerFactory=t,this.addRenderingPlugin(new Dy)}},{key:`destroy`,value:function(){delete this.context.pointInPathPickerFactory,this.removeAllRenderingPlugins()}}])}(Ca);function Zy(e,t){var n=t.cx,r=n===void 0?0:n,i=t.cy,a=i===void 0?0:i,o=t.r;e.arc(r,a,o,0,Math.PI*2,!1)}function Qy(e,t){var n=t.cx,r=n===void 0?0:n,i=t.cy,a=i===void 0?0:i,o=t.rx,s=t.ry;if(e.ellipse)e.ellipse(r,a,o,s,0,0,Math.PI*2,!1);else{var c=o>s?o:s,l=o>s?1:o/s,u=o>s?s/o:1;e.save(),e.scale(l,u),e.arc(r,a,c,0,Math.PI*2)}}function $y(e,t){var n=t.x1,r=t.y1,i=t.x2,a=t.y2,o=t.markerStart,s=t.markerEnd,c=t.markerStartOffset,l=t.markerEndOffset,u=0,d=0,f=0,p=0,m=0,h,g;o&&qd(o)&&c&&(h=i-n,g=a-r,m=Math.atan2(g,h),u=Math.cos(m)*(c||0),d=Math.sin(m)*(c||0)),s&&qd(s)&&l&&(h=n-i,g=r-a,m=Math.atan2(g,h),f=Math.cos(m)*(l||0),p=Math.sin(m)*(l||0)),e.moveTo(n+u,r+d),e.lineTo(i+f,a+p)}function eb(e,t){var n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=t.d,s=o.absolutePath,c=o.segments,l=0,u=0,d=0,f=0,p=0,h,g;if(n&&qd(n)&&i){var _=m(n.parentNode.getStartTangent(),2),v=_[0],y=_[1];h=v[0]-y[0],g=v[1]-y[1],p=Math.atan2(g,h),l=Math.cos(p)*(i||0),u=Math.sin(p)*(i||0)}if(r&&qd(r)&&a){var b=m(r.parentNode.getEndTangent(),2),x=b[0],S=b[1];h=x[0]-S[0],g=x[1]-S[1],p=Math.atan2(g,h),d=Math.cos(p)*(a||0),f=Math.sin(p)*(a||0)}for(var C=0;C<s.length;C++){var w=s[C],T=w[0],E=s[C+1],D=C===0&&(l!==0||u!==0),O=(C===s.length-1||E&&(E[0]===`M`||E[0]===`Z`))&&d!==0&&f!==0,k=m(D?[l,u]:[0,0],2),A=k[0],j=k[1],ee=m(O?[d,f]:[0,0],2),te=ee[0],M=ee[1];switch(T){case`M`:e.moveTo(w[1]+A,w[2]+j);break;case`L`:e.lineTo(w[1]+te,w[2]+M);break;case`Q`:e.quadraticCurveTo(w[1],w[2],w[3]+te,w[4]+M);break;case`C`:e.bezierCurveTo(w[1],w[2],w[3],w[4],w[5]+te,w[6]+M);break;case`A`:var ne=c[C].arcParams,re=ne.cx,ie=ne.cy,N=ne.rx,P=ne.ry,ae=ne.startAngle,F=ne.endAngle,oe=ne.xRotation,se=ne.sweepFlag;if(e.ellipse)e.ellipse(re,ie,N,P,oe,ae,F,!!(1-se));else{var ce=N>P?N:P,le=N>P?1:N/P,ue=N>P?P/N:1;e.translate(re,ie),e.rotate(oe),e.scale(le,ue),e.arc(0,0,ce,ae,F,!!(1-se)),e.scale(1/le,1/ue),e.rotate(-oe),e.translate(-re,-ie)}O&&e.lineTo(w[6]+d,w[7]+f);break;case`Z`:e.closePath();break}}}function tb(e,t){var n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=t.points.points,s=o.length,c=o[0][0],l=o[0][1],u=o[s-1][0],d=o[s-1][1],f=0,p=0,m=0,h=0,g=0,_,v;n&&qd(n)&&i&&(_=o[1][0]-o[0][0],v=o[1][1]-o[0][1],g=Math.atan2(v,_),f=Math.cos(g)*(i||0),p=Math.sin(g)*(i||0)),r&&qd(r)&&a&&(_=o[s-1][0]-o[0][0],v=o[s-1][1]-o[0][1],g=Math.atan2(v,_),m=Math.cos(g)*(a||0),h=Math.sin(g)*(a||0)),e.moveTo(c+(f||m),l+(p||h));for(var y=1;y<s-1;y++){var b=o[y];e.lineTo(b[0],b[1])}e.lineTo(u,d)}function nb(e,t){var n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=t.points.points,s=o.length,c=o[0][0],l=o[0][1],u=o[s-1][0],d=o[s-1][1],f=0,p=0,m=0,h=0,g=0,_,v;n&&qd(n)&&i&&(_=o[1][0]-o[0][0],v=o[1][1]-o[0][1],g=Math.atan2(v,_),f=Math.cos(g)*(i||0),p=Math.sin(g)*(i||0)),r&&qd(r)&&a&&(_=o[s-2][0]-o[s-1][0],v=o[s-2][1]-o[s-1][1],g=Math.atan2(v,_),m=Math.cos(g)*(a||0),h=Math.sin(g)*(a||0)),e.moveTo(c+f,l+p);for(var y=1;y<s-1;y++){var b=o[y];e.lineTo(b[0],b[1])}e.lineTo(u+m,d+h)}function rb(e,t){var n=t.x,r=n===void 0?0:n,i=t.y,a=i===void 0?0:i,o=t.radius,s=t.width,c=t.height,l=s,u=c;if(!(o&&o.some(function(e){return e!==0})))e.rect(r,a,l,u);else{var d=s>0?1:-1,f=c>0?1:-1,p=d+f===0,h=m(o.map(function(e){return mn(e,0,Math.min(Math.abs(l)/2,Math.abs(u)/2))}),4),g=h[0],_=h[1],v=h[2],y=h[3];e.moveTo(d*g+r,a),e.lineTo(l-d*_+r,a),_!==0&&e.arc(l-d*_+r,f*_+a,_,-f*Math.PI/2,d>0?0:Math.PI,p),e.lineTo(l+r,u-f*v+a),v!==0&&e.arc(l-d*v+r,u-f*v+a,v,d>0?0:Math.PI,f>0?Math.PI/2:1.5*Math.PI,p),e.lineTo(d*y+r,u+a),y!==0&&e.arc(d*y+r,u-f*y+a,y,f>0?Math.PI/2:-Math.PI/2,d>0?Math.PI:0,p),e.lineTo(r,f*g+a),g!==0&&e.arc(d*g+r,f*g+a,g,d>0?Math.PI:0,f>0?Math.PI*1.5:Math.PI/2,p)}}var ib=function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.name=`canvas-path-generator`,e}return T(t,e),S(t,[{key:`init`,value:function(){var e,t=(e={},_(_(_(_(_(_(_(_(_(_(e,U.CIRCLE,Zy),U.ELLIPSE,Qy),U.RECT,rb),U.LINE,$y),U.POLYLINE,nb),U.POLYGON,tb),U.PATH,eb),U.TEXT,void 0),U.GROUP,void 0),U.IMAGE,void 0),_(_(_(e,U.HTML,void 0),U.MESH,void 0),U.FRAGMENT,void 0));this.context.pathGeneratorFactory=t}},{key:`destroy`,value:function(){delete this.context.pathGeneratorFactory}}])}(Ca),ab=function(){function e(t){b(this,e),this.renderingContext=t.renderingContext,this.canvasConfig=t.config}return S(e,[{key:`init`,value:function(){var e=this.canvasConfig,t=e.container,n=e.canvas;if(n)this.$canvas=n,t&&n.parentElement!==t&&t.appendChild(n),this.$container=n.parentElement,this.canvasConfig.container=this.$container;else if(t&&(this.$container=un(t)?document.getElementById(t):t,this.$container)){var r=document.createElement(`canvas`);this.$container.appendChild(r),this.$container.style.position||(this.$container.style.position=`relative`),this.$canvas=r}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,t){var n=this.canvasConfig.devicePixelRatio;this.dpr=n,this.$canvas&&(this.$canvas.width=this.dpr*e,this.$canvas.height=this.dpr*t,Gl(this.$canvas,e,t)),this.renderingContext.renderReasons.add(td.CAMERA_CHANGED)}},{key:`applyCursorStyle`,value:function(e){this.$container&&this.$container.style&&(this.$container.style.cursor=e)}},{key:`toDataURL`,value:function(){var e=xa(ya().mark(function e(){var t,n,r,i=arguments;return ya().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=i.length>0&&i[0]!==void 0?i[0]:{},n=t.type,r=t.encoderOptions,e.abrupt(`return`,this.context.canvas.toDataURL(n,r));case 1:case`end`:return e.stop()}},e,this)}));function t(){return e.apply(this,arguments)}return t}()}])}(),ob=function(e){function t(){var e;b(this,t);var n=[...arguments];return e=k(this,t,[].concat(n)),e.name=`canvas-context-register`,e}return T(t,e),S(t,[{key:`init`,value:function(){this.context.ContextService=ab}},{key:`destroy`,value:function(){delete this.context.ContextService}}])}(Ca),sb=function(e){function t(e){var n;return b(this,t),n=k(this,t,[e]),n.registerPlugin(new ob),n.registerPlugin(new Kf.Plugin),n.registerPlugin(new ib),n.registerPlugin(new Sy),n.registerPlugin(new Zf.Plugin),n.registerPlugin(new Xy),n.registerPlugin(new Yf.Plugin),n}return T(t,e),S(t)}(wa),cb=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},lb=class e extends Uv{constructor(t){super(Object.assign(Object.assign({},t),{style:Object.assign({},e.defaultStyleProps,t.style)})),this.rootPointerEvent=new qu(null),this.forwardEvents=e=>{let t=this.context.canvas,n=t.context.renderingContext.root.ownerDocument.defaultView;this.normalizeToPointerEvent(e,n).forEach(r=>{let i=this.bootstrapEvent(this.rootPointerEvent,r,n,e);Yn(t.context.eventService,`mappingTable.pointerupoutside`,[]),t.context.eventService.mapEvent(i)})}}get eventService(){return this.context.canvas.context.eventService}get events(){return[X.CLICK,X.POINTER_DOWN,X.POINTER_MOVE,X.POINTER_UP,X.POINTER_OVER,X.POINTER_LEAVE]}getDomElement(){return this.getShape(`key`).getDomElement()}render(e=this.parsedAttributes,t=this){this.drawKeyShape(e,t),this.drawPortShapes(e,t)}getKeyStyle(e){let t=Zn(e,[`dx`,`dy`,`innerHTML`,`pointerEvents`,`cursor`]),{dx:n=0,dy:r=0}=t,i=cb(t,[`dx`,`dy`]),[a,o]=this.getSize(e);return Object.assign(Object.assign({x:n,y:r},i),{width:a,height:o})}drawKeyShape(e,t){let n=this.getKeyStyle(e),{x:r,y:i,width:a=0,height:o=0}=n,s=this.upsert(`key-container`,_f,{x:r,y:i,width:a,height:o,opacity:0},t);return this.upsert(`key`,sf,n,s)}connectedCallback(){if(!(this.context.canvas.getRenderer(`main`)instanceof sb))return;let e=this.getDomElement();this.events.forEach(t=>{e.addEventListener(t,this.forwardEvents)})}attributeChangedCallback(e,t,n){e===`zIndex`&&t!==n&&(this.getDomElement().style.zIndex=n)}destroy(){let e=this.getDomElement();this.events.forEach(t=>{e.removeEventListener(t,this.forwardEvents)}),super.destroy()}normalizeToPointerEvent(e,t){let n=[];if(t.isTouchEvent(e))for(let t=0;t<e.changedTouches.length;t++){let r=e.changedTouches[t];Mn(r.button)&&(r.button=0),Mn(r.buttons)&&(r.buttons=1),Mn(r.isPrimary)&&(r.isPrimary=e.touches.length===1&&e.type===`touchstart`),Mn(r.width)&&(r.width=r.radiusX||1),Mn(r.height)&&(r.height=r.radiusY||1),Mn(r.tiltX)&&(r.tiltX=0),Mn(r.tiltY)&&(r.tiltY=0),Mn(r.pointerType)&&(r.pointerType=`touch`),Mn(r.pointerId)&&(r.pointerId=r.identifier||0),Mn(r.pressure)&&(r.pressure=r.force||.5),Mn(r.twist)&&(r.twist=0),Mn(r.tangentialPressure)&&(r.tangentialPressure=0),r.isNormalized=!0,r.type=e.type,n.push(r)}else if(t.isMouseEvent(e)){let t=e;Mn(t.isPrimary)&&(t.isPrimary=!0),Mn(t.width)&&(t.width=1),Mn(t.height)&&(t.height=1),Mn(t.tiltX)&&(t.tiltX=0),Mn(t.tiltY)&&(t.tiltY=0),Mn(t.pointerType)&&(t.pointerType=`mouse`),Mn(t.pointerId)&&(t.pointerId=1),Mn(t.pressure)&&(t.pressure=.5),Mn(t.twist)&&(t.twist=0),Mn(t.tangentialPressure)&&(t.tangentialPressure=0),t.isNormalized=!0,n.push(t)}else n.push(e);return n}transferMouseData(e,t){e.isTrusted=t.isTrusted,e.srcElement=t.srcElement,e.timeStamp=performance.now(),e.type=t.type,e.altKey=t.altKey,e.metaKey=t.metaKey,e.shiftKey=t.shiftKey,e.ctrlKey=t.ctrlKey,e.button=t.button,e.buttons=t.buttons,e.client.x=t.clientX,e.client.y=t.clientY,e.movement.x=t.movementX,e.movement.y=t.movementY,e.page.x=t.pageX,e.page.y=t.pageY,e.screen.x=t.screenX,e.screen.y=t.screenY,e.relatedTarget=null}bootstrapEvent(e,t,n,r){e.view=n,e.originalEvent=null,e.nativeEvent=r,e.pointerId=t.pointerId,e.width=t.width,e.height=t.height,e.isPrimary=t.isPrimary,e.pointerType=t.pointerType,e.pressure=t.pressure,e.tangentialPressure=t.tangentialPressure,e.tiltX=t.tiltX,e.tiltY=t.tiltY,e.twist=t.twist,this.transferMouseData(e,t);let{x:i,y:a}=this.getViewportXY(t);e.viewport.x=i,e.viewport.y=a;let[o,s]=this.context.canvas.getCanvasByViewport([i,a]);return e.canvas.x=o,e.canvas.y=s,e.global.copyFrom(e.canvas),e.offset.copyFrom(e.canvas),e.isTrusted=r.isTrusted,e.type===`pointerleave`&&(e.type=`pointerout`),e}getViewportXY(e){let t,n,{offsetX:r,offsetY:i,clientX:a,clientY:o}=e;if(!R(r)&&!R(i))t=r,n=i;else{let e=this.eventService.client2Viewport({x:a,y:o});t=e.x,n=e.y}return{x:t,y:n}}onframe(){super.onframe();let{opacity:e}=this.attributes;this.getDomElement().style.opacity=`${e}`}};lb.defaultStyleProps={size:[160,80],halo:!1,icon:!1,label:!1,pointerEvents:`auto`};var ub=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},db=class e extends Uv{constructor(t){super(uv({style:e.defaultStyleProps},t))}getKeyStyle(e){let[t,n]=this.getSize(e),r=super.getKeyStyle(e),{fillOpacity:i,opacity:a=i}=r,o=ub(r,[`fillOpacity`,`opacity`]);return Object.assign(Object.assign({opacity:a},o),{width:t,height:n,x:-t/2,y:-n/2})}getBounds(){return this.getShape(`key`).getBounds()}getHaloStyle(e){if(e.halo===!1)return!1;let t=this.getShape(`key`).attributes,{fill:n,stroke:r}=t;ub(t,[`fill`,`stroke`]);let i=iv(this.getGraphicStyle(e),`halo`),a=Number(i.lineWidth),[o,s]=Jg(s_(this.getSize(e)),[a,a]),{lineWidth:c}=i,l={fill:`transparent`,lineWidth:c/2,width:o-c/2,height:s-c/2,x:-(o-c/2)/2,y:-(s-c/2)/2};return Object.assign(Object.assign({},i),l)}getIconStyle(e){let t=super.getIconStyle(e),[n,r]=this.getSize(e);return t?Object.assign({width:n*G_,height:r*G_},t):!1}drawKeyShape(e,t){let n=this.upsert(`key`,Fv,this.getKeyStyle(e),t);return Rv(this),n}drawHaloShape(e,t){this.upsert(`halo`,_f,this.getHaloStyle(e),t)}update(e){super.update(e),e&&(`x`in e||`y`in e||`z`in e)&&zv(this)}};db.defaultStyleProps={size:32};var fb=class extends Uv{constructor(e){super(e)}getKeyStyle(e){let[t,n]=this.getSize(e);return Object.assign(Object.assign({},super.getKeyStyle(e)),{width:t,height:n,x:-t/2,y:-n/2})}getIconStyle(e){let t=super.getIconStyle(e),{width:n,height:r}=this.getShape(`key`).attributes;return t?Object.assign({width:n*G_,height:r*G_},t):!1}drawKeyShape(e,t){return this.upsert(`key`,_f,this.getKeyStyle(e),t)}},pb=class extends Kv{constructor(e){super(e)}getInnerR(e){return e.innerR||this.getOuterR(e)*3/8}getOuterR(e){return Math.min(...this.getSize(e))/2}getPoints(e){return Kx(this.getOuterR(e),this.getInnerR(e))}getIconStyle(e){let t=super.getIconStyle(e),n=this.getInnerR(e)*2*G_;return t?Object.assign({width:n,height:n},t):!1}getPortXY(e,t){let{placement:n=`top`}=t;return Fx(this.getShape(`key`).getLocalBounds(),n,qx(this.getOuterR(e),this.getInnerR(e)),!1)}},mb=class e extends Kv{constructor(t){super(uv({style:e.defaultStyleProps},t))}getPoints(e){let{direction:t}=e,[n,r]=this.getSize(e);return Jx(n,r,t)}getPortXY(e,t){let{direction:n}=e,{placement:r=`top`}=t,i=this.getShape(`key`).getLocalBounds(),[a,o]=this.getSize(e);return Fx(i,r,Yx(a,o,n),!1)}getIconStyle(e){let{icon:t,iconText:n,iconSrc:r,direction:i}=e;if(t===!1||Kn(n||r))return!1;let a=iv(this.getGraphicStyle(e),`icon`),o=this.getShape(`key`).getLocalBounds(),[s,c]=Jh(o,i),l=Yh(o,i)*2*G_;return Object.assign({x:s,y:c,width:l,height:l},a)}};mb.defaultStyleProps={size:40,direction:`up`};var hb=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},gb=class e extends Uv{constructor(t){super(uv({style:e.defaultStyleProps},t)),this.type=`combo`,this.updateComboPosition(this.parsedAttributes)}getKeySize(e){let{collapsed:t,childrenNode:n=[]}=e;return n.length===0?this.getEmptyKeySize(e):t?this.getCollapsedKeySize(e):this.getExpandedKeySize(e)}getEmptyKeySize(e){let{padding:t,collapsedSize:n}=e,[r,i,a,o]=Mh(t);return Jg(sv(n),[o+i,r+a,0])}getCollapsedKeySize(e){return sv(e.collapsedSize)}getExpandedKeySize(e){let t=this.getContentBBox(e);return[Ph(t),Fh(t),0]}getContentBBox(e){let{childrenNode:t=[],padding:n}=e,r=t.map(e=>this.context.element.getElement(e)).filter(Boolean);if(r.length===0){let t=new ja,{x:n=0,y:r=0,size:i}=e,[a,o]=sv(i);return t.setMinMax([n-a/2,r-o/2,0],[n+a/2,r+o/2,0]),t}let i=Bh(r.map(e=>e.getBounds()));return n?zh(i,n):i}drawCollapsedMarkerShape(e,t){let n=this.getCollapsedMarkerStyle(e);this.upsert(`collapsed-marker`,Bv,n,t),Rv(this)}getCollapsedMarkerStyle(e){if(!e.collapsed||!e.collapsedMarker)return!1;let t=iv(this.getGraphicStyle(e),`collapsedMarker`),{type:n}=t,r=hb(t,[`type`]),[i,a]=__(this.getShape(`key`).getLocalBounds(),`center`),o=Object.assign(Object.assign({},r),{x:i,y:a});if(n){let t=this.getCollapsedMarkerText(n,e);Object.assign(o,{text:t})}return o}getCollapsedMarkerText(e,t){let{childrenData:n=[]}=t,{model:r}=this.context;return e===`descendant-count`?r.getDescendantsData(this.id).length.toString():e===`child-count`?n.length.toString():e===`node-count`?r.getDescendantsData(this.id).filter(e=>r.getElementType(Q(e))===`node`).length.toString():L(e)?e(n):``}getComboPosition(e){let{x:t=0,y:n=0,collapsed:r,childrenData:i=[]}=e;if(i.length===0)return[+t,+n,0];if(r){let{model:e}=this.context,r=e.getDescendantsData(this.id).filter(t=>!e.isCombo(Q(t)));return r.length>0&&r.some(h_)?Zg(r.reduce((e,t)=>Jg(e,m_(t)),[0,0,0]),r.length):[+t,+n,0]}return this.getContentBBox(e).center}getComboStyle(e){let[t,n]=this.getComboPosition(e);return{x:t,y:n,transform:[[`translate`,t,n]]}}updateComboPosition(e){let t=this.getComboStyle(e);Object.assign(this.style,t);let{x:n,y:r}=t;this.context.model.syncNodeLikeDatum({id:this.id,style:{x:n,y:r}}),zv(this)}render(e,t=this){super.render(e,t),this.drawCollapsedMarkerShape(e,t)}update(e={}){super.update(e),this.updateComboPosition(this.parsedAttributes)}onframe(){super.onframe(),this.attributes.collapsed||this.updateComboPosition(this.parsedAttributes),this.drawKeyShape(this.parsedAttributes,this)}animate(e,t){let n=super.animate(this.attributes.collapsed?e:e.map(e=>{var{x:t,y:n,z:r,transform:i}=e;return hb(e,[`x`,`y`,`z`,`transform`])}),t);return n&&new Proxy(n,{set:(e,t,n)=>(t===`currentTime`&&Promise.resolve().then(()=>this.onframe()),Reflect.set(e,t,n))})}};gb.defaultStyleProps={childrenNode:[],droppable:!0,draggable:!0,collapsed:!1,collapsedSize:32,collapsedMarker:!0,collapsedMarkerZIndex:1,collapsedMarkerFontSize:12,collapsedMarkerTextAlign:`center`,collapsedMarkerTextBaseline:`middle`,collapsedMarkerType:`child-count`};var _b=class extends gb{constructor(e){super(e)}drawKeyShape(e,t){return this.upsert(`key`,$d,this.getKeyStyle(e),t)}getKeyStyle(e){let{collapsed:t}=e,n=super.getKeyStyle(e),[r]=this.getKeySize(e);return Object.assign(Object.assign(Object.assign({},n),t&&iv(n,`collapsed`)),{r:r/2})}getCollapsedKeySize(e){let[t,n]=sv(e.collapsedSize),r=Math.max(t,n)/2;return[r*2,r*2,0]}getExpandedKeySize(e){let[t,n]=Ih(this.getContentBBox(e)),r=Math.sqrt(t**2+n**2)/2;return[r*2,r*2,0]}getIntersectPoint(e,t=!1){return A_(e,this.getShape(`key`).getBounds(),t)}},vb=class extends gb{constructor(e){super(e)}drawKeyShape(e,t){return this.upsert(`key`,_f,this.getKeyStyle(e),t)}getKeyStyle(e){let t=super.getKeyStyle(e),[n,r]=this.getKeySize(e);return Object.assign(Object.assign(Object.assign({},t),e.collapsed&&iv(t,`collapsed`)),{width:n,height:r,x:-n/2,y:-r/2})}},yb={padding:10};function bb(e,t,n,r,i,a){let{padding:o}=Object.assign(yb,a),s=Lh(n,o),c=Lh(r,o),l=[e,...i,t],u=null,d=[];for(let e=0,t=l.length;e<t-1;e++){let n=e+1,r=l[e],i=l[n],a=w_(r,i),f=null;if(e===0)if(n===t-1)if(s.intersects(c))f=kb(r,i,s,c);else if(!Gh(r,s)&&!Gh(i,c)){let e=qh(r,s),t=qh(i,c);f=Tb(e,t,Cb(e,t)),f.points.unshift(e),f.points.push(t)}else a||(f=Ob(r,i,s,c));else Hh(i,s)?f=kb(r,i,s,Lh(i,o),u):a||(f=Eb(r,i,s));else n===t-1?Hh(r,c)?f=kb(r,i,Lh(r,o),c,u):a||(f=Db(r,i,c,u)):a||(f=Tb(r,i,u));f?(d.push(...f.points),u=f.direction):u=Cb(r,i),n<t-1&&d.push(i)}return d.map(s_)}var xb={N:`S`,S:`N`,W:`E`,E:`W`},Sb={N:-Math.PI/2,S:Math.PI/2,E:0,W:Math.PI};function Cb(e,t){let[n,r]=e,[i,a]=t;return n===i?r>a?`N`:`S`:r===a?n>i?`W`:`E`:null}function wb(e,t){return t===`N`||t===`S`?Fh(e):Ph(e)}function Tb(e,t,n){let r=[e[0],t[1]],i=[t[0],e[1]],a=Cb(e,r),o=Cb(e,i),s=n?xb[n]:null,c=a===n||a!==s&&o!==n?r:i;return{points:[c],direction:Cb(c,t)}}function Eb(e,t,n){if(Gh(e,n)){let r=Ab(e,t,n);return{points:[r],direction:Cb(r,t)}}else{let r=qh(e,n),i=[`left`,`right`].includes(Kh(e,n))?[t[0],r[1]]:[r[0],t[1]];return{points:[i],direction:Cb(i,t)}}}function Db(e,t,n,r){let i=Gh(t,n)?t:qh(t,n),a=[[i[0],e[1]],[e[0],i[1]]],o=a.filter(e=>Wh(e,n)&&!Uh(e,n,!0)),s=o.filter(t=>Cb(t,e)!==r);if(s.length>0){let n=s.find(t=>Cb(e,t)===r)||s[0];return{points:[n],direction:Cb(n,t)}}else{let i=Zt(a,o)[0],s=x_(t,i,wb(n,r)/2);return{points:[Ab(s,e,n),s],direction:Cb(s,t)}}}function Ob(e,t,n,r){let i=Eb(e,t,n),a=c_(i.points[0]);if(Hh(a,r)){i=Eb(t,e,r);let o=c_(i.points[0]);if(Hh(o,n)){let s=x_(e,a,wb(n,Cb(e,a))/2),c=x_(t,o,wb(r,Cb(t,o))/2),l=[(s[0]+c[0])/2,(s[1]+c[1])/2],u=Eb(e,l,n),d=Db(l,t,r,u.direction);i.points=[u.points[0],d.points[0]],i.direction=d.direction}}return i}function kb(e,t,n,r,i){let a=.01,o=Bh([n,r]),s=t_(t,o.center)>t_(e,o.center),[c,l]=s?[t,e]:[e,t],u=Fh(o)+Ph(o),d;if(i){let e=[c[0]+u*Math.cos(Sb[i]),c[1]+u*Math.sin(Sb[i])];d=x_(qh(e,o),e,a)}else d=x_(qh(c,o),c,-a);let f=Ab(d,l,o),p=[b_(d,2),b_(f,2)];if(qn(b_(d),b_(f))){let e=i_(Yg(d,c),[1,0,0])+Math.PI/2;f=[l[0]+u*Math.cos(e),l[1]+u*Math.sin(e),0],f=b_(x_(qh(f,o),l,-a),2);let t=Ab(d,f,o);p=[d,t,f]}return{points:s?p.reverse():p,direction:Cb(s?d:f,t)}}function Ab(e,t,n){let r=[e[0],t[1]];return Hh(r,n)&&(r=[t[0],e[1]]),r}var jb={top:0,bottom:0,left:Math.PI/2,right:Math.PI/2,"top-right":Math.PI/4,"right-top":Math.PI/4,"bottom-left":Math.PI/4,"left-bottom":Math.PI/4,"right-bottom":-Math.PI/4,"bottom-right":-Math.PI/4,"left-top":-Math.PI/4,"top-left":-Math.PI/4};function Mb(e,t,n,r,i,a,o){let s=typeof t==`number`?t:.5;if(t===`start`&&(s=0),t===`end`&&(s=.99),a&&o){s=.5,r=0,i=0;let t=jb[o]??0;Math.cos(t)<-1e-6&&(t+=Math.PI);let a=n&&t!==0,[c,l]=Pb(e,s,r,i,a?t:void 0),u=[[`translate`,c,l]];return a&&u.push([`rotate`,t/Math.PI*180]),{textAlign:`center`,transform:u}}let c=v_(e.getPoint(s)),l=v_(e.getPoint(s+.01)),u=t===`start`?`left`:t===`end`?`right`:`center`;if(S_(c,l)||!n){let[t,n]=Pb(e,s,r,i);return{transform:[[`translate`,t,n]],textAlign:u}}let d=Math.atan2(l[1]-c[1],l[0]-c[0]);l[0]<c[0]&&(u=u===`center`?u:u===`left`?`right`:`left`,r*=-1,d+=Math.PI);let[f,p]=Pb(e,s,r,i,d),m=[[`translate`,f,p],[`rotate`,d/Math.PI*180]];return{textAlign:u,transform:m}}function Nb(e,t,n,r,i){let a=e.badge?.getGeometryBounds().halfExtents[0]*2||0,o=e.label?.getGeometryBounds().halfExtents[0]*2||0;return Mb(e.key,n,!0,(o?(o/2+a/2)*(t===`suffix`?1:-1):0)+r,i)}function Pb(e,t,n,r,i){let[a,o]=v_(e.getPoint(t)),s=n,c=r;return i&&(s=n*Math.cos(i)-r*Math.sin(i),c=n*Math.sin(i)+r*Math.cos(i)),[a+s,o+c]}function Fb(e,t,n,r){if(qn(e,t))return e;let i=Yg(t,e),a=[e[0]+n*i[0],e[1]+n*i[1]],o=r_(a_(i,!1));return a[0]+=r*o[0],a[1]+=r*o[1],a}function Ib(e){return hn(e)?[e,-e]:e}function Lb(e){return hn(e)?[e,1-e]:e}function Rb(e,t,n){return[[`M`,e[0],e[1]],[`Q`,n[0],n[1],t[0],t[1]]]}function zb(e,t,n){return[[`M`,e[0],e[1]],[`C`,n[0][0],n[0][1],n[1][0],n[1][1],t[0],t[1]]]}function Bb(e,t=0,n=!1){let r=e.length-1,i=e[0],a=e[r],o=e.slice(1,r),s=[[`M`,i[0],i[1]]];return o.forEach((e,n)=>{let r=o[n-1]||i,c=o[n+1]||a;if(!T_(r,e,c)&&t){let[n,i]=Vb(r,e,c,t);s.push([`L`,n[0],n[1]],[`Q`,e[0],e[1],i[0],i[1]],[`L`,i[0],i[1]])}else s.push([`L`,e[0],e[1]])}),s.push([`L`,a[0],a[1]]),n&&s.push([`Z`]),s}function Vb(e,t,n,r){let i=n_(e,t),a=n_(n,t),o=Math.min(r,Math.min(i,a)/2);return[[t[0]-o/i*(t[0]-e[0]),t[1]-o/i*(t[1]-e[1])],[t[0]-o/a*(t[0]-n[0]),t[1]-o/a*(t[1]-n[1])]]}var Hb=e=>{let t=Math.PI/2,n=Fh(e)/2,r=Ph(e)/2,i=Math.atan2(n,r)/2,a=Math.atan2(r,n)/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 Ub(e,t,n,r,i){let a=Lh(e),o=e.getCenter(),s=r&&Rx(r),c=i&&Rx(i);if(!s||!c){let r=Hb(a),i=r[t][0],l=r[t][1],[u,d]=Ih(a),f=Math.max(u,d),p=Jg(o,[f*Math.cos(i),f*Math.sin(i),0]),m=Jg(o,[f*Math.cos(l),f*Math.sin(l),0]);s=Wx(e,p),c=Wx(e,m),n||([s,c]=[c,s])}return[s,c]}function Wb(e,t,n,r,i,a){let o=e.getPorts()[i||a],s=e.getPorts()[a||i],[c,l]=Ub(e,t,n,o,s),u=Kb(e,c,l,r);return o&&(c=Ux(o,u[0])),s&&(l=Ux(s,u.at(-1))),zb(c,l,u)}function Gb(e,t,n,r,i,a){let o=e.getPorts()[i||a],s=e.getPorts()[a||i],[c,l]=Ub(e,t,n,o,s);if(qn(c,l)){let t=Kb(e,c,l,r);return o&&(c=Ux(o,t[0])),s&&(l=Ux(s,t.at(-1))),zb(c,l,t)}let u=e.getCenter(),d=[(c[0]+l[0])/2,(c[1]+l[1])/2,0],f=t_(u,d)>1e-6?r_(Yg(d,u)):[0,-1,0],p=t_(c,l),m=Math.max(Math.abs(r),.01),h=(p*p+4*m*m)/(8*m),g=[d[0]+f[0]*m,d[1]+f[1]*m,0],_=[d[0]+f[0]*(m-h),d[1]+f[1]*(m-h),0],v=2*Math.PI,y=Math.atan2(c[1]-_[1],c[0]-_[0]),b=Math.atan2(l[1]-_[1],l[0]-_[0]),x=Math.atan2(g[1]-_[1],g[0]-_[0]),S=((b-y)%v+v)%v,C=((x-y)%v+v)%v<=S+1e-6,w=+!!C,T=+((C?S:v-S)>Math.PI);if(o){let e=[c[0]-_[0],c[1]-_[1],0],t=w===1?[-e[1],e[0],0]:[e[1],-e[0],0];c=Ux(o,Jg(c,t))}if(s){let e=[l[0]-_[0],l[1]-_[1],0],t=w===1?[e[1],-e[0],0]:[-e[1],e[0],0];l=Ux(s,Jg(l,t))}return[[`M`,c[0],c[1]],[`A`,h,h,0,T,w,l[0],l[1]]]}function Kb(e,t,n,r){let i=e.getCenter();if(qn(t,n)){let e=Yg(t,i),a=[r*Math.sign(e[0])||r/2,r*Math.sign(e[1])||-r/2,0];return[Jg(t,a),Jg(n,Xg(a,[1,-1,1]))]}return[x_(i,t,t_(i,t)+r),x_(i,n,t_(i,n)+r)]}function qb(e,t,n,r,i,a,o){let s=Ix(e),c=s[a||o],l=s[o||a],[u,d]=Ub(e,n,r,c,l),f=Jb(e,u,d,i);return c&&(u=Ux(c,f[0])),l&&(d=Ux(l,f.at(-1))),Bb([u,...f,d],t)}function Jb(e,t,n,r){let i=[],a=Lh(e);if(qn(t,n))switch(Kh(t,a)){case`left`:i.push([t[0]-r,t[1]]),i.push([t[0]-r,t[1]+r]),i.push([t[0],t[1]+r]);break;case`right`:i.push([t[0]+r,t[1]]),i.push([t[0]+r,t[1]+r]),i.push([t[0],t[1]+r]);break;case`top`:i.push([t[0],t[1]-r]),i.push([t[0]+r,t[1]-r]),i.push([t[0]+r,t[1]]);break;case`bottom`:i.push([t[0],t[1]+r]),i.push([t[0]+r,t[1]+r]),i.push([t[0]+r,t[1]]);break}else{let e=Kh(t,a),o=Kh(n,a);if(e===o){let a=e,o,s;switch(a){case`left`:o=Math.min(t[0],n[0])-r,i.push([o,t[1]]),i.push([o,n[1]]);break;case`right`:o=Math.max(t[0],n[0])+r,i.push([o,t[1]]),i.push([o,n[1]]);break;case`top`:s=Math.min(t[1],n[1])-r,i.push([t[0],s]),i.push([n[0],s]);break;case`bottom`:s=Math.max(t[1],n[1])+r,i.push([t[0],s]),i.push([n[0],s]);break}}else{let s=(e,t)=>({left:[t[0]-r,t[1]],right:[t[0]+r,t[1]],top:[t[0],t[1]-r],bottom:[t[0],t[1]+r]})[e],c=s(e,t),l=s(o,n),u=Ab(c,l,a);i.push(c,u,l)}}return i}function Yb(e,t){let n=new Set,r=new Set,i=new Set;return e.forEach(a=>{t(a).forEach(t=>{n.add(t),e.includes(t.source)&&e.includes(t.target)?r.add(t):i.add(t)})}),{edges:Array.from(n),internal:Array.from(r),external:Array.from(i)}}function Xb(e,t){let n=[],r=e;for(;r;){n.push(r);let e=t(Q(r));if(e)r=e;else break}return n.some(e=>e.style?.collapsed)?n[n.reverse().findIndex(ev)]||n.at(-1):e}function Zb(e,t){return t||(e<4?10:e===4?12:e*2.5)}var Qb=n({circle:()=>$b,diamond:()=>tx,rect:()=>rx,simple:()=>ax,triangle:()=>ex,triangleRect:()=>ix,vee:()=>nx}),$b=(e,t)=>{let n=Math.max(e,t)/2;return[[`M`,-e/2,0],[`A`,n,n,0,1,0,2*n-e/2,0],[`A`,n,n,0,1,0,-e/2,0],[`Z`]]},ex=(e,t)=>[[`M`,-e/2,0],[`L`,e/2,-t/2],[`L`,e/2,t/2],[`Z`]],tx=(e,t)=>[[`M`,-e/2,0],[`L`,0,-t/2],[`L`,e/2,0],[`L`,0,t/2],[`Z`]],nx=(e,t)=>[[`M`,-e/2,0],[`L`,e/2,-t/2],[`L`,4*e/5-e/2,0],[`L`,e/2,t/2],[`Z`]],rx=(e,t)=>[[`M`,-e/2,-t/2],[`L`,e/2,-t/2],[`L`,e/2,t/2],[`L`,-e/2,t/2],[`Z`]],ix=(e,t)=>{let n=e/2,r=e/7,i=e-r;return[[`M`,-n,0],[`L`,0,-t/2],[`L`,0,t/2],[`Z`],[`M`,i-n,-t/2],[`L`,i+r-n,-t/2],[`L`,i+r-n,t/2],[`L`,i-n,t/2],[`Z`]]},ax=(e,t)=>[[`M`,e/2,-t/2],[`L`,-e/2,0],[`L`,e/2,0],[`L`,-e/2,0],[`L`,e/2,t/2]],ox=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},sx=class e extends Vv{constructor(t){super(uv({style:e.defaultStyleProps},t)),this.type=`edge`}get sourceNode(){let{sourceNode:e}=this.parsedAttributes;return this.context.element.getElement(e)}get targetNode(){let{targetNode:e}=this.parsedAttributes;return this.context.element.getElement(e)}getKeyStyle(e){let t=this.getGraphicStyle(e),{loop:n}=t,r=ox(t,[`loop`]),{sourceNode:i,targetNode:a}=this,o={d:n&&Nx(i,a)?this.getLoopPath(e):this.getKeyPath(e)};return ff.PARSED_STYLE_LIST.forEach(e=>{e in r&&(o[e]=r[e])}),o}getLoopPath(e){let{sourcePort:t,targetPort:n}=e,r=this.sourceNode,i=Lh(r),a=Math.max(Ph(i),Fh(i)),{type:o,placement:s,clockwise:c,dist:l=a}=iv(this.getGraphicStyle(e),`loop`);return o===`arc`?Gb(r,s,c,l,t,n):Wb(r,s,c,l,t,n)}getEndpoints(e,t=!0,n=[]){let{sourcePort:r,targetPort:i}=e,{sourceNode:a,targetNode:o}=this,[s,c]=zx(a,o,r,i);if(!t)return[s?Rx(s):a.getCenter(),c?Rx(c):o.getCenter()];let l=typeof n==`function`?n():n;return[Hx(s||a,l[0]||c||o),Hx(c||o,l[l.length-1]||s||a)]}getHaloStyle(e){if(e.halo===!1)return!1;let t=this.getKeyStyle(e),n=iv(this.getGraphicStyle(e),`halo`);return Object.assign(Object.assign({},t),n)}getLabelStyle(e){if(e.label===!1||!e.labelText)return!1;let t=iv(this.getGraphicStyle(e),`label`),{placement:n,offsetX:r,offsetY:i,autoRotate:a,maxWidth:o}=t,s=ox(t,[`placement`,`offsetX`,`offsetY`,`autoRotate`,`maxWidth`]),c=e.loop&&Nx(this.sourceNode,this.targetNode),{placement:l}=iv(this.getGraphicStyle(e),`loop`),u=Mb(this.shapeMap.key,n,a,r,i,c,l),d=this.shapeMap.key.getLocalBounds(),f=vv([d.min,d.max],o);return Object.assign({wordWrapWidth:f},u,s)}getBadgeStyle(e){if(e.badge===!1||!e.badgeText)return!1;let t=iv(e,`badge`),{offsetX:n,offsetY:r,placement:i}=t,a=ox(t,[`offsetX`,`offsetY`,`placement`]);return Object.assign(a,Nb(this.shapeMap,i,e.labelPlacement,n,r))}drawArrow(e,t){var n;let r=t===`start`,i=e[t===`start`?`startArrow`:`endArrow`],a=this.shapeMap.key;if(i){let t=this.getArrowStyle(e,r),[n,i,o]=r?[`markerStart`,`markerStartOffset`,`startArrowOffset`]:[`markerEnd`,`markerEndOffset`,`endArrowOffset`],s=a.parsedStyle[n];if(s)s.attr(t);else{let e=new(t.src?cf:ff)({style:t});a.style[n]=e}a.style[i]=e[o]||t.width/2+ +t.lineWidth}else{let e=r?`markerStart`:`markerEnd`;(n=a.style[e])==null||n.destroy(),a.style[e]=null}}getArrowStyle(e,t){let n=this.getShape(`key`).attributes,r=t?`startArrow`:`endArrow`,i=iv(this.getGraphicStyle(e),r),{size:a,type:o}=i,s=ox(i,[`size`,`type`]),[c,l]=sv(Zb(n.lineWidth,a)),u=(L(o)?o:Qb[o]||ex)(c,l);return Object.assign(Zn(n,[`stroke`,`strokeOpacity`,`fillOpacity`]),{width:c,height:l},Object.assign({},u&&{d:u,fill:o===`simple`?``:n.stroke}),s)}drawLabelShape(e,t){let n=this.getLabelStyle(e);this.upsert(`label`,Cv,n,t)}drawHaloShape(e,t){let n=this.getHaloStyle(e);this.upsert(`halo`,ff,n,t)}drawBadgeShape(e,t){let n=this.getBadgeStyle(e);this.upsert(`badge`,wv,n,t)}drawSourceArrow(e){this.drawArrow(e,`start`)}drawTargetArrow(e){this.drawArrow(e,`end`)}drawKeyShape(e,t){let n=this.getKeyStyle(e);return this.upsert(`key`,ff,n,t)}render(e=this.parsedAttributes,t=this){this.drawKeyShape(e,t),this.getShape(`key`)&&(this.drawSourceArrow(e),this.drawTargetArrow(e),this.drawLabelShape(e,t),this.drawHaloShape(e,t),this.drawBadgeShape(e,t))}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(e,t){let n=super.animate(e,t);return n&&new Proxy(n,{set:(e,t,n)=>(t===`currentTime`&&Promise.resolve().then(()=>this.onframe()),Reflect.set(e,t,n))})}};sx.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};var cx=class e extends sx{constructor(t){super(uv({style:e.defaultStyleProps},t))}getKeyPath(e){let[t,n]=this.getEndpoints(e),{controlPoints:r,curvePosition:i,curveOffset:a}=e;return zb(t,n,this.getControlPoints(t,n,Lb(i),Ib(a),r))}getControlPoints(e,t,n,r,i){return i?.length===2?i:[Fb(e,t,n[0],r[0]),Fb(e,t,n[1],r[1])]}};cx.defaultStyleProps={curvePosition:.5,curveOffset:20};var lx=class e extends cx{constructor(t){super(uv({style:e.defaultStyleProps},t))}getControlPoints(e,t,n,r){let i=t[0]-e[0];return[[e[0]+i*n[0]+r[0],e[1]],[t[0]-i*n[1]+r[1],t[1]]]}};lx.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};var ux=class e extends cx{constructor(t){super(uv({style:e.defaultStyleProps},t))}get ref(){return this.context.model.getRootsData()[0]}getEndpoints(e){if(this.sourceNode.id===this.ref.id)return super.getEndpoints(e);let t=m_(this.ref);return[this.sourceNode.getIntersectPoint(t,!0),this.targetNode.getIntersectPoint(t)]}toRadialCoordinate(e){let t=m_(this.ref);return[t_(e,t),l_(Yg(e,t))]}getControlPoints(e,t,n,r){let[i,a]=this.toRadialCoordinate(e),[o]=this.toRadialCoordinate(t),s=o-i;return[[e[0]+(s*n[0]+r[0])*Math.cos(a),e[1]+(s*n[0]+r[0])*Math.sin(a)],[t[0]-(s*n[1]-r[0])*Math.cos(a),t[1]-(s*n[1]-r[0])*Math.sin(a)]]}};ux.defaultStyleProps={curvePosition:.5,curveOffset:20};var dx=class e extends cx{constructor(t){super(uv({style:e.defaultStyleProps},t))}getControlPoints(e,t,n,r){let i=t[1]-e[1];return[[e[0],e[1]+i*n[0]+r[0]],[t[0],t[1]-i*n[1]+r[1]]]}};dx.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};var fx=class e extends sx{constructor(t){super(uv({style:e.defaultStyleProps},t))}getKeyPath(e){let[t,n]=this.getEndpoints(e);return[[`M`,t[0],t[1]],[`L`,n[0],n[1]]]}};fx.defaultStyleProps={};var px={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:n_},mx=e=>`${Math.round(e[0])}|||${Math.round(e[1])}`;function hx(e,t){let n=e=>Math.round(e/t);return hn(e)?n(e):e.map(n)}function gx(e,t){let n=Math.abs(e-t);return n>Math.PI?2*Math.PI-n:n}function _x(e,t){let n=t[0]-e[0],r=t[1]-e[1];return!n&&!r?0:Math.atan2(r,n)}function vx(e,t,n,r){let i=_x(e,t),a=n[mx(e)];return gx(_x(a||r,e),i)}var yx=(e,t)=>{let{offset:n,gridSize:r}=t,i={};return e.forEach(e=>{if(!e||e.destroyed||!e.isVisible())return;let t=zh(e.getRenderBounds(),n);for(let e=hx(t.min[0],r);e<=hx(t.max[0],r);e+=1)for(let n=hx(t.min[1],r);n<=hx(t.max[1],r);n+=1)i[`${e}|||${n}`]=!0}),i};function bx(e,t,n){return Math.min(...t.map(t=>n(e,t)))}function xx(e,t,n){let r=e[0],i=n(e[0],t);for(let a=0;a<e.length;a++){let o=e[a],s=n(o,t);s<i&&(r=o,i=s)}return r}var Sx=(e,t,n,r)=>{if(!t)return[e];let{directionMap:i,offset:a}=r,o=zh(t.getRenderBounds(),a),s=Object.keys(i).reduce((t,r)=>{if(n.includes(r)){let n=i[r],[a,s]=Ih(o),c=[e[0]+n.stepX*a,e[1]+n.stepY*s],l=Xh(o);for(let n=0;n<l.length;n++){let r=f_([e,c],l[n]);r&&Uh(r,o)&&t.push(r)}}return t},[]);return Hh(e,o)||s.push(e),s.map(e=>hx(e,r.gridSize))},Cx=(e,t,n,r,i,a,o)=>{let s=[],c=[a[0]===r[0]?r[0]:e[0]*o,a[1]===r[1]?r[1]:e[1]*o];s.unshift(c);let l=e,u=t[mx(l)];for(;u;){let e=u,r=l;vx(e,r,t,n)&&(c=[e[0]===r[0]?c[0]:e[0]*o,e[1]===r[1]?c[1]:e[1]*o],s.unshift(c)),u=t[mx(e)],l=e}let d=xx(i.map(e=>[e[0]*o,e[1]*o]),c,n_);return s.unshift(d),s};function wx(e,t,n,r){let i=s_(e.getCenter()),a=s_(t.getCenter()),o=Object.assign(px,r),{gridSize:s}=o,c=yx(o.enableObstacleAvoidance?n:[e,t],o),l=hx(i,s),u=hx(a,s),d=Sx(i,e,o.startDirections,o),f=Sx(a,t,o.endDirections,o);d.forEach(e=>delete c[mx(e)]),f.forEach(e=>delete c[mx(e)]);let p={},m={},h={},g={},_={},v=new Tx;for(let e=0;e<d.length;e++){let t=d[e],n=mx(t);p[n]=t,g[n]=0,_[n]=bx(t,f,o.distFunc),v.add({id:n,value:_[n]})}let y=f.map(e=>mx(e)),b=o.maximumLoops,x,S=1/0;for(let[e,t]of Object.entries(p))_[e]<=S&&(S=_[e],x=t);for(;Object.keys(p).length>0&&b>0;){let e=v.minId(!1);if(e)x=p[e];else break;let t=mx(x);if(y.includes(t))return Cx(x,h,l,a,d,u,s);delete p[t],v.remove(t),m[t]=!0;for(let e of Object.values(o.directionMap)){let n=Jg(x,[e.stepX,e.stepY]),r=mx(n);if(m[r])continue;let i=vx(x,n,h,l);if(i>o.maxAllowedDirectionChange||c[r])continue;p[r]||(p[r]=n);let a=o.penalties[i],u=o.distFunc(x,n)+(isNaN(a)?s:a),d=g[t]+u,y=g[r];y&&d>=y||(h[r]=x,g[r]=d,_[r]=d+bx(n,f,o.distFunc),v.add({id:r,value:_[r]}))}--b}return[]}var Tx=class{constructor(){this.arr=[],this.map={},this.arr=[],this.map={}}_innerAdd(e,t){let n=0,r=t-1;for(;r-n>1;){let t=Math.floor((n+r)/2);if(this.arr[t].value>e.value)r=t;else if(this.arr[t].value<e.value)n=t;else{this.arr.splice(t,0,e),this.map[e.id]=!0;return}}this.arr.splice(r,0,e),this.map[e.id]=!0}add(e){delete this.map[e.id];let t=this.arr.length;if(!t||this.arr[t-1].value<e.value){this.arr.push(e),this.map[e.id]=!0;return}this._innerAdd(e,t)}remove(e){this.map[e]&&delete this.map[e]}_clearAndGetMinId(){let e;for(let t=this.arr.length-1;t>=0;t--)this.map[this.arr[t].id]?e=this.arr[t].id:this.arr.splice(t,1);return e}_findFirstId(){for(;this.arr.length;){let e=this.arr.shift();if(this.map[e.id])return e.id}}minId(e){return e?this._clearAndGetMinId():this._findFirstId()}},Ex=class e extends sx{constructor(t){super(uv({style:e.defaultStyleProps},t))}getControlPoints(e){let{router:t}=e,{sourceNode:n,targetNode:r}=this,[i,a]=this.getEndpoints(e,!1),o=[];return t?t.type===`shortest-path`?(o=wx(n,r,this.context.element.getNodes(),t),o.length||(o=bb(i,a,n,r,e.controlPoints,{padding:t.offset}))):t.type===`orth`&&(o=bb(i,a,n,r,e.controlPoints,t)):o=e.controlPoints,o}getPoints(e){let t=this.getControlPoints(e),[n,r]=this.getEndpoints(e,!0,t);return[n,...t,r]}getKeyPath(e){return Bb(this.getPoints(e),e.radius)}getLoopPath(e){let{sourcePort:t,targetPort:n,radius:r}=e,i=this.sourceNode,a=Lh(i),o=Math.max(Ph(a),Fh(a))/4,{placement:s,clockwise:c,dist:l=o}=iv(this.getGraphicStyle(e),`loop`);return qb(i,r,s,c,l,t,n)}};Ex.defaultStyleProps={radius:0,controlPoints:[],router:!1};var Dx=class e extends sx{constructor(t){super(uv({style:e.defaultStyleProps},t))}getKeyPath(e){let{curvePosition:t,curveOffset:n}=e,[r,i]=this.getEndpoints(e);return Rb(r,i,e.controlPoint||Fb(r,i,t,n))}};Dx.defaultStyleProps={curvePosition:.5,curveOffset:30};var Ox=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function kx(e){return e instanceof Uv&&e.type===`node`}function Ax(e){return e instanceof sx}function jx(e){return e instanceof gb}function Mx(e){return kx(e)||Ax(e)||jx(e)}function Nx(e,t){return!e||!t?!1:e===t}var Px={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 Fx(e,t,n=Px,r=!0){let i=[.5,.5],a=un(t)?Jn(n,t.toLocaleLowerCase(),i):t;if(!r&&un(t))return a;let[o,s]=a||i;return[e.min[0]+Ph(e)*o,e.min[1]+Fh(e)*s]}function Ix(e){if(!e)return{};let t=e.getPorts();return(e.attributes.ports||[]).forEach((n,r)=>{var i;let{key:a,placement:o}=n;Lx(n)&&(t[i=a||r]||(t[i]=__(e.getShape(`key`).getBounds(),o)))}),t}function Lx(e){let{r:t}=e;return!t||Number(t)===0}function Rx(e){return Ah(e)?e:e.getPosition()}function zx(e,t,n,r){return[Bx(e,t,n,r),Bx(t,e,r,n)]}function Bx(e,t,n,r){let i=Ix(e);if(n)return i[n];let a=Object.values(i);if(a.length===0)return;let[o]=j_(a.map(e=>Rx(e)),Vx(t,r));return a.find(e=>Rx(e)===o)}function Vx(e,t){let n=Ix(e);if(t)return[Rx(n[t])];let r=Object.values(n);return r.length>0?r.map(e=>Rx(e)):[e.getCenter()]}function Hx(e,t){return jx(e)||kx(e)?Wx(e,t):Ux(e,t)}function Ux(e,t){return!e||!t?[0,0,0]:Ah(e)?e:e.attributes.linkToCenter?e.getPosition():A_(Ah(t)?t:kx(t)?t.getCenter():t.getPosition(),e.getBounds())}function Wx(e,t){if(!e||!t)return[0,0,0];let n=Ah(t)?t:kx(t)?t.getCenter():t.getPosition();return e.getIntersectPoint(n)||e.getCenter()}function Gx(e,t=`bottom`,n=0,r=0,i=!1){let a=t.split(`-`),[o,s]=__(e,t),[c,l]=i?[`bottom`,`top`]:[`top`,`bottom`],u=a.includes(`top`)?l:a.includes(`bottom`)?c:`middle`,d=a.includes(`left`)?`right`:a.includes(`right`)?`left`:`center`;return{transform:[[`translate`,o+n,s+r]],textBaseline:u,textAlign:d}}function Kx(e,t){return[[0,-e],[t*Math.cos(3*Math.PI/10),-t*Math.sin(3*Math.PI/10)],[e*Math.cos(Math.PI/10),-e*Math.sin(Math.PI/10)],[t*Math.cos(Math.PI/10),t*Math.sin(Math.PI/10)],[e*Math.cos(3*Math.PI/10),e*Math.sin(3*Math.PI/10)],[0,t],[-e*Math.cos(3*Math.PI/10),e*Math.sin(3*Math.PI/10)],[-t*Math.cos(Math.PI/10),t*Math.sin(Math.PI/10)],[-e*Math.cos(Math.PI/10),-e*Math.sin(Math.PI/10)],[-t*Math.cos(3*Math.PI/10),-t*Math.sin(3*Math.PI/10)]]}function qx(e,t){let n={};return n.top=[0,-e],n.left=[-e*Math.cos(Math.PI/10),-e*Math.sin(Math.PI/10)],n[`left-bottom`]=[-e*Math.cos(3*Math.PI/10),e*Math.sin(3*Math.PI/10)],n.bottom=[0,t],n[`right-bottom`]=[e*Math.cos(3*Math.PI/10),e*Math.sin(3*Math.PI/10)],n.right=n.default=[e*Math.cos(Math.PI/10),-e*Math.sin(Math.PI/10)],n}function Jx(e,t,n){let r=t/2,i=e/2,a={up:[[-i,r],[i,r],[0,-r]],left:[[-i,0],[i,r],[i,-r]],right:[[-i,r],[-i,-r],[i,0]],down:[[-i,-r],[i,-r],[0,r]]};return a[n]||a.up}function Yx(e,t,n){let r=t/2,i=e/2,a={};return n===`down`?(a.bottom=a.default=[0,r],a.right=[i,-r],a.left=[-i,-r]):n===`left`?(a.top=[i,-r],a.bottom=[i,r],a.left=a.default=[-i,0]):n===`right`?(a.top=[-i,-r],a.bottom=[-i,r],a.right=a.default=[i,0]):(a.left=[-i,r],a.top=a.default=[0,-r],a.right=[i,r]),a}function Xx(e,t){return[[0,-t/2],[e/2,0],[0,t/2],[-e/2,0]]}function Zx(e){return Jn(e,[`style`,`visibility`])!==`hidden`}function Qx(e,t){let{zIndex:n,transform:r,transformOrigin:i,visibility:a,cursor:o,clipPath:s,component:c}=t,l=Ox(t,[`zIndex`,`transform`,`transformOrigin`,`visibility`,`cursor`,`clipPath`,`component`]);Object.assign(e.attributes,l),r&&e.setAttribute(`transform`,r),hn(n)&&e.setAttribute(`zIndex`,n),i&&e.setAttribute(`transformOrigin`,i),a&&e.setAttribute(`visibility`,a),o&&e.setAttribute(`cursor`,o),s&&e.setAttribute(`clipPath`,s),c&&e.setAttribute(`component`,c)}function $x(e,t){`update`in e?e.update(t):e.attr(t)}function eS(e){return[[0,e],[e*Math.sqrt(3)/2,e/2],[e*Math.sqrt(3)/2,-e/2],[0,-e],[-e*Math.sqrt(3)/2,-e/2],[-e*Math.sqrt(3)/2,e/2]]}function tS(e){Yn(e,`__to_be_destroyed__`,!0)}function nS(e){return Jn(e,`__to_be_destroyed__`,!1)}var rS=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},iS=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.onCollapseExpand=e=>rS(this,void 0,void 0,function*(){if(!this.validate(e))return;let{target:t}=e;if(!Mx(t))return;let n=t.id,{model:r,graph:i}=this.context,a=r.getElementDataById(n);if(!a)return!1;let{onCollapse:o,onExpand:s,animation:c,align:l}=this.options;ev(a)?(yield i.expandElement(n,{animation:c,align:l}),s?.(n)):(yield i.collapseElement(n,{animation:c,align:l}),o?.(n))}),this.bindEvents()}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}bindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;e.on(`node:${t}`,this.onCollapseExpand),e.on(`combo:${t}`,this.onCollapseExpand)}unbindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;e.off(`node:${t}`,this.onCollapseExpand),e.off(`combo:${t}`,this.onCollapseExpand)}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}destroy(){this.unbindEvents(),super.destroy()}};iS.defaultOptions={enable:!0,animation:!0,trigger:X.DBLCLICK,align:!0};var aS=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function oS(e,t){let{data:n,style:r}=e,i=aS(e,[`data`,`style`]),{data:a,style:o}=t,s=aS(t,[`data`,`style`]),c=Object.assign(Object.assign({},i),s);return(n||a)&&Object.assign(c,{data:Object.assign(Object.assign({},n),a)}),(r||o)&&Object.assign(c,{style:Object.assign(Object.assign({},r),o)}),c}function sS(e){let{data:t,style:n}=e,r=aS(e,[`data`,`style`]);return t&&(r.data=Object.assign({},t)),n&&(r.style=Object.assign({},n)),r}function cS(e={},t={}){let{states:n=[],data:r={},style:i={},children:a=[]}=e,o=aS(e,[`states`,`data`,`style`,`children`]),{states:s=[],data:c={},style:l={},children:u=[]}=t,d=aS(t,[`states`,`data`,`style`,`children`]),f=(e,t)=>e.length===t.length?e.every((e,n)=>e===t[n]):!1,p=(e,t)=>{let n=Object.keys(e),r=Object.keys(t);return n.length===r.length?n.every(n=>e[n]===t[n]):!1};return!(!p(o,d)||!f(a,u)||!f(n,s)||!p(r,c)||!p(i,l))}var lS=`__internal_override__`;function uS(e){return e[lS]!==!1}var dS=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},fS=`g6-create-edge-assist-edge-id`,pS=`g6-create-edge-assist-node-id`,mS=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.drop=e=>dS(this,void 0,void 0,function*(){let{targetType:t}=e;[`combo`,`node`].includes(t)&&this.source?yield this.handleCreateEdge(e):yield this.cancelEdge()}),this.handleCreateEdge=e=>dS(this,void 0,void 0,function*(){if(!this.validate(e))return;let{graph:t,canvas:n,batch:r,element:i}=this.context,{style:a}=this.options;if(this.source){this.createEdge(e),yield this.cancelEdge();return}r.startBatch(),n.setCursor(`crosshair`),this.source=this.getSelectedNodeIDs([e.target.id])[0];let o=t.getElementData(this.source);t.addNodeData([{id:pS,type:`circle`,[lS]:!1,style:{size:1,visibility:`hidden`,ports:[{key:`port-1`,placement:[.5,.5]}],x:o.style?.x,y:o.style?.y}}]),t.addEdgeData([{id:fS,source:this.source,target:pS,style:Object.assign({pointerEvents:`none`},a)}]),yield i.draw({animation:!1})?.finished}),this.updateAssistEdge=e=>dS(this,void 0,void 0,function*(){if(!this.source)return;let{model:t,element:n,graph:r}=this.context,[i,a]=r.getCanvasByClient([e.client.x,e.client.y]);t.translateNodeTo(pS,[i,a]),yield n.draw({animation:!1,silence:!0})?.finished}),this.createEdge=e=>{let{graph:t}=this.context,{style:n,onFinish:r,onCreate:i}=this.options;if(e.target?.id===void 0||this.source===void 0)return;let a=this.getSelectedNodeIDs([e.target.id])?.[0],o=i({id:`${this.source}-${a}-${tr()}`,source:this.source,target:a,style:n});o&&(t.addEdgeData([o]),r(o))},this.cancelEdge=()=>dS(this,void 0,void 0,function*(){if(!this.source)return;let{graph:e,element:t,batch:n}=this.context;e.removeNodeData([pS]),this.source=void 0,yield t.draw({animation:!1})?.finished,n.endBatch()}),this.bindEvents()}update(e){super.update(e),this.bindEvents()}bindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;this.unbindEvents(),t===`click`?(e.on($m.CLICK,this.handleCreateEdge),e.on(Ym.CLICK,this.handleCreateEdge),e.on(Jm.CLICK,this.cancelEdge),e.on(Zm.CLICK,this.cancelEdge)):(e.on($m.DRAG_START,this.handleCreateEdge),e.on(Ym.DRAG_START,this.handleCreateEdge),e.on(X.POINTER_UP,this.drop)),e.on(X.POINTER_MOVE,this.updateAssistEdge)}getSelectedNodeIDs(e){return Array.from(new Set(this.context.graph.getElementDataByState(`node`,this.options.state).map(e=>e.id).concat(e)))}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}unbindEvents(){let{graph:e}=this.context;e.off($m.CLICK,this.handleCreateEdge),e.off(Ym.CLICK,this.handleCreateEdge),e.off(Jm.CLICK,this.cancelEdge),e.off(Zm.CLICK,this.cancelEdge),e.off($m.DRAG_START,this.handleCreateEdge),e.off(Ym.DRAG_START,this.handleCreateEdge),e.off(X.POINTER_UP,this.drop),e.off(X.POINTER_MOVE,this.updateAssistEdge)}destroy(){this.unbindEvents(),super.destroy()}};mS.defaultOptions={animation:!0,enable:!0,style:{},trigger:`drag`,onCreate:e=>e,onFinish:()=>{}};var hS=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},gS=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.isDragging=!1,this.onDragStart=e=>{this.validate(e)&&(this.isDragging=!0,this.context.canvas.setCursor(`grabbing`))},this.onDrag=e=>{if(!this.isDragging||R_.isPinching)return;let t=e.movement?.x??e.dx,n=e.movement?.y??e.dy;(t|n)!==0&&this.translate([t,n],!1)},this.onDragEnd=()=>{var e,t;this.isDragging=!1,this.context.canvas.setCursor(this.defaultCursor),(t=(e=this.options).onFinish)==null||t.call(e)},this.invokeOnFinish=Ln(()=>{var e,t;(t=(e=this.options).onFinish)==null||t.call(e)},300),this.shortcut=new H_(t.graph),this.bindEvents(),this.defaultCursor=this.context.canvas.getConfig().cursor||`default`}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}bindEvents(){let{trigger:e}=this.options;if($t(e)){let{up:t=[],down:n=[],left:r=[],right:i=[]}=e;this.shortcut.bind(t,e=>this.onTranslate([0,1],e)),this.shortcut.bind(n,e=>this.onTranslate([0,-1],e)),this.shortcut.bind(r,e=>this.onTranslate([1,0],e)),this.shortcut.bind(i,e=>this.onTranslate([-1,0],e))}else{let{graph:e}=this.context;e.on(X.DRAG_START,this.onDragStart),e.on(X.DRAG,this.onDrag),e.on(X.DRAG_END,this.onDragEnd)}}onTranslate(e,t){return hS(this,void 0,void 0,function*(){if(!this.validate(t))return;let{sensitivity:n}=this.options,r=n*-1;yield this.translate(Xg(e,r),this.options.animation),this.invokeOnFinish()})}translate(e,t){return hS(this,void 0,void 0,function*(){e=this.clampByDirection(e),e=this.clampByRange(e),e=this.clampByRotation(e),yield this.context.graph.translateBy(e,t)})}clampByRotation([e,t]){let n=this.context.graph.getRotation();return u_([e,t],n)}clampByDirection([e,t]){let{direction:n}=this.options;return n===`x`?t=0:n===`y`&&(e=0),[e,t]}clampByRange([e,t]){let{viewport:n,canvas:r}=this.context,[i,a]=r.getSize(),[o,s,c,l]=Mh(this.options.range),u=[a*o,i*s,a*c,i*l],d=zh(Rh(n.getCanvasCenter()),u),f=Yg(n.getViewportCenter(),[e,t,0]);if(!Hh(f,d)){let{min:[n,r],max:[i,a]}=d;(f[0]<n&&e>0||f[0]>i&&e<0)&&(e=0),(f[1]<r&&t>0||f[1]>a&&t<0)&&(t=0)}return[e,t]}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return typeof t==`function`?t(e):!!t}unbindEvents(){this.shortcut.unbindAll();let{graph:e}=this.context;e.off(X.DRAG_START,this.onDragStart),e.off(X.DRAG,this.onDrag),e.off(X.DRAG_END,this.onDragEnd)}destroy(){this.shortcut.destroy(),this.unbindEvents(),this.context.canvas.setCursor(this.defaultCursor),super.destroy()}};gS.defaultOptions={enable:e=>`targetType`in e?e.targetType===`canvas`:!0,sensitivity:10,direction:`both`,range:1/0};var _S=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},vS=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.enable=!1,this.enableElements=[`node`,`combo`],this.target=[],this.shadowOrigin=[0,0],this.hiddenEdges=[],this.isDragging=!1,this.onDrop=e=>_S(this,void 0,void 0,function*(){if(this.options.dropEffect!==`link`)return;let{model:t,element:n}=this.context,r=e.target.id;this.target.forEach(e=>{let n=t.getParentData(e,eh);n&&Q(n)===r&&t.refreshComboData(r),t.setParent(e,r,eh)}),yield n?.draw({animation:!0})?.finished}),this.setCursor=e=>{if(this.isDragging)return;let{type:t}=e,{canvas:n}=this.context,{cursor:r}=this.options;t===X.POINTER_ENTER?n.setCursor(r?.grab||`grab`):n.setCursor(r?.default||`default`)},this.shortcut=new H_(t.graph),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(e){this.unbindEvents(),super.update(e),this.bindEvents()}bindEvents(){let{graph:e,canvas:t}=this.context,n=t.getLayer().getContextService().$canvas;n&&(n.addEventListener(`blur`,this.onDragEnd),n.addEventListener(`contextmenu`,this.onDragEnd)),this.enableElements.forEach(t=>{e.on(`${t}:${X.DRAG_START}`,this.onDragStart),e.on(`${t}:${X.DRAG}`,this.onDrag),e.on(`${t}:${X.DRAG_END}`,this.onDragEnd),e.on(`${t}:${X.POINTER_ENTER}`,this.setCursor),e.on(`${t}:${X.POINTER_LEAVE}`,this.setCursor)}),[`link`].includes(this.options.dropEffect)&&(e.on(Ym.DROP,this.onDrop),e.on(Jm.DROP,this.onDrop))}getSelectedNodeIDs(e){return Array.from(new Set(this.context.graph.getElementDataByState(`node`,this.options.state).map(e=>e.id).concat(e)))}getDelta(e){let t=this.context.graph.getZoom();return Zg([e.dx,e.dy],t)}onDragStart(e){if(this.enable=this.validate(e),!this.enable)return;let{batch:t,canvas:n,graph:r}=this.context;n.setCursor(this.options.cursor?.grabbing||`grabbing`),this.isDragging=!0,t.startBatch();let i=e.target.id;r.getElementState(i).includes(this.options.state)?this.target=this.getSelectedNodeIDs([i]):this.target=[i],this.hideEdge(),this.context.graph.frontElement(this.target),this.options.shadow&&this.createShadow(this.target)}onDrag(e){if(!this.enable)return;let t=this.getDelta(e);this.options.shadow?this.moveShadow(t):this.moveElement(this.target,t)}onDragEnd(){var e,t;if(!this.enable)return;if(this.enable=!1,this.options.shadow){if(!this.shadow)return;this.shadow.style.visibility=`hidden`;let{x:e=0,y:t=0}=this.shadow.attributes,[n,r]=Yg([+e,+t],this.shadowOrigin);this.moveElement(this.target,[n,r])}this.showEdges(),(t=(e=this.options).onFinish)==null||t.call(e,this.target);let{batch:n,canvas:r}=this.context;n.endBatch(),r.setCursor(this.options.cursor?.grab||`grab`),this.isDragging=!1,this.target=[]}isKeydown(){let{trigger:e}=this.options;return e?.length?this.shortcut.match(e):!0}validate(e){if(this.destroyed||nS(e.target)||this.context.graph.isCollapsingExpanding||!this.isKeydown())return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}clampByRotation([e,t]){let n=this.context.graph.getRotation();return u_([e,t],n)}moveElement(e,t){return _S(this,void 0,void 0,function*(){let{graph:n,model:r}=this.context,{dropEffect:i}=this.options;i===`move`&&e.forEach(e=>r.refreshComboData(e)),n.translateElementBy(Object.fromEntries(e.map(e=>[e,this.clampByRotation(t)])),!1)})}moveShadow(e){if(!this.shadow)return;let{x:t=0,y:n=0}=this.shadow.attributes,[r,i]=e;this.shadow.attr({x:+t+r,y:+n+i})}createShadow(e){let t=iv(this.options,`shadow`),n=Bh(e.map(e=>this.context.element.getElement(e).getBounds())),[r,i]=n.min;this.shadowOrigin=[r,i];let[a,o]=Ih(n),s={width:a,height:o,x:r,y:i};this.shadow?this.shadow.attr(Object.assign(Object.assign(Object.assign({},t),s),{visibility:`visible`})):(this.shadow=new _f({style:Object.assign(Object.assign(Object.assign({$layer:`transient`},t),s),{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(){let{hideEdge:e,shadow:t}=this.options;if(e===`none`||t)return;let{graph:n}=this.context;e===`all`?this.hiddenEdges=n.getEdgeData().map(Q):this.hiddenEdges=Array.from(new Set(this.target.map(t=>n.getRelatedEdgesData(t,e).map(Q)).flat())),n.hideElement(this.hiddenEdges)}unbindEvents(){let{graph:e,canvas:t}=this.context,n=t.getLayer().getContextService().$canvas;n&&(n.removeEventListener(`blur`,this.onDragEnd),n.removeEventListener(`contextmenu`,this.onDragEnd)),this.enableElements.forEach(t=>{e.off(`${t}:${X.DRAG_START}`,this.onDragStart),e.off(`${t}:${X.DRAG}`,this.onDrag),e.off(`${t}:${X.DRAG_END}`,this.onDragEnd),e.off(`${t}:${X.POINTER_ENTER}`,this.setCursor),e.off(`${t}:${X.POINTER_LEAVE}`,this.setCursor)}),e.off(`combo:${X.DROP}`,this.onDrop),e.off(`canvas:${X.DROP}`,this.onDrop)}destroy(){var e;this.unbindEvents(),(e=this.shadow)==null||e.destroy(),super.destroy()}};vS.defaultOptions={animation:!0,enable:e=>[`node`,`combo`].includes(e.targetType),trigger:[],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 yS=`*`,bS=function(){function e(){this._events={}}return e.prototype.on=function(e,t,n){return this._events[e]||(this._events[e]=[]),this._events[e].push({callback:t,once:!!n}),this},e.prototype.once=function(e,t){return this.on(e,t,!0)},e.prototype.emit=function(e){for(var t=this,n=[],r=1;r<arguments.length;r++)n[r-1]=arguments[r];var i=this._events[e]||[],a=this._events[yS]||[],o=function(r){for(var i=r.length,a=0;a<i;a++)if(r[a]){var o=r[a],s=o.callback;o.once&&(r.splice(a,1),r.length===0&&delete t._events[e],i--,a--),s.apply(t,n)}};o(i),o(a)},e.prototype.off=function(e,t){if(!e)this._events={};else if(!t)delete this._events[e];else{for(var n=this._events[e]||[],r=n.length,i=0;i<r;i++)n[i].callback===t&&(n.splice(i,1),r--,i--);n.length===0&&delete this._events[e]}return this},e.prototype.getEvents=function(){return this._events},e}();function xS(e,t,n,r){for(;e.length;){let i=e.shift();if(n(i))return!0;t.add(i.id),r(i.id).forEach(n=>{t.has(n.id)||(t.add(n.id),e.push(n))})}return!1}function SS(e,t,n,r){if(n(e))return!0;t.add(e.id);for(let i of r(e.id))if(!t.has(i.id)&&SS(i,t,n,r))return!0;return!1}var CS=()=>!0,wS=class{graph;nodeFilter;edgeFilter;cacheEnabled;inEdgesMap=new Map;outEdgesMap=new Map;bothEdgesMap=new Map;allNodesMap=new Map;allEdgesMap=new Map;constructor(e){this.graph=e.graph;let t=e.nodeFilter||CS,n=e.edgeFilter||CS;this.nodeFilter=t,this.edgeFilter=e=>{let{source:r,target:i}=this.graph.getEdgeDetail(e.id);return!t(r)||!t(i)?!1:n(e,r,i)},e.cache===`auto`?(this.cacheEnabled=!0,this.startAutoCache()):e.cache===`manual`?this.cacheEnabled=!0:this.cacheEnabled=!1}clearCache=()=>{this.inEdgesMap.clear(),this.outEdgesMap.clear(),this.bothEdgesMap.clear(),this.allNodesMap.clear(),this.allEdgesMap.clear()};refreshCache=()=>{this.clearCache(),this.updateCache(this.graph.getAllNodes().map(e=>e.id))};updateCache=e=>{let t=new Set;e.forEach(e=>{let n=this.bothEdgesMap.get(e);if(n&&n.forEach(e=>t.add(e.id)),!this.hasNode(e))this.inEdgesMap.delete(e),this.outEdgesMap.delete(e),this.bothEdgesMap.delete(e),this.allNodesMap.delete(e);else{let n=this.graph.getRelatedEdges(e,`in`).filter(this.edgeFilter),r=this.graph.getRelatedEdges(e,`out`).filter(this.edgeFilter),i=Array.from(new Set([...n,...r]));i.forEach(e=>t.add(e.id)),this.inEdgesMap.set(e,n),this.outEdgesMap.set(e,r),this.bothEdgesMap.set(e,i),this.allNodesMap.set(e,this.graph.getNode(e))}}),t.forEach(e=>{this.hasEdge(e)?this.allEdgesMap.set(e,this.graph.getEdge(e)):this.allEdgesMap.delete(e)})};startAutoCache(){this.refreshCache(),this.graph.on(`changed`,this.handleGraphChanged)}stopAutoCache(){this.graph.off(`changed`,this.handleGraphChanged)}handleGraphChanged=e=>{let t=new Set;e.changes.forEach(n=>{switch(n.type){case`NodeAdded`:t.add(n.value.id);break;case`NodeDataUpdated`:t.add(n.id);break;case`EdgeAdded`:t.add(n.value.source),t.add(n.value.target);break;case`EdgeUpdated`:(n.propertyName===`source`||n.propertyName===`target`)&&(t.add(n.oldValue),t.add(n.newValue));break;case`EdgeDataUpdated`:if(e.graph.hasEdge(n.id)){let r=e.graph.getEdge(n.id);t.add(r.source),t.add(r.target)}break;case`EdgeRemoved`:t.add(n.value.source),t.add(n.value.target);break;case`NodeRemoved`:t.add(n.value.id);break;default:break}}),this.updateCache(t)};checkNodeExistence(e){this.getNode(e)}hasNode(e){if(!this.graph.hasNode(e))return!1;let t=this.graph.getNode(e);return this.nodeFilter(t)}areNeighbors(e,t){return this.checkNodeExistence(e),this.getNeighbors(t).some(t=>t.id===e)}getNode(e){let t=this.graph.getNode(e);if(!this.nodeFilter(t))throw Error(`Node not found for id: `+e);return t}getRelatedEdges(e,t){return this.checkNodeExistence(e),this.cacheEnabled?t===`in`?this.inEdgesMap.get(e):t===`out`?this.outEdgesMap.get(e):this.bothEdgesMap.get(e):this.graph.getRelatedEdges(e,t).filter(this.edgeFilter)}getDegree(e,t){return this.getRelatedEdges(e,t).length}getSuccessors(e){let t=this.getRelatedEdges(e,`out`).map(e=>this.getNode(e.target));return Array.from(new Set(t))}getPredecessors(e){let t=this.getRelatedEdges(e,`in`).map(e=>this.getNode(e.source));return Array.from(new Set(t))}getNeighbors(e){let t=this.getPredecessors(e),n=this.getSuccessors(e);return Array.from(new Set([...t,...n]))}hasEdge(e){if(!this.graph.hasEdge(e))return!1;let t=this.graph.getEdge(e);return this.edgeFilter(t)}getEdge(e){let t=this.graph.getEdge(e);if(!this.edgeFilter(t))throw Error(`Edge not found for id: `+e);return t}getEdgeDetail(e){let t=this.getEdge(e);return{edge:t,source:this.getNode(t.source),target:this.getNode(t.target)}}hasTreeStructure(e){return this.graph.hasTreeStructure(e)}getRoots(e){return this.graph.getRoots(e).filter(this.nodeFilter)}getChildren(e,t){return this.checkNodeExistence(e),this.graph.getChildren(e,t).filter(this.nodeFilter)}getParent(e,t){this.checkNodeExistence(e);let n=this.graph.getParent(e,t);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(e,t,n=`out`){let r={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];xS([this.getNode(e)],new Set,t,r)}dfs(e,t,n=`out`){let r={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];SS(this.getNode(e),new Set,t,r)}},TS=class e extends bS{nodeMap=new Map;edgeMap=new Map;inEdgesMap=new Map;outEdgesMap=new Map;bothEdgesMap=new Map;treeIndices=new Map;changes=[];batchCount=0;onChanged=()=>{};constructor(e){super(),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))}batch=e=>{this.batchCount+=1,e(),--this.batchCount,this.batchCount||this.commit()};commit(){let e=this.changes;this.changes=[];let t={graph:this,changes:e};this.emit(`changed`,t),this.onChanged(t)}reduceChanges(e){let t=[];return e.forEach(e=>{switch(e.type){case`NodeRemoved`:{let n=!1;t=t.filter(t=>{if(t.type===`NodeAdded`){let r=t.value.id===e.value.id;return r&&(n=!0),!r}else if(t.type===`NodeDataUpdated`)return t.id!==e.value.id;else if(t.type===`TreeStructureChanged`)return t.nodeId!==e.value.id;return!0}),n||t.push(e);break}case`EdgeRemoved`:{let n=!1;t=t.filter(t=>{if(t.type===`EdgeAdded`){let r=t.value.id===e.value.id;return r&&(n=!0),!r}else if(t.type===`EdgeDataUpdated`||t.type===`EdgeUpdated`)return t.id!==e.value.id;return!0}),n||t.push(e);break}case`NodeDataUpdated`:case`EdgeDataUpdated`:case`EdgeUpdated`:{let n=t.findIndex(t=>t.type===e.type&&t.id===e.id&&(e.propertyName===void 0||t.propertyName===e.propertyName)),r=t[n];r?e.propertyName===void 0?(t.splice(n,1),t.push(e)):r.newValue=e.newValue:t.push(e);break}case`TreeStructureDetached`:t=t.filter(t=>t.type===`TreeStructureAttached`||t.type===`TreeStructureChanged`?t.treeKey!==e.treeKey:!0),t.push(e);break;case`TreeStructureChanged`:{let n=t.find(t=>t.type===`TreeStructureChanged`&&t.treeKey===e.treeKey&&t.nodeId===e.nodeId);n?n.newParentId=e.newParentId:t.push(e);break}default:t.push(e);break}}),t}checkNodeExistence(e){this.getNode(e)}hasNode(e){return this.nodeMap.has(e)}areNeighbors(e,t){return this.getNeighbors(t).some(t=>t.id===e)}getNode(e){let t=this.nodeMap.get(e);if(!t)throw Error(`Node not found for id: `+e);return t}getRelatedEdges(e,t){if(this.checkNodeExistence(e),t===`in`){let t=this.inEdgesMap.get(e);return Array.from(t)}else if(t===`out`){let t=this.outEdgesMap.get(e);return Array.from(t)}else{let t=this.bothEdgesMap.get(e);return Array.from(t)}}getDegree(e,t){return this.getRelatedEdges(e,t).length}getSuccessors(e){let t=this.getRelatedEdges(e,`out`).map(e=>this.getNode(e.target));return Array.from(new Set(t))}getPredecessors(e){let t=this.getRelatedEdges(e,`in`).map(e=>this.getNode(e.source));return Array.from(new Set(t))}getNeighbors(e){let t=this.getPredecessors(e),n=this.getSuccessors(e);return Array.from(new Set([...t,...n]))}doAddNode(e){if(this.hasNode(e.id))throw 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(t=>{t.childrenMap.set(e.id,new Set)}),this.changes.push({type:`NodeAdded`,value:e})}addNodes(e){this.batch(()=>{for(let t of e)this.doAddNode(t)})}addNode(e){this.addNodes([e])}doRemoveNode(e){let t=this.getNode(e);this.bothEdgesMap.get(e)?.forEach(e=>this.doRemoveEdge(e.id)),this.nodeMap.delete(e),this.treeIndices.forEach(n=>{n.childrenMap.get(e)?.forEach(e=>{n.parentMap.delete(e.id)});let r=n.parentMap.get(e);r&&n.childrenMap.get(r.id)?.delete(t),n.parentMap.delete(e),n.childrenMap.delete(e)}),this.bothEdgesMap.delete(e),this.inEdgesMap.delete(e),this.outEdgesMap.delete(e),this.changes.push({type:`NodeRemoved`,value:t})}removeNodes(e){this.batch(()=>{e.forEach(e=>this.doRemoveNode(e))})}removeNode(e){this.removeNodes([e])}updateNodeDataProperty(e,t,n){let r=this.getNode(e);this.batch(()=>{let i=r.data[t],a=n;r.data[t]=a,this.changes.push({type:`NodeDataUpdated`,id:e,propertyName:t,oldValue:i,newValue:a})})}mergeNodeData(e,t){this.batch(()=>{Object.entries(t).forEach(([t,n])=>{this.updateNodeDataProperty(e,t,n)})})}updateNodeData(...e){let t=e[0],n=this.getNode(t);if(typeof e[1]==`string`){this.updateNodeDataProperty(t,e[1],e[2]);return}let r;if(typeof e[1]==`function`){let t=e[1];r=t(n.data)}else typeof e[1]==`object`&&(r=e[1]);this.batch(()=>{let e=n.data,i=r;n.data=r,this.changes.push({type:`NodeDataUpdated`,id:t,oldValue:e,newValue:i})})}checkEdgeExistence(e){if(!this.hasEdge(e))throw 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){let t=this.getEdge(e);return{edge:t,source:this.getNode(t.source),target:this.getNode(t.target)}}doAddEdge(e){if(this.hasEdge(e.id))throw Error(`Edge already exists: `+e.id);this.checkNodeExistence(e.source),this.checkNodeExistence(e.target),this.edgeMap.set(e.id,e);let t=this.inEdgesMap.get(e.target),n=this.outEdgesMap.get(e.source),r=this.bothEdgesMap.get(e.source),i=this.bothEdgesMap.get(e.target);t.add(e),n.add(e),r.add(e),i.add(e),this.changes.push({type:`EdgeAdded`,value:e})}addEdges(e){this.batch(()=>{for(let t of e)this.doAddEdge(t)})}addEdge(e){this.addEdges([e])}doRemoveEdge(e){let t=this.getEdge(e),n=this.outEdgesMap.get(t.source),r=this.inEdgesMap.get(t.target),i=this.bothEdgesMap.get(t.source),a=this.bothEdgesMap.get(t.target);n.delete(t),r.delete(t),i.delete(t),a.delete(t),this.edgeMap.delete(e),this.changes.push({type:`EdgeRemoved`,value:t})}removeEdges(e){this.batch(()=>{e.forEach(e=>this.doRemoveEdge(e))})}removeEdge(e){this.removeEdges([e])}updateEdgeSource(e,t){let n=this.getEdge(e);this.checkNodeExistence(t);let r=n.source,i=t;this.outEdgesMap.get(r).delete(n),this.bothEdgesMap.get(r).delete(n),this.outEdgesMap.get(i).add(n),this.bothEdgesMap.get(i).add(n),n.source=t,this.batch(()=>{this.changes.push({type:`EdgeUpdated`,id:e,propertyName:`source`,oldValue:r,newValue:i})})}updateEdgeTarget(e,t){let n=this.getEdge(e);this.checkNodeExistence(t);let r=n.target,i=t;this.inEdgesMap.get(r).delete(n),this.bothEdgesMap.get(r).delete(n),this.inEdgesMap.get(i).add(n),this.bothEdgesMap.get(i).add(n),n.target=t,this.batch(()=>{this.changes.push({type:`EdgeUpdated`,id:e,propertyName:`target`,oldValue:r,newValue:i})})}updateEdgeDataProperty(e,t,n){let r=this.getEdge(e);this.batch(()=>{let i=r.data[t],a=n;r.data[t]=a,this.changes.push({type:`EdgeDataUpdated`,id:e,propertyName:t,oldValue:i,newValue:a})})}updateEdgeData(...e){let t=e[0],n=this.getEdge(t);if(typeof e[1]==`string`){this.updateEdgeDataProperty(t,e[1],e[2]);return}let r;if(typeof e[1]==`function`){let t=e[1];r=t(n.data)}else typeof e[1]==`object`&&(r=e[1]);this.batch(()=>{let e=n.data,i=r;n.data=r,this.changes.push({type:`EdgeDataUpdated`,id:t,oldValue:e,newValue:i})})}mergeEdgeData(e,t){this.batch(()=>{Object.entries(t).forEach(([t,n])=>{this.updateEdgeDataProperty(e,t,n)})})}checkTreeExistence(e){if(!this.hasTreeStructure(e))throw 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,t){this.batch(()=>{this.attachTreeStructure(t);let n=[],r=Array.isArray(e)?e:[e];for(;r.length;){let e=r.shift();n.push(e),e.children&&r.push(...e.children)}this.addNodes(n),n.forEach(e=>{e.children?.forEach(n=>{this.setParent(n.id,e.id,t)})})})}getRoots(e){return this.checkTreeExistence(e),this.getAllNodes().filter(t=>!this.getParent(t.id,e))}getChildren(e,t){this.checkNodeExistence(e),this.checkTreeExistence(t);let n=this.treeIndices.get(t).childrenMap.get(e);return Array.from(n||[])}getParent(e,t){return this.checkNodeExistence(e),this.checkTreeExistence(t),this.treeIndices.get(t).parentMap.get(e)||null}getAncestors(e,t){let n=[],r=this.getNode(e),i;for(;i=this.getParent(r.id,t);)n.push(i),r=i;return n}setParent(e,t,n){this.checkTreeExistence(n);let r=this.treeIndices.get(n);if(!r)return;let i=this.getNode(e),a=r.parentMap.get(e);if(a?.id===t)return;if(t==null){a&&r.childrenMap.get(a.id)?.delete(i),r.parentMap.delete(e);return}let o=this.getNode(t);r.parentMap.set(e,o),a&&r.childrenMap.get(a.id)?.delete(i);let s=r.childrenMap.get(o.id);s||(s=new Set,r.childrenMap.set(o.id,s)),s.add(i),this.batch(()=>{this.changes.push({type:`TreeStructureChanged`,treeKey:n,nodeId:e,oldParentId:a?.id,newParentId:o.id})})}dfsTree(e,t,n){return SS(this.getNode(e),new Set,t,e=>this.getChildren(e,n))}bfsTree(e,t,n){return xS([this.getNode(e)],new Set,t,e=>this.getChildren(e,n))}getAllNodes(){return Array.from(this.nodeMap.values())}getAllEdges(){return Array.from(this.edgeMap.values())}bfs(e,t,n=`out`){let r={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];return xS([this.getNode(e)],new Set,t,r)}dfs(e,t,n=`out`){let r={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];return SS(this.getNode(e),new Set,t,r)}clone(){let t=new e({nodes:this.getAllNodes().map(e=>({...e,data:{...e.data}})),edges:this.getAllEdges().map(e=>({...e,data:{...e.data}}))});return this.treeIndices.forEach(({parentMap:e,childrenMap:n},r)=>{let i=new Map;e.forEach((e,n)=>{i.set(n,t.getNode(e.id))});let a=new Map;n.forEach((e,n)=>{a.set(n,new Set(Array.from(e).map(e=>t.getNode(e.id))))}),t.treeIndices.set(r,{parentMap:i,childrenMap:a})}),t}toJSON(){return JSON.stringify({nodes:this.getAllNodes(),edges:this.getAllEdges()})}createView(e){return new wS({graph:this,...e})}},ES=class{constructor(e,t){this.context=e,this.options=t||{}}},DS=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},OS=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function kS(e){let{type:t}=e;return[`compact-box`,`mindmap`,`dendrogram`,`indented`].includes(t)}function AS(e){return!Array.isArray(e)&&e?.preLayout}function jS(e,t){class n extends ES{constructor(t,n){if(super(t,n),this.instance=new e({}),this.id=this.instance.id,`stop`in this.instance&&`tick`in this.instance){let e=this.instance;this.stop=e.stop.bind(e),this.tick=t=>(e.tick(t),this.getLayoutResult(e))}}execute(e,t){return DS(this,void 0,void 0,function*(){return yield this.instance.execute(this.graphData2LayoutModel(e),this.transformOptions(Wn({},this.options,t))),this.getLayoutResult(this.instance)})}graphData2LayoutModel(e){let{nodes:t=[],edges:n=[],combos:r=[]}=e;return{nodes:[...t,...r],edges:n}}transformOptions(e){let n=e=>t.model.isCombo(e);if(e.node=e=>{let{style:t}=e||{},r=`combo`in(e||{})?e.combo??null:null,i=Q(e);return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({id:i},hn(t?.x)?{x:t.x}:{}),hn(t?.y)?{y:t.y}:{}),hn(t?.z)?{z:t.z}:{}),{parentId:r}),n(i)?{isCombo:!0}:{})},e.edge=e=>({id:Q(e),source:e.source,target:e.target}),!(`onTick`in e))return e;let r=e.onTick;return e.onTick=e=>r(this.getLayoutResult(e)),e}getLayoutResult(e){let{model:t}=this.context,n={nodes:[],edges:[],combos:[]};return e.forEachNode(e=>{let r=String(e.id),i=t.isCombo(r)?n.combos:n.nodes,a=Object.assign({x:e.x,y:e.y,z:e.z??0},e.size?{size:e.size}:{});i?.push({id:r,style:a})}),e.forEachEdge(e=>{let t={controlPoints:e.points||[]};n.edges.push({id:String(e.id),source:String(e.source),target:String(e.target),style:t})}),n}}return n}function MS(e){let{nodes:t,edges:n=[]}=e,r={nodes:[],edges:[],combos:[]};return t.forEach(e=>{let t=e.data._isCombo?r.combos:r.nodes,{x:n,y:i,z:a=0}=e.data;t?.push({id:e.id,style:{x:n,y:i,z:a}})}),n.forEach(e=>{let{id:t,source:n,target:i,data:{points:a=[],controlPoints:o=a.slice(1,a.length-1)}}=e;r.edges.push({id:t,source:n,target:i,style:Object.assign({},o?.length?{controlPoints:o.map(v_)}:{})})}),r}function NS(e){return!(`forEachNode`in e.prototype)&&!(`forEachEdge`in e.prototype)}function PS(e,t){class n extends ES{constructor(t,n){if(super(t,n),this.instance=new e({}),this.id=this.instance.id,`stop`in this.instance&&`tick`in this.instance){let e=this.instance;this.stop=e.stop.bind(e),this.tick=t=>MS(e.tick?.call(e,t))}}execute(e,t){return DS(this,void 0,void 0,function*(){return MS(yield this.instance.execute(this.graphData2LayoutModel(e),this.transformOptions(Wn({},this.options,t))))})}transformOptions(e){if(!(`onTick`in e))return e;let t=e.onTick;return e.onTick=e=>t(MS(e)),e}graphData2LayoutModel(e){let{nodes:n=[],edges:r=[],combos:i=[]}=e,a=n.map(e=>{let t=Q(e),{data:n,style:r,combo:i}=e,a=OS(e,[`data`,`style`,`combo`]),o={id:t,data:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},n),{data:n}),i?{parentId:i}:{}),{style:r}),a)};return r?.x&&Object.assign(o.data,{x:r.x}),r?.y&&Object.assign(o.data,{y:r.y}),r?.z&&Object.assign(o.data,{z:r.z}),o}),o=new Map(a.map(e=>[e.id,e])),s=r.filter(e=>{let{source:t,target:n}=e;return o.has(t)&&o.has(n)}).map(e=>{let{source:t,target:n,data:r,style:i}=e;return{id:Q(e),source:t,target:n,data:Object.assign({},r),style:Object.assign({},i)}}),c=i.map(e=>({id:Q(e),data:Object.assign({_isCombo:!0},e.data),style:Object.assign({},e.style)})),l=new TS({nodes:[...a,...c],edges:s});return t.model.model.hasTreeStructure(`combo`)&&(l.attachTreeStructure(eh),a.forEach(e=>{let n=t.model.model.getParent(e.id,eh);n&&l.hasNode(n.id)&&l.setParent(e.id,n.id,eh)})),l}}return n}function FS(e,t,...n){if(t in e)return e[t](...n);if(`instance`in e){let r=e.instance;if(t in r)return r[t](...n)}return null}function IS(e,t){if(t in e)return e[t];if(`instance`in e){let n=e.instance;if(t in n)return n[t]}return null}var LS=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},RS=class extends vS{get forceLayoutInstance(){return this.context.layout.getLayoutInstance().find(e=>[`d3-force`,`d3-force-3d`].includes(e?.id))}validate(e){return this.context.layout?this.forceLayoutInstance?super.validate(e):(ch.warn(`DragElementForce only works with d3-force or d3-force-3d layout`),!1):!1}moveElement(e,t){return LS(this,void 0,void 0,function*(){let n=this.forceLayoutInstance;this.context.graph.getNodeData(e).forEach((r,i)=>{let{x:a=0,y:o=0}=r.style||{};n&&FS(n,`setFixedPosition`,e[i],[...Jg([+a,+o],this.clampByRotation(t))])})})}onDragStart(e){if(this.enable=this.validate(e),!this.enable)return;this.target=this.getSelectedNodeIDs([e.target.id]),this.hideEdge(),this.context.graph.frontElement(this.target);let t=this.forceLayoutInstance;t&&IS(t,`simulation`).alphaTarget(.3).restart(),this.context.graph.getNodeData(this.target).forEach(e=>{let{x:n=0,y:r=0}=e.style||{};t&&FS(t,`setFixedPosition`,Q(e),[+n,+r])})}onDrag(e){if(!this.enable)return;let t=this.getDelta(e);this.moveElement(this.target,t)}onDragEnd(){let e=this.forceLayoutInstance;e&&IS(e,`simulation`).alphaTarget(0),!this.options.fixed&&this.context.graph.getNodeData(this.target).forEach(t=>{e&&FS(e,`setFixedPosition`,Q(t),[null,null,null])})}},zS=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},BS=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.isZoomEvent=e=>!!(e.data&&`scale`in e.data),this.relatedEdgeToUpdate=new Set,this.zoom=this.context.graph.getZoom(),this.fixElementSize=e=>zS(this,void 0,void 0,function*(){if(!this.validate(e))return;let{graph:t}=this.context,{state:n,nodeFilter:r,edgeFilter:i,comboFilter:a}=this.options,o=(n?t.getElementDataByState(`node`,n):t.getNodeData()).filter(r),s=(n?t.getElementDataByState(`edge`,n):t.getEdgeData()).filter(i),c=(n?t.getElementDataByState(`combo`,n):t.getComboData()).filter(a),l=this.isZoomEvent(e)?this.zoom=Math.max(.01,Math.min(e.data.scale,10)):this.zoom,u=[...o,...c];u.length>0&&u.forEach(e=>this.fixNodeLike(e,l)),this.updateRelatedEdges(),s.length>0&&s.forEach(e=>this.fixEdge(e,l))}),this.cachedStyles=new Map,this.getOriginalFieldValue=(e,t,n)=>{let r=this.cachedStyles.get(e)||[],i=r.find(e=>e.shape===t)?.style||{};return n in i||(i[n]=t.attributes[n],this.cachedStyles.set(e,[...r.filter(e=>e.shape!==t),{shape:t,style:i}])),i[n]},this.scaleEntireElement=(e,t,n)=>{t.setLocalScale(1/n);let r=this.cachedStyles.get(e)||[];r.push({shape:t}),this.cachedStyles.set(e,r)},this.scaleSpecificShapes=(e,t,n)=>{let r=Nv(e);(Array.isArray(n)?n:[n]).forEach(n=>{let{shape:i,fields:a}=n,o=typeof i==`function`?i(r):e.getShape(i);if(o){if(!a){this.scaleEntireElement(e.id,o,t);return}a.forEach(n=>{let r=this.getOriginalFieldValue(e.id,o,n);hn(r)&&(o.style[n]=r/t)})}})},this.skipIfExceedViewport=e=>{let{viewport:t}=this.context;return!t?.isInViewport(e.getRenderBounds(),!1,30)},this.fixNodeLike=(e,t)=>{let n=Q(e),{element:r,model:i}=this.context,a=r.getElement(n);if(!a||this.skipIfExceedViewport(a))return;i.getRelatedEdgesData(n).forEach(e=>this.relatedEdgeToUpdate.add(Q(e)));let o=this.options[a.type];if(!o){this.scaleEntireElement(n,a,t);return}this.scaleSpecificShapes(a,t,o)},this.fixEdge=(e,t)=>{let n=Q(e),r=this.context.element.getElement(n);if(!r||this.skipIfExceedViewport(r))return;let i=this.options.edge;if(!i){r.style.transformOrigin=`center`,this.scaleEntireElement(n,r,t);return}this.scaleSpecificShapes(r,t,i)},this.updateRelatedEdges=()=>{let{element:e}=this.context;this.relatedEdgeToUpdate.size>0&&this.relatedEdgeToUpdate.forEach(t=>{e.getElement(t)?.update({})}),this.relatedEdgeToUpdate.clear()},this.resetTransform=e=>zS(this,void 0,void 0,function*(){e.data?.firstRender||(this.options.reset?this.restoreCachedStyles():this.fixElementSize({data:{scale:this.zoom}}))}),this.bindEvents()}restoreCachedStyles(){if(this.cachedStyles.size>0){this.cachedStyles.forEach(e=>{e.forEach(({shape:e,style:t})=>{if(Kn(t))e.setLocalScale(1);else{if(this.options.state)return;Object.entries(t).forEach(([t,n])=>e.style[t]=n)}})});let{graph:e,element:t}=this.context,n=Object.keys(Object.fromEntries(this.cachedStyles)).filter(t=>t&&e.getElementType(t)===`node`);if(n.length>0){let r=new Set;n.forEach(t=>{e.getRelatedEdgesData(t).forEach(e=>r.add(Q(e)))}),r.forEach(e=>{(t?.getElement(e))?.update({})})}}}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_DRAW,this.resetTransform),e.on(Z.AFTER_TRANSFORM,this.fixElementSize)}unbindEvents(){let{graph:e}=this.context;e.off(Z.AFTER_DRAW,this.resetTransform),e.off(Z.AFTER_TRANSFORM,this.fixElementSize)}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}destroy(){this.unbindEvents(),super.destroy()}};BS.defaultOptions={enable:e=>e.data.scale<1,nodeFilter:()=>!0,edgeFilter:()=>!0,comboFilter:()=>!0,edge:[{shape:`key`,fields:[`lineWidth`]},{shape:`halo`,fields:[`lineWidth`]},{shape:`label`}],reset:!1};var VS=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},HS=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.focus=e=>VS(this,void 0,void 0,function*(){if(!this.validate(e))return;let{graph:t}=this.context;yield t.focusElement(e.target.id,this.options.animation)}),this.shortcut=new H_(t.graph),this.bindEvents()}bindEvents(){let{graph:e}=this.context;this.unbindEvents(),K_.forEach(t=>{e.on(`${t}:${X.CLICK}`,this.focus)})}validate(e){if(this.destroyed||!this.isKeydown())return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}isKeydown(){let{trigger:e}=this.options;return e?.length?this.shortcut.match(e):!0}unbindEvents(){let{graph:e}=this.context;K_.forEach(t=>{e.off(`${t}:${X.CLICK}`,this.focus)})}destroy(){this.unbindEvents(),this.shortcut.destroy(),super.destroy()}};HS.defaultOptions={animation:{easing:`ease-in`,duration:500},enable:!0,trigger:[]};var US=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.isFrozen=!1,this.toggleFrozen=e=>{this.isFrozen=e.type===`dragstart`},this.hoverElement=e=>{if(!this.validate(e))return;let t=e.type===X.POINTER_ENTER;this.updateElementsState(e,t);let{onHover:n,onHoverEnd:r}=this.options;t?n?.(e):r?.(e)},this.updateElementsState=(e,t)=>{if(!this.options.state&&!this.options.inactiveState)return;let{graph:n}=this.context,{state:r,animation:i,inactiveState:a}=this.options,o=this.getActiveIds(e),s={};if(r&&Object.assign(s,this.getElementsState(o,r,t)),a){let e=Ag(n.getData(),!0).filter(e=>!o.includes(e));Object.assign(s,this.getElementsState(e,a,t))}n.setElementState(s,i)},this.getElementsState=(e,t,n)=>{let{graph:r}=this.context,i={};return e.forEach(e=>{let a=r.getElementState(e);n?i[e]=a.includes(t)?a:[...a,t]:i[e]=a.filter(e=>e!==t)}),i},this.bindEvents()}bindEvents(){let{graph:e}=this.context;this.unbindEvents(),K_.forEach(t=>{e.on(`${t}:${X.POINTER_ENTER}`,this.hoverElement),e.on(`${t}:${X.POINTER_LEAVE}`,this.hoverElement)});let t=this.context.canvas.document;t.addEventListener(`${X.DRAG_START}`,this.toggleFrozen),t.addEventListener(`${X.DRAG_END}`,this.toggleFrozen)}getActiveIds(e){let{graph:t}=this.context,{degree:n,direction:r}=this.options,i=e.target.id;return n?Y_(t,e.targetType,i,typeof n==`function`?n(e):n,r):[i]}validate(e){if(this.destroyed||this.isFrozen||nS(e.target)||this.context.graph.isCollapsingExpanding)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}unbindEvents(){let{graph:e}=this.context;K_.forEach(t=>{e.off(`${t}:${X.POINTER_ENTER}`,this.hoverElement),e.off(`${t}:${X.POINTER_LEAVE}`,this.hoverElement)});let t=this.context.canvas.document;t.removeEventListener(`${X.DRAG_START}`,this.toggleFrozen),t.removeEventListener(`${X.DRAG_END}`,this.toggleFrozen)}destroy(){this.unbindEvents(),super.destroy()}};US.defaultOptions={animation:!1,enable:!0,degree:0,direction:`both`,state:`active`,inactiveState:void 0};var WS=class extends U_{onPointerDown(e){if(!super.validate(e)||!super.isKeydown()||this.points)return;let{canvas:t,graph:n}=this.context;this.pathShape=new ff({id:`g6-lasso-select`,style:this.options.style}),t.appendChild(this.pathShape),this.points=[W_(e,n)]}onPointerMove(e){var t;if(!this.points)return;let{immediately:n,mode:r}=this.options;this.points.push(W_(e,this.context.graph)),(t=this.pathShape)==null||t.setAttribute(`d`,Tv(this.points)),n&&r===`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 e;(e=this.pathShape)==null||e.remove(),this.pathShape=void 0,this.points=void 0}},GS=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.hiddenShapes=[],this.isVisible=!0,this.setElementsVisibility=(e,t,n)=>{e.filter(Boolean).forEach(e=>{t===`hidden`&&!e.isVisible()?this.hiddenShapes.push(e):t===`visible`&&this.hiddenShapes.includes(e)?this.hiddenShapes.splice(this.hiddenShapes.indexOf(e),1):Bg(e,t,n)})},this.filterShapes=(e,t)=>{if(L(t))return n=>!t(e,n);let n=t?.[e];return e=>e.className?!n?.includes(e.className):!0},this.hideShapes=e=>{if(!this.validate(e)||!this.isVisible)return;let{element:t}=this.context,{shapes:n={}}=this.options;this.setElementsVisibility(t.getNodes(),`hidden`,this.filterShapes(`node`,n)),this.setElementsVisibility(t.getEdges(),`hidden`,this.filterShapes(`edge`,n)),this.setElementsVisibility(t.getCombos(),`hidden`,this.filterShapes(`combo`,n)),this.isVisible=!1},this.showShapes=Ln(e=>{if(!this.validate(e)||this.isVisible)return;let{element:t}=this.context;this.setElementsVisibility(t.getNodes(),`visible`),this.setElementsVisibility(t.getEdges(),`visible`),this.setElementsVisibility(t.getCombos(),`visible`),this.isVisible=!0},this.options.debounce),this.bindEvents()}bindEvents(){let{graph:e}=this.context;e.on(Z.BEFORE_TRANSFORM,this.hideShapes),e.on(Z.AFTER_TRANSFORM,this.showShapes)}unbindEvents(){let{graph:e}=this.context;e.off(Z.BEFORE_TRANSFORM,this.hideShapes),e.off(Z.AFTER_TRANSFORM,this.showShapes)}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}};GS.defaultOptions={enable:!0,debounce:200,shapes:e=>e===`node`};var KS=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},qS=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.onWheel=e=>KS(this,void 0,void 0,function*(){this.options.preventDefault&&e.preventDefault();let t=e.deltaX,n=e.deltaY;yield this.scroll([-t,-n],e)}),this.shortcut=new H_(t.graph),this.bindEvents()}update(e){super.update(e),this.bindEvents()}bindEvents(){var e,t;let{trigger:n}=this.options;if(this.shortcut.unbindAll(),$t(n)){(e=this.graphDom)==null||e.removeEventListener(X.WHEEL,this.onWheel);let{up:t=[],down:r=[],left:i=[],right:a=[]}=n;this.shortcut.bind(t,e=>this.scroll([0,-10],e)),this.shortcut.bind(r,e=>this.scroll([0,10],e)),this.shortcut.bind(i,e=>this.scroll([-10,0],e)),this.shortcut.bind(a,e=>this.scroll([10,0],e))}else (t=this.graphDom)==null||t.addEventListener(X.WHEEL,this.onWheel,{passive:!1})}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}formatDisplacement(e){let{sensitivity:t}=this.options;return e=Xg(e,t),e=this.clampByDirection(e),e=this.clampByRange(e),e}clampByDirection([e,t]){let{direction:n}=this.options;return n===`x`?t=0:n===`y`&&(e=0),[e,t]}clampByRange([e,t]){let{viewport:n,canvas:r}=this.context,[i,a]=r.getSize(),[o,s,c,l]=Mh(this.options.range),u=[a*o,i*s,a*c,i*l],d=zh(Rh(n.getCanvasCenter()),u),f=Yg(n.getViewportCenter(),[e,t,0]);if(!Hh(f,d)){let{min:[n,r],max:[i,a]}=d;(f[0]<n&&e>0||f[0]>i&&e<0)&&(e=0),(f[1]<r&&t>0||f[1]>a&&t<0)&&(t=0)}return[e,t]}scroll(e,t){return KS(this,void 0,void 0,function*(){if(!this.validate(t))return;let{onFinish:n}=this.options,r=this.context.graph,i=this.formatDisplacement(e);yield r.translateBy(i,!1),n?.()})}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}destroy(){var e;this.shortcut.destroy(),(e=this.graphDom)==null||e.removeEventListener(X.WHEEL,this.onWheel),super.destroy()}};qS.defaultOptions={enable:!0,sensitivity:1,preventDefault:!0,range:1/0};var JS=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},YS=class e extends Wg{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.zoom=(e,t,n)=>JS(this,void 0,void 0,function*(){if(!this.validate(t))return;let{graph:r}=this.context,i=this.options.origin;!i&&`viewport`in t&&(i=v_(t.viewport));let{sensitivity:a,onFinish:o}=this.options,s=1+mn(e,-50,50)*a/100,c=r.getZoom();yield r.zoomTo(c*s,n,i),o?.()}),this.onReset=()=>JS(this,void 0,void 0,function*(){yield this.context.graph.zoomTo(1,this.options.animation)}),this.preventDefault=e=>{this.options.preventDefault&&e.preventDefault()},this.shortcut=new H_(t.graph),this.bindEvents()}update(e){super.update(e),this.bindEvents()}bindEvents(){let{trigger:e}=this.options;if(this.shortcut.unbindAll(),Array.isArray(e)&&(e.includes(X.PINCH)?this.shortcut.bind([X.PINCH],e=>{this.zoom(e.scale,e,!1)}):(this.context.canvas.getContainer()?.addEventListener(X.WHEEL,this.preventDefault),this.shortcut.bind([...e,X.WHEEL],e=>{let{deltaX:t,deltaY:n}=e;this.zoom(-(n??t),e,!1)}))),typeof e==`object`){let{zoomIn:t=[],zoomOut:n=[],reset:r=[]}=e;this.shortcut.bind(t,e=>this.zoom(10,e,this.options.animation)),this.shortcut.bind(n,e=>this.zoom(-10,e,this.options.animation)),this.shortcut.bind(r,this.onReset)}}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return L(t)?t(e):!!t}destroy(){var e;this.shortcut.destroy(),(e=this.context.canvas.getContainer())==null||e.removeEventListener(X.WHEEL,this.preventDefault),super.destroy()}};YS.defaultOptions={animation:{duration:200},enable:!0,sensitivity:1,trigger:[],preventDefault:!0};function XS(e,t,n,r=`height`){let i=e[r],a=t[r];return n===`center`?(i+a)/2:e.height}var ZS=Object.assign,QS={getId:e=>e.id||e.name,getPreH:e=>e.preH||0,getPreV:e=>e.preV||0,getHGap:e=>e.hgap||18,getVGap:e=>e.vgap||18,getChildren:e=>e.children,getHeight:e=>e.height||36,getWidth(e){let t=e.label||` `;return e.width||18*t.split(``).length}},$S=class e{constructor(t,n){if(this.x=0,this.y=0,this.depth=0,this.children=[],this.hgap=0,this.vgap=0,t instanceof e||`x`in t&&`y`in t&&`children`in t){let e=t;this.data=e.data,this.id=e.id,this.x=e.x,this.y=e.y,this.width=e.width,this.height=e.height,this.depth=e.depth,this.children=e.children,this.parent=e.parent,this.hgap=e.hgap,this.vgap=e.vgap,this.preH=e.preH,this.preV=e.preV;return}this.data=t;let r=n.getHGap(t),i=n.getVGap(t);this.preH=n.getPreH(t),this.preV=n.getPreV(t),this.width=n.getWidth(t),this.height=n.getHeight(t),this.width+=this.preH,this.height+=this.preV,this.id=n.getId(t),this.addGap(r,i)}isRoot(){return this.depth===0}isLeaf(){return this.children.length===0}addGap(e,t){this.hgap+=e,this.vgap+=t,this.width+=2*e,this.height+=2*t}eachNode(e){let t,n=[this];for(;t=n.shift();)e(t),n=t.children.concat(n)}DFTraverse(e){this.eachNode(e)}BFTraverse(e){let t,n=[this];for(;t=n.shift();)e(t),n=n.concat(t.children)}getBoundingBox(){let e={left:Number.MAX_VALUE,top:Number.MAX_VALUE,width:0,height:0};return this.eachNode(t=>{e.left=Math.min(e.left,t.x),e.top=Math.min(e.top,t.y),e.width=Math.max(e.width,t.x+t.width),e.height=Math.max(e.height,t.y+t.height)}),e}translate(e=0,t=0){this.eachNode(n=>{n.x+=e,n.y+=t,n.x+=n.preH,n.y+=n.preV})}right2left(){let e=this.getBoundingBox();this.eachNode(t=>{t.x=t.x-2*(t.x-e.left)-t.width}),this.translate(e.width,0)}bottom2top(){let e=this.getBoundingBox();this.eachNode(t=>{t.y=t.y-2*(t.y-e.top)-t.height}),this.translate(0,e.height)}};function eC(e,t={},n){t=ZS({},QS,t);let r=new $S(e,t),i=[r],a;if(!n&&!e.collapsed){for(;a=i.shift();)if(!a.data.collapsed){let e=t.getChildren(a.data),n=e?e.length:0;if(a.children=Array(n),e&&n)for(let r=0;r<n;r++){let n=new $S(e[r],t);a.children[r]=n,i.push(n),n.parent=a,n.depth=a.depth+1}}}return r}var tC=class{constructor(e,t={}){this.options=t,this.rootNode=eC(e,t)}execute(){throw Error(`please override this method`)}},nC=class e{constructor(e=0,t=0,n=0,r=[]){this.x=0,this.prelim=0,this.mod=0,this.shift=0,this.change=0,this.tl=null,this.tr=null,this.el=null,this.er=null,this.msel=0,this.mser=0,this.w=e||0,this.h=t||0,this.y=n||0,this.c=r||[],this.cs=r.length}static fromNode(t,n){if(!t)return null;let r=[];return t.children.forEach(t=>{let i=e.fromNode(t,n);i&&r.push(i)}),n?new e(t.height,t.width,t.x,r):new e(t.width,t.height,t.y,r)}};function rC(e,t,n){n?e.y+=t:e.x+=t,e.children.forEach(e=>{rC(e,t,n)})}function iC(e,t){let n=t?e.y:e.x;return e.children.forEach(e=>{n=Math.min(iC(e,t),n)}),n}function aC(e,t){rC(e,-iC(e,t),t)}function oC(e,t,n){n?t.y=e.x:t.x=e.x,e.c.forEach((e,r)=>{oC(e,t.children[r],n)})}function sC(e,t,n=0){t?(e.x=n,n+=e.width):(e.y=n,n+=e.height),e.children.forEach(e=>{sC(e,t,n)})}function cC(e,t={}){let n=t.isHorizontal;function r(e){e.cs===0?(e.el=e,e.er=e,e.msel=e.mser=0):(e.el=e.c[0].el,e.msel=e.c[0].msel,e.er=e.c[e.cs-1].er,e.mser=e.c[e.cs-1].mser)}function i(e,t,n){let r=e.c[t-1],i=r.mod,l=e.c[t],u=l.mod;for(;r!==null&&l!==null;){n&&c(r)>n.low&&(n=n.nxt);let d=i+r.prelim+r.w-(u+l.prelim);d>0&&(u+=d,n&&a(e,t,n.index,d));let f=c(r),p=c(l);f<=p&&(r=s(r),r!==null&&(i+=r.mod)),f>=p&&(l=o(l),l!==null&&(u+=l.mod))}!r&&l?function(e,t,n,r){let i=e.c[0].el;i.tl=n;let a=r-n.mod-e.c[0].msel;i.mod+=a,i.prelim-=a,e.c[0].el=e.c[t].el,e.c[0].msel=e.c[t].msel}(e,t,l,u):r&&!l&&function(e,t,n,r){let i=e.c[t].er;i.tr=n;let a=r-n.mod-e.c[t].mser;i.mod+=a,i.prelim-=a,e.c[t].er=e.c[t-1].er,e.c[t].mser=e.c[t-1].mser}(e,t,r,i)}function a(e,t,n,r){e.c[t].mod+=r,e.c[t].msel+=r,e.c[t].mser+=r,function(e,t,n,r){if(n!==t-1){let i=t-n;e.c[n+1].shift+=r/i,e.c[t].shift-=r/i,e.c[t].change-=r-r/i}}(e,t,n,r)}function o(e){return e.cs===0?e.tl:e.c[0]}function s(e){return e.cs===0?e.tr:e.c[e.cs-1]}function c(e){return e.y+e.h}function l(e,t,n){for(;n!==null&&e>=n.low;)n=n.nxt;return{low:e,index:t,nxt:n}}sC(e,n);let u=nC.fromNode(e,n);return u&&(function e(t){if(t.cs===0)return void r(t);e(t.c[0]);let n=l(c(t.c[0].el),0,null);for(let r=1;r<t.cs;++r){e(t.c[r]);let a=c(t.c[r].er);i(t,r,n),n=l(a,r,n)}(function(e){e.prelim=(e.c[0].prelim+e.c[0].mod+e.c[e.cs-1].mod+e.c[e.cs-1].prelim+e.c[e.cs-1].w)/2-e.w/2})(t),r(t)}(u),function e(t,n){n+=t.mod,t.x=t.prelim+n,function(e){let t=0,n=0;for(let r=0;r<e.cs;r++)t+=e.c[r].shift,n+=t+e.c[r].change,e.c[r].mod+=n}(t);for(let r=0;r<t.cs;r++)e(t.c[r],n)}(u,0),oC(u,e,n),aC(e,n)),e}function lC(e,t){let n=eC(e.data,t,!0),r=eC(e.data,t,!0),i=e.children.length,a=Math.round(i/2),o=t.getSide||function(e,t){return t<a?`right`:`left`};for(let t=0;t<i;t++){let i=e.children[t];o(i,t)===`right`?r.children.push(i):n.children.push(i)}return n.eachNode(e=>{e.isRoot()||(e.side=`left`)}),r.eachNode(e=>{e.isRoot()||(e.side=`right`)}),{left:n,right:r}}var uC=[`LR`,`RL`,`TB`,`BT`,`H`,`V`],dC=[`LR`,`RL`,`H`],fC=uC[0];function pC(e,t,n){let r=t.direction||fC;if(t.isHorizontal=(e=>dC.indexOf(e)>-1)(r),r&&uC.indexOf(r)===-1)throw TypeError(`Invalid direction: ${r}`);if(r===uC[0])n(e,t);else if(r===uC[1])n(e,t),e.right2left();else if(r===uC[2])n(e,t);else if(r===uC[3])n(e,t),e.bottom2top();else if(r===uC[4]||r===uC[5]){let{left:r,right:i}=lC(e,t);n(r,t),n(i,t),t.isHorizontal?r.right2left():r.bottom2top(),i.translate(r.x-i.x,r.y-i.y),e.x=r.x,e.y=i.y;let a=e.getBoundingBox();t.isHorizontal?a.top<0&&e.translate(0,-a.top):a.left<0&&e.translate(-a.left,0)}let i=t.fixedRoot;return i===void 0&&(i=!0),i&&e.translate(-(e.x+e.width/2+e.hgap),-(e.y+e.height/2+e.vgap)),function(e,t){if(t.radial){let[n,r]=t.isHorizontal?[`x`,`y`]:[`y`,`x`],i={x:1/0,y:1/0},a={x:-1/0,y:-1/0},o=0;e.DFTraverse(e=>{o++;let{x:t,y:n}=e;i.x=Math.min(i.x,t),i.y=Math.min(i.y,n),a.x=Math.max(a.x,t),a.y=Math.max(a.y,n)});let s=a[r]-i[r];if(s===0)return;let c=2*Math.PI/o;e.DFTraverse(t=>{let a=t[r],o=i[r],l=t[n],u=e[n],d=(a-o)/s*(2*Math.PI-c)+c,f=l-u;t.x=Math.cos(d)*f,t.y=Math.sin(d)*f})}}(e,t),e}var mC=class extends tC{execute(){return pC(this.rootNode,this.options,cC)}},hC={};function gC(e,t){return new mC(e,ZS({},hC,t)).execute()}var _C=class{constructor(e=0,t=[]){this.x=0,this.y=0,this.leftChild=null,this.rightChild=null,this.isLeaf=!1,this.height=e,this.children=t}},vC={isHorizontal:!0,nodeSep:20,nodeSize:20,rankSep:200,subTreeSep:10};function yC(e,t,n){n?(t.x=e.x,t.y=e.y):(t.x=e.y,t.y=e.x),e.children.forEach((e,r)=>{yC(e,t.children[r],n)})}function bC(e,t={}){let n=ZS({},vC,t),r=0,i=null,a=function e(t){t.width=0,t.depth&&t.depth>r&&(r=t.depth);let n=t.children,i=n.length,a=new _C(0,[]);return n.forEach((t,n)=>{let r=e(t);a.children.push(r),n===0&&(a.leftChild=r),n===i-1&&(a.rightChild=r)}),a.originNode=t,a.isLeaf=t.isLeaf(),a}(e);return function e(t){if(t.isLeaf||t.children.length===0)t.drawingDepth=r;else{let n=t.children.map(t=>e(t));t.drawingDepth=Math.min(...n)-1}return t.drawingDepth}(a),function e(t){t.x=t.drawingDepth*n.rankSep,t.isLeaf?(t.y=0,i&&(t.y=i.y+i.height+n.nodeSep,t.originNode.parent!==i.originNode.parent&&(t.y+=n.subTreeSep)),i=t):(t.children.forEach(t=>{e(t)}),t.y=(t.leftChild.y+t.rightChild.y)/2)}(a),yC(a,e,n.isHorizontal),e}var xC=class extends tC{execute(){return this.rootNode.width=0,pC(this.rootNode,this.options,bC)}},SC={};function CC(e,t){return new xC(e,ZS({},SC,t)).execute()}function wC(e,t,n,r){let i=null;e.eachNode(e=>{(function(e,t,n,r,i){let a=(typeof n==`function`?n(e):n)*e.depth;if(!r)try{if(e.parent&&e.id===e.parent.children[0].id)return e.x+=a,void(e.y=t?t.y:0)}catch{}if(e.x+=a,t){if(e.y=t.y+XS(t,e,i),t.parent&&e.parent&&e.parent.id!==t.parent.id){let n=t.parent,r=n.y+XS(n,e,i);e.y=r>e.y?r:e.y}}else e.y=0})(e,i,t,n,r),i=e})}var TC=[`LR`,`RL`,`H`],EC=TC[0],DC=class extends tC{execute(){let e=this.options,t=this.rootNode;e.isHorizontal=!0;let{indent:n=20,dropCap:r=!0,direction:i=EC,align:a}=e;if(i&&TC.indexOf(i)===-1)throw TypeError(`Invalid direction: ${i}`);if(i===TC[0])wC(t,n,r,a);else if(i===TC[1])wC(t,n,r,a),t.right2left();else if(i===TC[2]){let{left:i,right:o}=lC(t,e);wC(i,n,r,a),i.right2left(),wC(o,n,r,a);let s=i.getBoundingBox();o.translate(s.width,0),t.x=o.x-t.width/2}return t}},OC={};function kC(e,t){return new DC(e,ZS({},OC,t)).execute()}function AC(e,t){let n=0;return e.children.length?e.children.forEach(e=>{n+=AC(e,t)}):n=e.height,e._subTreeSep=t.getSubTreeSep(e.data),e.totalHeight=Math.max(e.height,n)+2*e._subTreeSep,e.totalHeight}function jC(e){let t=e.children,n=t.length;if(n){t.forEach(e=>{jC(e)});let r=t[0],i=t[n-1],a=i.y-r.y+i.height,o=0;if(t.forEach(e=>{o+=e.totalHeight}),a>e.height)e.y=r.y+a/2-e.height/2;else if(t.length!==1||e.height>o){let n=e.y+(e.height-a)/2-r.y;t.forEach(e=>{e.translate(0,n)})}else e.y=(r.y+r.height/2+i.y+i.height/2)/2-e.height/2}}var MC={getSubTreeSep:()=>0};function NC(e,t={}){return t=ZS({},MC,t),e.parent={x:0,width:0,height:0,y:0},e.BFTraverse(e=>{e.x=e.parent.x+e.parent.width}),e.parent=void 0,AC(e,t),e.startY=0,e.y=e.totalHeight/2-e.height/2,e.eachNode(e=>{let t=e.children,n=t.length;if(n){let r=t[0];if(r.startY=e.startY+e._subTreeSep,n===1)r.y=e.y+e.height/2-r.height/2;else{r.y=r.startY+r.totalHeight/2-r.height/2;for(let e=1;e<n;e++){let n=t[e];n.startY=t[e-1].startY+t[e-1].totalHeight,n.y=n.startY+n.totalHeight/2-n.height/2}}}}),jC(e),e}var PC=class extends tC{execute(){return pC(this.rootNode,this.options,NC)}},FC={};function IC(e,t){return new PC(e,ZS({},FC,t)).execute()}function LC(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function RC(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})}var zC={abs:Math.abs,ceil:Math.ceil,floor:Math.floor,max:Math.max,min:Math.min,round:Math.round,sqrt:Math.sqrt,pow:Math.pow},BC=class extends Error{constructor(e,t,n){super(e),this.position=t,this.token=n,this.name=`ExpressionError`}},VC;(function(e){e[e.STRING=0]=`STRING`,e[e.NUMBER=1]=`NUMBER`,e[e.BOOLEAN=2]=`BOOLEAN`,e[e.NULL=3]=`NULL`,e[e.IDENTIFIER=4]=`IDENTIFIER`,e[e.OPERATOR=5]=`OPERATOR`,e[e.FUNCTION=6]=`FUNCTION`,e[e.DOT=7]=`DOT`,e[e.BRACKET_LEFT=8]=`BRACKET_LEFT`,e[e.BRACKET_RIGHT=9]=`BRACKET_RIGHT`,e[e.PAREN_LEFT=10]=`PAREN_LEFT`,e[e.PAREN_RIGHT=11]=`PAREN_RIGHT`,e[e.COMMA=12]=`COMMA`,e[e.QUESTION=13]=`QUESTION`,e[e.COLON=14]=`COLON`,e[e.DOLLAR=15]=`DOLLAR`})(VC||={});var HC=new Set([32,9,10,13]),UC=new Set([43,45,42,47,37,33,38,124,61,60,62]),WC=new Map([[`true`,VC.BOOLEAN],[`false`,VC.BOOLEAN],[`null`,VC.NULL]]),GC=new Map([[`===`,!0],[`!==`,!0],[`<=`,!0],[`>=`,!0],[`&&`,!0],[`||`,!0],[`+`,!0],[`-`,!0],[`*`,!0],[`/`,!0],[`%`,!0],[`!`,!0],[`<`,!0],[`>`,!0]]),KC=new Map([[46,VC.DOT],[91,VC.BRACKET_LEFT],[93,VC.BRACKET_RIGHT],[40,VC.PAREN_LEFT],[41,VC.PAREN_RIGHT],[44,VC.COMMA],[63,VC.QUESTION],[58,VC.COLON],[36,VC.DOLLAR]]),qC=new Map;for(let[e,t]of KC.entries())qC.set(e,{type:t,value:String.fromCharCode(e)});function JC(e){return e>=48&&e<=57}function YC(e){return e>=97&&e<=122||e>=65&&e<=90||e===95}function XC(e){return YC(e)||JC(e)}function ZC(e){return UC.has(e)}var QC;(function(e){e[e.Program=0]=`Program`,e[e.Literal=1]=`Literal`,e[e.Identifier=2]=`Identifier`,e[e.MemberExpression=3]=`MemberExpression`,e[e.CallExpression=4]=`CallExpression`,e[e.BinaryExpression=5]=`BinaryExpression`,e[e.UnaryExpression=6]=`UnaryExpression`,e[e.ConditionalExpression=7]=`ConditionalExpression`})(QC||={});var $C=new Map([[`||`,2],[`&&`,3],[`===`,4],[`!==`,4],[`>`,5],[`>=`,5],[`<`,5],[`<=`,5],[`+`,6],[`-`,6],[`*`,7],[`/`,7],[`%`,7],[`!`,8]]),ew={type:QC.Literal,value:null},tw={type:QC.Literal,value:!0},nw={type:QC.Literal,value:!1},rw=e=>{let t=0,n=e.length,r=()=>t>=n?null:e[t],i=()=>e[t++],a=e=>{let t=r();return t!==null&&t.type===e},o=e=>e.type===VC.OPERATOR?$C.get(e.value)||-1:e.type===VC.DOT||e.type===VC.BRACKET_LEFT?9:e.type===VC.QUESTION?1:-1,s=e=>{let n,o;if(i().type===VC.DOT){if(!a(VC.IDENTIFIER)){let e=r();throw new BC(`Expected property name`,t,e?e.value:`<end of input>`)}let e=i();n={type:QC.Identifier,name:e.value},o=!1}else{if(n=l(0),!a(VC.BRACKET_RIGHT)){let e=r();throw new BC(`Expected closing bracket`,t,e?e.value:`<end of input>`)}i(),o=!0}return{type:QC.MemberExpression,object:e,property:n,computed:o}},c=()=>{let e=r();if(!e)throw new BC(`Unexpected end of input`,t,`<end of input>`);if(e.type===VC.OPERATOR&&(e.value===`!`||e.value===`-`)){i();let t=c();return{type:QC.UnaryExpression,operator:e.value,argument:t,prefix:!0}}switch(e.type){case VC.NUMBER:return i(),{type:QC.Literal,value:Number(e.value)};case VC.STRING:return i(),{type:QC.Literal,value:e.value};case VC.BOOLEAN:return i(),e.value===`true`?tw:nw;case VC.NULL:return i(),ew;case VC.IDENTIFIER:return i(),{type:QC.Identifier,name:e.value};case VC.FUNCTION:return(()=>{let e=i(),n=[];if(!a(VC.PAREN_LEFT)){let e=r();throw new BC(`Expected opening parenthesis after function name`,t,e?e.value:`<end of input>`)}for(i();;){if(a(VC.PAREN_RIGHT)){i();break}if(!r()){let e=r();throw new BC(`Expected closing parenthesis`,t,e?e.value:`<end of input>`)}if(n.length>0){if(!a(VC.COMMA)){let e=r();throw new BC(`Expected comma between function arguments`,t,e?e.value:`<end of input>`)}i()}let e=l(0);n.push(e)}return{type:QC.CallExpression,callee:{type:QC.Identifier,name:e.value},arguments:n}})();case VC.PAREN_LEFT:{i();let e=l(0);if(!a(VC.PAREN_RIGHT)){let e=r();throw new BC(`Expected closing parenthesis`,t,e?e.value:`<end of input>`)}return i(),e}default:throw new BC(`Unexpected token: ${e.type}`,t,e.value)}},l=(u=0)=>{let d=c();for(;t<n;){let n=e[t],c=o(n);if(c<=u)break;if(n.type!==VC.QUESTION)if(n.type!==VC.OPERATOR){if(n.type!==VC.DOT&&n.type!==VC.BRACKET_LEFT)break;d=s(d)}else{i();let e=l(c);d={type:QC.BinaryExpression,operator:n.value,left:d,right:e}}else{i();let e=l(0);if(!a(VC.COLON)){let e=r();throw new BC(`Expected : in conditional expression`,t,e?e.value:`<end of input>`)}i();let n=l(0);d={type:QC.ConditionalExpression,test:d,consequent:e,alternate:n}}}return d},u=l();return{type:QC.Program,body:u}},iw=(e,t,n)=>{let r=t;n&&(r={...t,context:{...t.context,...n}});let i=e=>{switch(e.type){case QC.Literal:return(e=>e.value)(e);case QC.Identifier:return(e=>{if(!(e.name in r.context))throw new BC(`Undefined variable: ${e.name}`);return r.context[e.name]})(e);case QC.MemberExpression:return(e=>{let t=i(e.object);if(t==null)throw new BC(`Cannot access property of null or undefined`);return t[e.computed?i(e.property):e.property.name]})(e);case QC.CallExpression:return(e=>{let t=r.functions[e.callee.name];if(!t)throw new BC(`Undefined function: ${e.callee.name}`);return t(...e.arguments.map((e=>i(e))))})(e);case QC.BinaryExpression:return(e=>{if(e.operator===`&&`)return i(e.left)&&i(e.right);if(e.operator===`||`)return i(e.left)||i(e.right);let t=i(e.left),n=i(e.right);switch(e.operator){case`+`:return t+n;case`-`:return t-n;case`*`:return t*n;case`/`:return t/n;case`%`:return t%n;case`===`:return t===n;case`!==`:return t!==n;case`>`:return t>n;case`>=`:return t>=n;case`<`:return t<n;case`<=`:return t<=n;default:throw new BC(`Unknown operator: ${e.operator}`)}})(e);case QC.UnaryExpression:return(e=>{let t=i(e.argument);if(e.prefix)switch(e.operator){case`!`:return!t;case`-`:if(typeof t!=`number`)throw new BC(`Cannot apply unary - to non-number: ${t}`);return-t;default:throw new BC(`Unknown operator: ${e.operator}`)}throw new BC(`Postfix operators are not supported: ${e.operator}`)})(e);case QC.ConditionalExpression:return(e=>i(i(e.test)?e.consequent:e.alternate))(e);default:throw new BC(`Evaluation error: Unsupported node type: ${e.type}`)}};return i(e.body)};function aw(e){let t=rw((e=>{let t=e,n=t.length,r=Array(Math.ceil(n/3)),i=0,a=0;function o(e){let r=a+1;a++;let i=``,o=!1;for(;a<n;){let n=t.charCodeAt(a);if(n===e)return o||(i=t.substring(r,a)),a++,{type:VC.STRING,value:i};n===92?(o||=(i=t.substring(r,a),!0),a++,i+=t[a]):o&&(i+=t[a]),a++}throw new BC(`Unterminated string starting with ${String.fromCharCode(e)}`,a,t.substring(Math.max(0,a-10),a))}function s(){let e=a;for(t.charCodeAt(a)===45&&a++;a<n&&JC(t.charCodeAt(a));)a++;if(a<n&&t.charCodeAt(a)===46)for(a++;a<n&&JC(t.charCodeAt(a));)a++;let r=t.slice(e,a);return{type:VC.NUMBER,value:r}}function c(){a++;let e=a;if(a<n&&YC(t.charCodeAt(a)))for(a++;a<n&&XC(t.charCodeAt(a));)a++;let r=t.slice(e,a);return{type:VC.FUNCTION,value:r}}function l(){let e=a++;for(;a<n&&XC(t.charCodeAt(a));)a++;let r=t.slice(e,a),i=WC.get(r);return i?{type:i,value:r}:{type:VC.IDENTIFIER,value:r}}function u(){if(a+2<n){let e=t.substring(a,a+3);if(GC.has(e))return a+=3,{type:VC.OPERATOR,value:e}}if(a+1<n){let e=t.substring(a,a+2);if(GC.has(e))return a+=2,{type:VC.OPERATOR,value:e}}let e=t[a];if(GC.has(e))return a++,{type:VC.OPERATOR,value:e};throw new BC(`Unknown operator at position ${a}: ${t.substring(a,a+1)}`,a,t.substring(Math.max(0,a-10),a))}for(;a<n;){let e=t.charCodeAt(a);if(d=e,HC.has(d)){a++;continue}let f=qC.get(e);if(f)r[i++]=f,a++;else if(e!==34&&e!==39)if(JC(e)||e===45&&a+1<n&&JC(t.charCodeAt(a+1)))r[i++]=s();else if(e!==64)if(YC(e))r[i++]=l();else{if(!ZC(e))throw new BC(`Unexpected character: ${t[a]}`,a,t.substring(Math.max(0,a-10),a));r[i++]=u()}else r[i++]=c();else r[i++]=o(e)}var d;return i===r.length?r:r.slice(0,i)})(e)),n=((e={},t={})=>({context:e,functions:t}))({},zC);return(e={})=>iw(t,n,e)}function ow(e,t={}){return aw(e)(t)}function sw(e,t){if(typeof e!=`string`)return;let n=e.trim();if(n)try{return aw(n),ow(n,t)}catch{return}}function cw(e){return typeof e==`number`}function lw(e){if(!e)return[0,0,0];if(cw(e))return[e,e,e];if(Array.isArray(e)&&e.length===0)return[0,0,0];let[t,n=t,r=t]=e;return[t,n,r]}function uw(e){return cw(e)?!0:Array.isArray(e)?e.every(e=>cw(e)):!1}function dw(e){return e==null}function fw(e){return typeof e==`string`}function pw(e){return typeof e==`function`}function mw(e,t){if(typeof e==`function`)return e;if(typeof e==`string`){let n=e;return(...e)=>{let r={};for(let n=0;n<t.length;n++)r[t[n]]=e[n];return sw(n,r)}}return()=>e}function hw(e,t,n=`node`){if(dw(e))return()=>t;if(fw(e)){let r=mw(e,[n]);return e=>{let n=r(e);return cw(n)?n:t}}return pw(e)?e:cw(e)?()=>e:()=>t}function gw(e,t=10,n=`node`){if(dw(e))return()=>t;if(fw(e)){let r=mw(e,[n]);return e=>{let n=r(e);return uw(n)?n:t}}return pw(e)?e:cw(e)||Array.isArray(e)?()=>e:()=>t}var _w=(e,t,n=10,r=0)=>{let i=gw(t,r),a=gw(e,n);return e=>{let[t,n,r]=lw(a(e)),[o,s,c]=lw(i(e));return[t+o,n+s,r+c]}};function vw(e){return[e.x,e.y,e.z??0]}var yw=class{constructor(e,t={}){this.edgeIdCounter=new Map,this.nodeMap=Sw(e.nodes,t.node),this.edgeMap=Cw(e.edges||[],t.edge,this.getEdgeId.bind(this))}data(){return{nodes:this.nodeMap,edges:this.edgeMap}}replace(e){this.nodeMap=e.nodes,this.edgeMap=e.edges,this.clearCache()}nodes(){return Array.from(this.nodeMap.values())}node(e){return this.nodeMap.get(e)}nodeAt(e){this.indexNodeCache||this.buildNodeIndexCache();let t=this.indexNodeCache.get(e);return t?this.nodeMap.get(t):void 0}nodeIndexOf(e){return this.nodeIndexCache||this.buildNodeIndexCache(),this.nodeIndexCache.get(e)??-1}firstNode(){return this.nodeMap.values().next().value}forEachNode(e){let t=0;this.nodeMap.forEach(n=>e(n,t++))}originalNode(e){return this.nodeMap.get(e)?._original}nodeCount(){return this.nodeMap.size}edges(){return Array.from(this.edgeMap.values())}edge(e){return this.edgeMap.get(e)}firstEdge(){return this.edgeMap.values().next().value}forEachEdge(e){let t=0;this.edgeMap.forEach(n=>e(n,t++))}originalEdge(e){return this.edgeMap.get(e)?._original}edgeCount(){return this.edgeMap.size}getEdgeId(e){if(e.id)return e.id;let t=`${e.source}-${e.target}`,n=this.edgeIdCounter.get(t)||0,r=n===0?t:`${t}-${n}`;return this.edgeIdCounter.set(t,n+1),r}degree(e,t=`both`){this.degreeCache||this.buildDegreeCache();let n=this.degreeCache.get(e);return n?n[t]:0}neighbors(e,t=`both`){if((!this.outAdjacencyCache||!this.inAdjacencyCache)&&this.buildAdjacencyCache(),t===`out`)return Array.from(this.outAdjacencyCache.get(e)||[]);if(t===`in`)return Array.from(this.inAdjacencyCache.get(e)||[]);if(this.bothAdjacencyCache)return Array.from(this.bothAdjacencyCache.get(e)||[]);let n=this.inAdjacencyCache.get(e),r=this.outAdjacencyCache.get(e);if(!n&&!r)return[];if(!n)return Array.from(r);if(!r)return Array.from(n);let i=new Set;return n.forEach(e=>i.add(e)),r.forEach(e=>i.add(e)),Array.from(i)}successors(e){return this.neighbors(e,`out`)}predecessors(e){return this.neighbors(e,`in`)}setNodeOrder(e){let t=new Map;for(let n of e)t.set(n.id,n);this.nodeMap=t,this.nodeIndexCache=void 0,this.indexNodeCache=void 0}clearCache(){this.degreeCache=void 0,this.inAdjacencyCache=void 0,this.outAdjacencyCache=void 0,this.bothAdjacencyCache=void 0,this.nodeIndexCache=void 0,this.indexNodeCache=void 0}buildDegreeCache(){this.degreeCache=new Map;for(let e of this.edges()){let{source:t,target:n}=e;if(e.source===e.target)continue;this.degreeCache.has(t)||this.degreeCache.set(t,{in:0,out:0,both:0});let r=this.degreeCache.get(e.source);r&&(r.out++,r.both++),this.degreeCache.has(n)||this.degreeCache.set(n,{in:0,out:0,both:0});let i=this.degreeCache.get(e.target);i&&(i.in++,i.both++)}}buildAdjacencyCache(){this.inAdjacencyCache=new Map,this.outAdjacencyCache=new Map;for(let e of this.edges())!this.nodeMap.has(e.source)||!this.nodeMap.has(e.target)||(this.outAdjacencyCache.has(e.source)||this.outAdjacencyCache.set(e.source,new Set),this.outAdjacencyCache.get(e.source).add(e.target),this.inAdjacencyCache.has(e.target)||this.inAdjacencyCache.set(e.target,new Set),this.inAdjacencyCache.get(e.target).add(e.source))}buildNodeIndexCache(){this.nodeIndexCache=new Map,this.indexNodeCache=new Map;let e=0;this.nodeMap.forEach((t,n)=>{this.nodeIndexCache.set(n,e),this.indexNodeCache.set(e,n),e++})}destroy(){this.clearCache(),this.nodeMap.clear(),this.edgeMap.clear(),this.edgeIdCounter.clear()}},bw=[`id`,`x`,`y`,`z`,`vx`,`vy`,`vz`,`fx`,`fy`,`fz`,`parentId`],xw=[`id`,`source`,`target`,`points`];function Sw(e,t){if(!e)throw Error(`Data.nodes is required`);let n=new Map;for(let r of e){let e={_original:r};for(let t of bw){let n=r[t];dw(n)||(e[t]=n)}if(t){let n=t(r);for(let t in n){let r=n[t];dw(r)||(e[t]=r)}}if(dw(e.id))throw Error(`Node is missing id field`);n.set(e.id,e)}return n}function Cw(e,t,n){let r=new Map;for(let i of e){let e={_original:i};for(let t of xw){let n=i[t];dw(n)||(e[t]=n)}if(t){let n=t(i);for(let t in n){let r=n[t];dw(r)||(e[t]=r)}}if(dw(e.source)||dw(e.target))throw Error(`Edge is missing source or target field`);dw(e.id)&&(e.id=n?.(i)),r.set(e.id,e)}return r}function ww(e,t,n,r=2){e.forEachNode(e=>{dw(e.x)&&(e.x=Math.random()*t),dw(e.y)&&(e.y=Math.random()*n),r===3&&dw(e.z)&&(e.z=Math.random()*Math.min(t,n))})}var Tw=class{constructor(e,t={}){this.graph=new yw(e,t)}export(){return this.graph.data()}replace(e){this.graph.replace(e)}forEachNode(e){this.graph.forEachNode(e)}forEachEdge(e){this.graph.forEachEdge((t,n)=>{t.sourceNode=this.graph.node(t.source),t.targetNode=this.graph.node(t.target),e(t,n)})}destroy(){this.graph.destroy()}},Ew=Symbol(`Comlink.proxy`),Dw=Symbol(`Comlink.endpoint`),Ow=Symbol(`Comlink.releaseProxy`),kw=Symbol(`Comlink.finalizer`),Aw=Symbol(`Comlink.thrown`),jw=e=>typeof e==`object`&&!!e||typeof e==`function`,Mw=new Map([[`proxy`,{canHandle:e=>jw(e)&&e[Ew],serialize(e){let{port1:t,port2:n}=new MessageChannel;return Pw(e,t),[n,[n]]},deserialize(e){return e.start(),Lw(e)}}],[`throw`,{canHandle:e=>jw(e)&&Aw in e,serialize({value:e}){let t;return t=e instanceof Error?{isError:!0,value:{message:e.message,name:e.name,stack:e.stack}}:{isError:!1,value:e},[t,[]]},deserialize(e){throw e.isError?Object.assign(Error(e.value.message),e.value):e.value}}]]);function Nw(e,t){for(let n of e)if(t===n||n===`*`||n instanceof RegExp&&n.test(t))return!0;return!1}function Pw(e,t=globalThis,n=[`*`]){t.addEventListener(`message`,function r(i){if(!i||!i.data)return;if(!Nw(n,i.origin)){console.warn(`Invalid origin '${i.origin}' for comlink proxy`);return}let{id:a,type:o,path:s}=Object.assign({path:[]},i.data),c=(i.data.argumentList||[]).map(Zw),l;try{let t=s.slice(0,-1).reduce((e,t)=>e[t],e),n=s.reduce((e,t)=>e[t],e);switch(o){case`GET`:l=n;break;case`SET`:t[s.slice(-1)[0]]=Zw(i.data.value),l=!0;break;case`APPLY`:l=n.apply(t,c);break;case`CONSTRUCT`:l=Yw(new n(...c));break;case`ENDPOINT`:{let{port1:t,port2:n}=new MessageChannel;Pw(e,n),l=Jw(t,[t])}break;case`RELEASE`:l=void 0;break;default:return}}catch(e){l={value:e,[Aw]:0}}Promise.resolve(l).catch(e=>({value:e,[Aw]:0})).then(n=>{let[i,s]=Xw(n);t.postMessage(Object.assign(Object.assign({},i),{id:a}),s),o===`RELEASE`&&(t.removeEventListener(`message`,r),Iw(t),kw in e&&typeof e[kw]==`function`&&e[kw]())}).catch(e=>{let[n,r]=Xw({value:TypeError(`Unserializable return value`),[Aw]:0});t.postMessage(Object.assign(Object.assign({},n),{id:a}),r)})}),t.start&&t.start()}function Fw(e){return e.constructor.name===`MessagePort`}function Iw(e){Fw(e)&&e.close()}function Lw(e,t){let n=new Map;return e.addEventListener(`message`,function(e){let{data:t}=e;if(!t||!t.id)return;let r=n.get(t.id);if(r)try{r(t)}finally{n.delete(t.id)}}),Ww(e,n,[],t)}function Rw(e){if(e)throw Error(`Proxy has been released and is not useable`)}function zw(e){return Qw(e,new Map,{type:`RELEASE`}).then(()=>{Iw(e)})}var Bw=new WeakMap,Vw=`FinalizationRegistry`in globalThis&&new FinalizationRegistry(e=>{let t=(Bw.get(e)||0)-1;Bw.set(e,t),t===0&&zw(e)});function Hw(e,t){let n=(Bw.get(t)||0)+1;Bw.set(t,n),Vw&&Vw.register(e,t,e)}function Uw(e){Vw&&Vw.unregister(e)}function Ww(e,t,n=[],r=function(){}){let i=!1,a=new Proxy(r,{get(r,o){if(Rw(i),o===Ow)return()=>{Uw(a),zw(e),t.clear(),i=!0};if(o===`then`){if(n.length===0)return{then:()=>a};let r=Qw(e,t,{type:`GET`,path:n.map(e=>e.toString())}).then(Zw);return r.then.bind(r)}return Ww(e,t,[...n,o])},set(r,a,o){Rw(i);let[s,c]=Xw(o);return Qw(e,t,{type:`SET`,path:[...n,a].map(e=>e.toString()),value:s},c).then(Zw)},apply(r,a,o){Rw(i);let s=n[n.length-1];if(s===Dw)return Qw(e,t,{type:`ENDPOINT`}).then(Zw);if(s===`bind`)return Ww(e,t,n.slice(0,-1));let[c,l]=Kw(o);return Qw(e,t,{type:`APPLY`,path:n.map(e=>e.toString()),argumentList:c},l).then(Zw)},construct(r,a){Rw(i);let[o,s]=Kw(a);return Qw(e,t,{type:`CONSTRUCT`,path:n.map(e=>e.toString()),argumentList:o},s).then(Zw)}});return Hw(a,e),a}function Gw(e){return Array.prototype.concat.apply([],e)}function Kw(e){let t=e.map(Xw);return[t.map(e=>e[0]),Gw(t.map(e=>e[1]))]}var qw=new WeakMap;function Jw(e,t){return qw.set(e,t),e}function Yw(e){return Object.assign(e,{[Ew]:!0})}function Xw(e){for(let[t,n]of Mw)if(n.canHandle(e)){let[r,i]=n.serialize(e);return[{type:`HANDLER`,name:t,value:r},i]}return[{type:`RAW`,value:e},qw.get(e)||[]]}function Zw(e){switch(e.type){case`HANDLER`:return Mw.get(e.name).deserialize(e.value);case`RAW`:return e.value}}function Qw(e,t,n,r){return new Promise(i=>{let a=$w();t.set(a,i),e.start&&e.start(),e.postMessage(Object.assign({id:a},n),r)})}function $w(){return[,,,,].fill(0).map(()=>Math.floor(Math.random()*(2**53-1)).toString(16)).join(`-`)}var eT=class{constructor(){this.worker=null,this.workerApi=null}execute(e,t,n){return RC(this,void 0,void 0,function*(){if(this.worker||(yield this.initWorker()),!this.workerApi)throw Error(`Worker API not initialized`);return yield this.workerApi.execute(e,t,n)})}destroy(){this.workerApi&&this.workerApi.destroy(),this.worker&&(this.worker.terminate(),this.worker=null,this.workerApi=null)}initWorker(){return RC(this,void 0,void 0,function*(){let e=this.resolveWorkerPath(),t=e.includes(`/lib/`)||e.endsWith(`.mjs`)?`module`:`classic`;this.worker=new Worker(e,{type:t}),this.workerApi=Lw(this.worker)})}resolveWorkerPath(){let e=(()=>{if(typeof document>`u`)return null;let e=document.currentScript;if(e?.src)return e.src;let t=document.getElementsByTagName(`script`);for(let e=t.length-1;e>=0;e--){let n=t[e].src;if(n&&(n.includes(`index.js`)||n.includes(`index.min.js`)))return n}return null})();if(e){if(e.includes(`index.js`)||e.includes(`index.min.js`)){let t=e.replace(/index(\.min)?\.(m?js)(\?.*)?$/,`worker.js`);if(t!==e)return t}let t=e.replace(/\/runtime\/[^/]+\.(m?js)(\?.*)?$/,`/worker.js`);if(t!==e)return t;let n=e.replace(/\/[^/]+\.(m?js)(\?.*)?$/,`/worker.js`);if(n!==e)return n}return`./worker.js`}},tT=class{constructor(e){this.supervisor=null,this.initialOptions=this.mergeOptions(this.getDefaultOptions(),e)}get options(){return this.runtimeOptions||this.initialOptions}mergeOptions(e,t){return Object.assign({},e,t||{})}execute(e,t){return RC(this,void 0,void 0,function*(){this.runtimeOptions=this.mergeOptions(this.initialOptions,t);let{node:n,edge:r,enableWorker:i}=this.runtimeOptions;this.context=new Tw(e,{node:n,edge:r}),this.model=this.context.graph,i&&typeof Worker<`u`?yield this.layoutInWorker(e,this.runtimeOptions):yield this.layout(this.runtimeOptions)})}layoutInWorker(e,t){var n;return RC(this,void 0,void 0,function*(){try{this.supervisor||=new eT;let r=yield this.supervisor.execute(this.id,e,t);(n=this.context)==null||n.replace(r)}catch(e){console.error(`Layout in worker failed, fallback to main thread layout.`,e),yield this.layout(t)}})}forEachNode(e){this.context.forEachNode(e)}forEachEdge(e){this.context.forEachEdge(e)}destroy(){var e;(e=this.context)==null||e.destroy(),this.model=null,this.context=null,this.supervisor&&=(this.supervisor.destroy(),null)}},nT=class extends tT{};function rT(e){return!!e.tick&&!!e.stop}var iT=class{constructor(e={}){this.options=e,this.nodes=new Map,this.edges=new Map,this.inEdges=new Map,this.outEdges=new Map,this.parentMap=new Map,this.childrenMap=new Map,e.tree&&Array.isArray(e.tree)&&e.tree.length>0&&(typeof e.tree[0]==`string`?e.tree.forEach(e=>{this.parentMap.set(e,new Map),this.childrenMap.set(e,new Map)}):(this.attachTreeStructure(`default`),this.addTree(e.tree))),e.nodes&&e.nodes.forEach(e=>this.addNode(e)),e.edges&&e.edges.forEach(e=>this.addEdge(e))}addNode(e){this.nodes.has(e.id)||(this.nodes.set(e.id,e),this.inEdges.set(e.id,new Set),this.outEdges.set(e.id,new Set))}addNodes(e){e.forEach(e=>this.addNode(e))}getNode(e){return this.nodes.get(e)}hasNode(e){return this.nodes.has(e)}removeNode(e){if(!this.nodes.has(e))return;let t=Array.from(this.inEdges.get(e)||[]),n=Array.from(this.outEdges.get(e)||[]);t.forEach(e=>this.removeEdge(e)),n.forEach(e=>this.removeEdge(e)),this.nodes.delete(e),this.inEdges.delete(e),this.outEdges.delete(e),this.parentMap.forEach(t=>{t.delete(e)}),this.childrenMap.forEach(t=>{t.delete(e)})}getAllNodes(){return Array.from(this.nodes.values())}addEdge(e){if(!this.nodes.has(e.source)||!this.nodes.has(e.target))throw Error(`Cannot add edge ${e.id}: source ${e.source} or target ${e.target} does not exist`);this.edges.set(e.id,e),this.outEdges.get(e.source).add(e.id),this.inEdges.get(e.target).add(e.id)}addEdges(e){e.forEach(e=>this.addEdge(e))}getEdge(e){return this.edges.get(e)}hasEdge(e){return this.edges.has(e)}removeEdge(e){var t,n;let r=this.edges.get(e);r&&(this.edges.delete(e),(t=this.outEdges.get(r.source))==null||t.delete(e),(n=this.inEdges.get(r.target))==null||n.delete(e))}getAllEdges(){return Array.from(this.edges.values())}updateEdgeData(e,t){let n=this.edges.get(e);n&&Object.assign(n.data,t)}updateNodeData(e,t){let n=this.nodes.get(e);n&&Object.assign(n.data,t)}getRelatedEdges(e,t=`both`){let n=[];if(t===`in`||t===`both`){let t=this.inEdges.get(e);t&&t.forEach(e=>{let t=this.edges.get(e);t&&n.push(t)})}if(t===`out`||t===`both`){let t=this.outEdges.get(e);t&&t.forEach(e=>{let t=this.edges.get(e);t&&n.push(t)})}return n}getSuccessors(e){let t=this.outEdges.get(e);if(!t||t.size===0)return[];let n=[];return t.forEach(e=>{let t=this.edges.get(e);if(t){let e=this.nodes.get(t.target);e&&n.push(e)}}),n.length>0?n:[]}getPredecessors(e){let t=this.inEdges.get(e);if(!t||t.size===0)return[];let n=[];return t.forEach(e=>{let t=this.edges.get(e);if(t){let e=this.nodes.get(t.source);e&&n.push(e)}}),n.length>0?n:[]}getNeighbors(e){let t=this.getSuccessors(e)||[],n=this.getPredecessors(e)||[],r=[...t,...n],i=Array.from(new Map(r.map(e=>[e.id,e])).values());return i.length>0?i:[]}attachTreeStructure(e){this.parentMap.has(e)||(this.parentMap.set(e,new Map),this.childrenMap.set(e,new Map))}addTree(e,t){let n=t||(this.options.tree?.[0]??`default`);this.hasTreeStructure(n)||this.attachTreeStructure(n);let r=Array.isArray(e)?e:[e],i=(e,t)=>{this.addNode({id:e.id,data:e.data}),t!==void 0&&this.setParent(e.id,t,n),e.children&&e.children.length>0&&e.children.forEach(t=>{i(t,e.id)})};r.forEach(e=>i(e))}hasTreeStructure(e){return this.parentMap.has(e)}setParent(e,t,n){var r;let i=n||(this.options.tree?.[0]??`default`);this.parentMap.has(i)||this.attachTreeStructure(i);let a=this.parentMap.get(i),o=this.childrenMap.get(i),s=a.get(e);s!==void 0&&((r=o.get(s))==null||r.delete(e)),a.set(e,t),o.has(t)||o.set(t,new Set),o.get(t).add(e)}getParent(e,t){let n=t||(this.options.tree?.[0]??`default`);this.parentMap.has(n)||this.attachTreeStructure(n);let r=this.parentMap.get(n);if(!r)return;let i=r.get(e);return i===void 0?null:this.nodes.get(i)}getChildren(e,t){let n=t||(this.options.tree?.[0]??`default`),r=this.childrenMap.get(n);if(!r)return[];let i=r.get(e);return i?Array.from(i).map(e=>this.nodes.get(e)).filter(e=>e!==void 0):[]}getRoots(e){let t=e||(this.options.tree?.[0]??`default`),n=this.parentMap.get(t),r=[];return this.nodes.forEach(e=>{n&&n.get(e.id)!==void 0||r.push(e)}),r}dfsTree(e,t){let n=[e],r=new Set;for(;n.length>0;){let e=n.pop();if(r.has(e))continue;let i=this.getNode(e);if(i){if(r.add(e),t(i)===!0)continue;let a=this.getChildren(e);for(let e=a.length-1;e>=0;e--)r.has(a[e].id)||n.push(a[e].id)}}}},aT=(e,t)=>{if(e!==`next`&&e!==`prev`)return t},oT=e=>{e.prev.next=e.next,e.next.prev=e.prev,delete e.next,delete e.prev},sT=class{constructor(){let e={};e.prev=e,e.next=e.prev,this.shortcut=e}dequeue(){let e=this.shortcut,t=e.prev;if(t&&t!==e)return oT(t),t}enqueue(e){let t=this.shortcut;e.prev&&e.next&&oT(e),e.next=t.next,t.next.prev=e,t.next=e,e.prev=t}toString(){let e=[],t=this.shortcut,n=t.prev;for(;n!==t;)e.push(JSON.stringify(n,aT)),n=n?.prev;return`[${e.join(`, `)}]`}},cT=class extends sT{},lT=()=>1,uT=(e,t)=>{if(e.getAllNodes().length<=1)return[];let n=pT(e,t||lT);return dT(n.graph,n.buckets,n.zeroIdx).map(t=>e.getRelatedEdges(t.v,`out`).filter(({target:e})=>e===t.w))?.flat()},dT=(e,t,n)=>{let r=[],i=t[t.length-1],a=t[0],o;for(;e.getAllNodes().length;){for(;o=a.dequeue();)fT(e,t,n,o);for(;o=i.dequeue();)fT(e,t,n,o);if(e.getAllNodes().length){for(let i=t.length-2;i>0;--i)if(o=t[i].dequeue(),o){r=r.concat(fT(e,t,n,o,!0));break}}}return r},fT=(e,t,n,r,i)=>{var a,o;let s=[];return e.hasNode(r.v)&&((a=e.getRelatedEdges(r.v,`in`))==null||a.forEach(r=>{let a=r.data.weight,o=e.getNode(r.source);i&&s.push({v:r.source,w:r.target,in:0,out:0}),o.data.out===void 0&&(o.data.out=0),o.data.out-=a,mT(t,n,Object.assign({v:o.id},o.data))}),(o=e.getRelatedEdges(r.v,`out`))==null||o.forEach(r=>{let i=r.data.weight,a=r.target,o=e.getNode(a);o.data.in===void 0&&(o.data.in=0),o.data.in-=i,mT(t,n,Object.assign({v:o.id},o.data))}),e.removeNode(r.v)),i?s:void 0},pT=(e,t)=>{let n=new iT,r=0,i=0;e.getAllNodes().forEach(e=>{n.addNode({id:e.id,data:{v:e.id,in:0,out:0}})}),e.getAllEdges().forEach(e=>{let a=n.getRelatedEdges(e.source,`out`).find(t=>t.target===e.target),o=t?.(e)||1;a?n.updateEdgeData(a?.id,Object.assign(Object.assign({},a.data),{weight:a.data.weight+o})):n.addEdge({id:e.id,source:e.source,target:e.target,data:{weight:o}}),i=Math.max(i,n.getNode(e.source).data.out+=o),r=Math.max(r,n.getNode(e.target).data.in+=o)});let a=[],o=i+r+3;for(let e=0;e<o;e++)a.push(new cT);let s=r+1;return n.getAllNodes().forEach(e=>{mT(a,s,Object.assign({v:e.id},n.getNode(e.id).data))}),{buckets:a,zeroIdx:s,graph:n}},mT=(e,t,n)=>{n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)},hT=(e,t)=>{uT(e,(e=>e=>e.data.weight||1)())?.forEach(t=>{let n=t.data;e.removeEdge(t.id),n.forwardName=t.data.name,n.reversed=!0,e.addEdge({id:t.id,source:t.target,target:t.source,data:Object.assign({},n)})})},gT=e=>{e.getAllEdges().forEach(t=>{let n=t.data;if(n.reversed){e.removeEdge(t.id);let r=n.forwardName;delete n.reversed,delete n.forwardName,e.addEdge({id:t.id,source:t.target,target:t.source,data:Object.assign(Object.assign({},n),{forwardName:r})})}})},_T=(e,t)=>Number(e)-Number(t),vT=(e,t,n,r)=>{let i;do i=`${r}${Math.random()}`;while(e.hasNode(i));return n.dummy=t,e.addNode({id:i,data:n}),i},yT=e=>{let t=new iT;return e.getAllNodes().forEach(e=>{t.addNode(Object.assign({},e))}),e.getAllEdges().forEach(e=>{let n=t.getRelatedEdges(e.source,`out`).find(t=>t.target===e.target);n?t.updateEdgeData(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},bT=e=>{let t=new iT;return e.getAllNodes().forEach(n=>{e.getChildren(n.id).length||t.addNode(Object.assign({},n))}),e.getAllEdges().forEach(e=>{t.addEdge(e)}),t},xT=(e,t)=>e?.reduce((e,n,r)=>(e[n]=t[r],e),{}),ST=(e,t)=>{let n=Number(e.x),r=Number(e.y),i=Number(t.x)-n,a=Number(t.y)-r,o=Number(e.width)/2,s=Number(e.height)/2;if(!i&&!a)return{x:0,y:0};let c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,l=s):(i<0&&(o=-o),c=o,l=o*a/i),{x:n+c,y:r+l}},CT=e=>{let t=[],n=DT(e)+1;for(let e=0;e<n;e++)t.push([]);e.getAllNodes().forEach(e=>{let n=e.data.rank;n!==void 0&&t[n]&&t[n].push(e.id)});for(let r=0;r<n;r++)t[r]=t[r].sort((t,n)=>_T(e.getNode(t).data.order,e.getNode(n).data.order));return t},wT=e=>{let t=e.getAllNodes().filter(e=>e.data.rank!==void 0).map(e=>e.data.rank),n=Math.min(...t);e.getAllNodes().forEach(e=>{e.data.hasOwnProperty(`rank`)&&n!==1/0&&(e.data.rank-=n)})},TT=(e,t=0)=>{let n=e.getAllNodes(),r=n.filter(e=>e.data.rank!==void 0).map(e=>e.data.rank),i=Math.min(...r),a=[];n.forEach(e=>{let t=(e.data.rank||0)-i;a[t]||(a[t]=[]),a[t].push(e.id)});let o=0;for(let n=0;n<a.length;n++){let r=a[n];r===void 0?n%t!==0&&--o:o&&r?.forEach(t=>{let n=e.getNode(t);n&&(n.data.rank=n.data.rank||0,n.data.rank+=o)})}},ET=(e,t,n,r)=>{let i={width:0,height:0};return cw(n)&&cw(r)&&(i.rank=n,i.order=r),vT(e,`border`,i,t)},DT=e=>{let t;return e.getAllNodes().forEach(e=>{let n=e.data.rank;n!==void 0&&(t===void 0||n>t)&&(t=n)}),t||=0,t},OT=(e,t)=>{let n={lhs:[],rhs:[]};return e?.forEach(e=>{t(e)?n.lhs.push(e):n.rhs.push(e)}),n},kT=(e,t)=>e.reduce((e,n)=>t(e)>t(n)?n:e),AT=(e,t,n,r,i,a)=>{if(!r.includes(t.id)){r.push(t.id),n||a.push(t.id);let o=i(t.id);o&&o.forEach(t=>AT(e,t,n,r,i,a)),n&&a.push(t.id)}},jT=(e,t,n,r)=>{let i=Array.isArray(t)?t:[t],a=t=>e.getNeighbors(t),o=[],s=[];return i.forEach(t=>{if(e.hasNode(t.id))AT(e,t,n===`post`,s,a,o);else throw Error(`Graph does not have node: ${t}`)}),o},MT=e=>{let t=n=>{let r=e.getChildren(n),i=e.getNode(n);if(r?.length&&r.forEach(e=>t(e.id)),i.data.hasOwnProperty(`minRank`)){i.data.borderLeft=[],i.data.borderRight=[];for(let t=i.data.minRank,r=i.data.maxRank+1;t<r;t+=1)NT(e,`borderLeft`,`_bl`,n,i,t),NT(e,`borderRight`,`_br`,n,i,t)}};e.getRoots().forEach(e=>t(e.id))},NT=(e,t,n,r,i,a)=>{let o={rank:a,borderType:t,width:0,height:0},s=a-i.data.minRank,c=i.data[t][s-1],l=vT(e,`border`,o,n);i.data[t][s]=l,e.setParent(l,r),c&&e.addEdge({id:`e${Math.random()}`,source:c,target:l,data:{weight:1}})},PT=(e,t)=>{let n=t.toLowerCase();(n===`lr`||n===`rl`)&&IT(e)},FT=(e,t)=>{let n=t.toLowerCase();(n===`bt`||n===`rl`)&&RT(e),(n===`lr`||n===`rl`)&&(BT(e),IT(e))},IT=e=>{e.getAllNodes().forEach(e=>{LT(e)}),e.getAllEdges().forEach(e=>{LT(e)})},LT=e=>{let t=e.data.width;e.data.width=e.data.height,e.data.height=t},RT=e=>{e.getAllNodes().forEach(e=>{zT(e.data)}),e.getAllEdges().forEach(e=>{var t;(t=e.data.points)==null||t.forEach(e=>zT(e)),e.data.hasOwnProperty(`y`)&&zT(e.data)})},zT=e=>{e?.y&&(e.y=-e.y)},BT=e=>{e.getAllNodes().forEach(e=>{VT(e.data)}),e.getAllEdges().forEach(e=>{var t;(t=e.data.points)==null||t.forEach(e=>VT(e)),e.data.hasOwnProperty(`x`)&&VT(e.data)})},VT=e=>{let t=e.x;e.x=e.y,e.y=t},HT=e=>{let t=vT(e,`root`,{},`_root`),n=WT(e),r=Math.max(...Object.values(n));Math.abs(r)===1/0&&(r=1);let i=r-1,a=2*i+1;e.getAllEdges().forEach(e=>{e.data.minlen*=a});let o=GT(e)+1;return e.getRoots().forEach(r=>{UT(e,t,a,o,i,n,r.id)}),{nestingRoot:t,nodeRankFactor:a}},UT=(e,t,n,r,i,a,o)=>{let s=e.getChildren(o);if(!s?.length){o!==t&&e.addEdge({id:`e${Math.random()}`,source:t,target:o,data:{weight:0,minlen:n}});return}let c=ET(e,`_bt`),l=ET(e,`_bb`),u=e.getNode(o);e.setParent(c,o),u.data.borderTop=c,e.setParent(l,o),u.data.borderBottom=l,s?.forEach(s=>{UT(e,t,n,r,i,a,s.id);let u=s.data.borderTop?s.data.borderTop:s.id,d=s.data.borderBottom?s.data.borderBottom:s.id,f=s.data.borderTop?r:2*r,p=u===d?i-a[o]+1:1;e.addEdge({id:`e${Math.random()}`,source:c,target:u,data:{minlen:p,weight:f,nestingEdge:!0}}),e.addEdge({id:`e${Math.random()}`,source:d,target:l,data:{minlen:p,weight:f,nestingEdge:!0}})}),e.getParent(o)||e.addEdge({id:`e${Math.random()}`,source:t,target:c,data:{weight:0,minlen:i+a[o]}})},WT=e=>{let t={},n=(r,i)=>{e.getChildren(r)?.forEach(e=>n(e.id,i+1)),t[r]=i};return e.getRoots().forEach(e=>n(e.id,1)),t},GT=e=>{let t=0;return e.getAllEdges().forEach(e=>{t+=e.data.weight}),t},KT=(e,t)=>{t&&e.removeNode(t),e.getAllEdges().forEach(t=>{t.data.nestingEdge&&e.removeEdge(t.id)})},qT=`edge`,JT=`edge-label`,YT=(e,t)=>{e.getAllEdges().forEach(n=>XT(e,n,t))},XT=(e,t,n)=>{let r=t.source,i=e.getNode(r).data.rank,a=t.target,o=e.getNode(a).data.rank,s=t.data.labelRank;if(o===i+1)return;e.removeEdge(t.id);let c,l,u;for(u=0,++i;i<o;++u,++i)t.data.points=[],l={originalEdge:t,width:0,height:0,rank:i},c=vT(e,qT,l,`_d`),i===s&&(l.width=t.data.width,l.height=t.data.height,l.dummy=JT,l.labelpos=t.data.labelpos),e.addEdge({id:`e${Math.random()}`,source:r,target:c,data:{weight:t.data.weight}}),u===0&&n.push(c),r=c;e.addEdge({id:`e${Math.random()}`,source:r,target:a,data:{weight:t.data.weight}})},ZT=(e,t)=>{t.forEach(t=>{let n=e.getNode(t),{data:r}=n,i=r.originalEdge,a;i&&e.addEdge(i);let o=t;for(;n.data.dummy;)a=e.getSuccessors(o)[0],e.removeNode(o),i.data.points.push({x:n.data.x,y:n.data.y}),n.data.dummy===JT&&(i.data.x=n.data.x,i.data.y=n.data.y,i.data.width=n.data.width,i.data.height=n.data.height),o=a.id,n=e.getNode(o)})},QT=(e,t,n)=>{let r={},i;n?.forEach(n=>{let a=e.getParent(n),o,s;for(;a;){if(o=e.getParent(a.id),o?(s=r[o.id],r[o.id]=a.id):(s=i,i=a.id),s&&s!==a.id){t.hasNode(s)||t.addNode({id:s,data:{}}),t.hasNode(a.id)||t.addNode({id:a.id,data:{}}),t.hasEdge(`e${s}-${a.id}`)||t.addEdge({id:`e${s}-${a.id}`,source:s,target:a.id,data:{}});return}a=o}})},$T=(e,t,n)=>{let r=eE(e),i=new iT;return i.addNode({id:r,data:{}}),e.getAllNodes().forEach(a=>{let o=e.getParent(a.id);(a.data.rank===t||a.data.minRank<=t&&t<=a.data.maxRank)&&(i.hasNode(a.id)||i.addNode(Object.assign({},a)),o?.id&&!i.hasNode(o?.id)&&i.addNode(Object.assign({},o)),i.setParent(a.id,o?.id||r),e.getRelatedEdges(a.id,n).forEach(t=>{let n=t.source===a.id?t.target:t.source;i.hasNode(n)||i.addNode(Object.assign({},e.getNode(n)));let r=i.getRelatedEdges(n,`out`).find(({target:e})=>e===a.id),o=r===void 0?0:r.data.weight;r?i.updateEdgeData(r.id,Object.assign(Object.assign({},r.data),{weight:t.data.weight+o})):i.addEdge({id:t.id,source:n,target:a.id,data:{weight:t.data.weight+o}})}),a.data.hasOwnProperty(`minRank`)&&i.updateNodeData(a.id,Object.assign(Object.assign({},a.data),{borderLeft:[a.data.borderLeft?.[t-a.data.minRank]],borderRight:[a.data.borderRight?.[t-a.data.minRank]]})))}),i},eE=e=>{let t;for(;e.hasNode(t=`_root${Math.random()}`););return t},tE=(e,t,n)=>{let r=xT(n,n.map((e,t)=>t)),i=t.map(t=>e.getRelatedEdges(t,`out`).map(e=>({pos:r[e.target]||0,weight:e.data.weight}))?.sort((e,t)=>e.pos-t.pos)).flat().filter(e=>e!==void 0),a=1;for(;a<n.length;)a<<=1;let o=2*a-1;--a;let s=Array(o).fill(0,0,o),c=0;return i?.forEach(e=>{if(e){let t=e.pos+a;s[t]+=e.weight;let n=0;for(;t>0;)t%2&&(n+=s[t+1]),t=t-1>>1,s[t]+=e.weight;c+=e.weight*n}}),c},nE=(e,t)=>{let n=0;for(let r=1;r<t?.length;r+=1)n+=tE(e,t[r-1],t[r]);return n},rE=e=>{let t={},n=e.getAllNodes(),r=n.map(e=>e.data.rank??-1/0),i=Math.max(...r),a=[];for(let e=0;e<i+1;e++)a.push([]);let o=n.sort((t,n)=>e.getNode(t.id).data.rank-e.getNode(n.id).data.rank);return o.filter(t=>e.getNode(t.id).data.fixorder!==void 0).sort((t,n)=>e.getNode(t.id).data.fixorder-e.getNode(n.id).data.fixorder)?.forEach(n=>{isNaN(e.getNode(n.id).data.rank)||a[e.getNode(n.id).data.rank].push(n.id),t[n.id]=!0}),o?.forEach(n=>e.dfsTree(n.id,e=>{if(t.hasOwnProperty(e.id))return!0;t[e.id]=!0,isNaN(e.data.rank)||a[e.data.rank].push(e.id)})),a},iE=(e,t)=>t.map(t=>{let n=e.getRelatedEdges(t,`in`);if(!n?.length)return{v:t};let r={sum:0,weight:0};return n?.forEach(t=>{let n=e.getNode(t.source);r.sum+=t.data.weight*n.data.order,r.weight+=t.data.weight}),{v:t,barycenter:r.sum/r.weight,weight:r.weight}}),aE=(e,t)=>{var n,r;let i={};return e?.forEach((e,t)=>{i[e.v]={i:t,indegree:0,in:[],out:[],vs:[e.v]};let n=i[e.v];e.barycenter!==void 0&&(n.barycenter=e.barycenter,n.weight=e.weight)}),(n=t.getAllEdges())==null||n.forEach(e=>{let t=i[e.source],n=i[e.target];t!==void 0&&n!==void 0&&(n.indegree++,t.out.push(i[e.target]))}),oE((r=Object.values(i)).filter?.call(r,e=>!e.indegree))},oE=e=>{var t,n;let r=[],i=e=>t=>{t.merged||(t.barycenter===void 0||e.barycenter===void 0||t.barycenter>=e.barycenter)&&sE(e,t)},a=t=>n=>{n.in.push(t),--n.indegree===0&&e.push(n)};for(;e?.length;){let o=e.pop();r.push(o),(t=o.in.reverse())==null||t.forEach(e=>i(o)(e)),(n=o.out)==null||n.forEach(e=>a(o)(e))}let o=r.filter(e=>!e.merged),s=[`vs`,`i`,`barycenter`,`weight`];return o.map(e=>{let t={};return s?.forEach(n=>{e[n]!==void 0&&(t[n]=e[n])}),t})},sE=(e,t)=>{let n=0,r=0;e.weight&&(n+=e.barycenter*e.weight,r+=e.weight),t.weight&&(n+=t.barycenter*t.weight,r+=t.weight),e.vs=t.vs?.concat(e.vs),e.barycenter=n/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0},cE=(e,t,n,r)=>{let i=OT(e,e=>{let t=e.hasOwnProperty(`fixorder`)&&!isNaN(e.fixorder);return r?!t&&e.hasOwnProperty(`barycenter`):t||e.hasOwnProperty(`barycenter`)}),a=i.lhs,o=i.rhs.sort((e,t)=>-e.i- -t.i),s=[],c=0,l=0,u=0;a?.sort(uE(!!t,!!n)),u=lE(s,o,u),a?.forEach(e=>{u+=e.vs?.length,s.push(e.vs),c+=e.barycenter*e.weight,l+=e.weight,u=lE(s,o,u)});let d={vs:s.flat()};return l&&(d.barycenter=c/l,d.weight=l),d},lE=(e,t,n)=>{let r=n,i;for(;t.length&&(i=t[t.length-1]).i<=r;)t.pop(),e?.push(i.vs),r++;return r},uE=(e,t)=>(n,r)=>{if(n.fixorder!==void 0&&r.fixorder!==void 0)return n.fixorder-r.fixorder;if(n.barycenter<r.barycenter)return-1;if(n.barycenter>r.barycenter)return 1;if(t&&n.order!==void 0&&r.order!==void 0){if(n.order<r.order)return-1;if(n.order>r.order)return 1}return e?r.i-n.i:n.i-r.i},dE=(e,t,n,r,i,a)=>{var o;let s=e.getChildren(t).map(e=>e.id),c=e.getNode(t),l=c?c.data.borderLeft:void 0,u=c?c.data.borderRight:void 0,d={};l&&(s=s?.filter(e=>e!==l&&e!==u));let f=iE(e,s||[]);f?.forEach(t=>{if(e.getChildren(t.v)?.length){let i=dE(e,t.v,n,r,a);d[t.v]=i,i.hasOwnProperty(`barycenter`)&&pE(t,i)}});let p=aE(f,n);fE(p,d),(o=p.filter(e=>e.vs.length>0))==null||o.forEach(t=>{let n=e.getNode(t.vs[0]);n&&(t.fixorder=n.data.fixorder,t.order=n.data.order)});let m=cE(p,r,i,a);if(l&&(m.vs=[l,m.vs,u].flat(),e.getPredecessors(l)?.length)){let t=e.getNode(e.getPredecessors(l)?.[0].id||``),n=e.getNode(e.getPredecessors(u)?.[0].id||``);m.hasOwnProperty(`barycenter`)||(m.barycenter=0,m.weight=0),m.barycenter=(m.barycenter*m.weight+t.data.order+n.data.order)/(m.weight+2),m.weight+=2}return m},fE=(e,t)=>{e?.forEach(e=>{e.vs=(e.vs?.map(e=>t[e]?t[e].vs:e)).flat()})},pE=(e,t)=>{e.barycenter===void 0?(e.barycenter=t.barycenter,e.weight=t.weight):(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight)};function mE(e){return Array.isArray(e)}var hE=function(e){if(typeof e!=`object`||!e)return e;var t;if(mE(e)){t=[];for(var n=0,r=e.length;n<r;n++)typeof e[n]==`object`&&e[n]!=null?t[n]=hE(e[n]):t[n]=e[n]}else for(var i in t={},e)typeof e[i]==`object`&&e[i]!=null?t[i]=hE(e[i]):t[i]=e[i];return t},gE=(e,t)=>{let n=DT(e),r=[],i=[];for(let e=1;e<n+1;e++)r.push(e);for(let e=n-1;e>-1;e--)i.push(e);let a=_E(e,r,`in`),o=_E(e,i,`out`),s=rE(e);yE(e,s);let c=1/0,l;for(let n=0,r=0;r<4;++n,++r){vE(n%2?a:o,n%4>=2,!1,t),s=CT(e);let i=nE(e,s);i<c&&(r=0,l=hE(s),c=i)}s=rE(e),yE(e,s);for(let n=0,r=0;r<4;++n,++r){vE(n%2?a:o,n%4>=2,!0,t),s=CT(e);let i=nE(e,s);i<c&&(r=0,l=hE(s),c=i)}yE(e,l)},_E=(e,t,n)=>t.map(t=>$T(e,t,n)),vE=(e,t,n,r)=>{let i=new iT;e?.forEach(e=>{let a=e.getRoots()[0].id,o=dE(e,a,i,t,n,r);for(let t=0;t<o.vs?.length;t++){let n=e.getNode(o.vs[t]);n&&(n.data.order=t)}QT(e,i,o.vs)})},yE=(e,t)=>{t?.forEach(t=>{t?.forEach((t,n)=>{e.getNode(t).data.order=n})})},bE=(e,t)=>{let n=e.getAllNodes().filter(t=>!e.getChildren(t.id)?.length).map(e=>e.data.rank),r=Math.max(...n),i=[];for(let e=0;e<r+1;e++)i[e]=[];t?.forEach(t=>{let n=e.getNode(t);!n||n.data.dummy||isNaN(n.data.rank)||(n.data.fixorder=i[n.data.rank].length,i[n.data.rank].push(t))})},xE=e=>{let t={},n=0,r=i=>{let a=n;e.getChildren(i).forEach(e=>r(e.id)),t[i]={low:a,lim:n++}};return e.getRoots().forEach(e=>r(e.id)),t},SE=(e,t,n,r)=>{let i=[],a=[],o=Math.min(t[n].low,t[r].low),s=Math.max(t[n].lim,t[r].lim),c,l;c=n;do c=e.getParent(c)?.id,i.push(c);while(c&&(t[c].low>o||s>t[c].lim));for(l=c,c=r;c&&c!==l;)a.push(c),c=e.getParent(c)?.id;return{lca:l,path:i.concat(a.reverse())}},CE=(e,t)=>{let n=xE(e);t.forEach(t=>{let r=t,i=e.getNode(r),a=i.data.originalEdge;if(!a)return;let o=SE(e,n,a.source,a.target),s=o.path,c=o.lca,l=0,u=s[l],d=!0;for(;r!==a.target;){if(i=e.getNode(r),d){for(;u!==c&&e.getNode(u)?.data.maxRank<i.data.rank;)l++,u=s[l];u===c&&(d=!1)}if(!d){for(;l<s.length-1&&e.getNode(s[l+1])?.data.minRank<=i.data.rank;)l++;u=s[l]}e.hasNode(u)&&e.setParent(r,u),r=e.getSuccessors(r)[0].id}})},wE=(e,t)=>{let n={};return t?.length&&t.reduce((t,r)=>{let i=0,a=0,o=t.length,s=r?.[r?.length-1];return r?.forEach((t,c)=>{var l;let u=EE(e,t),d=u?e.getNode(u.id).data.order:o;(u||t===s)&&((l=r.slice(a,c+1))==null||l.forEach(t=>{var r;(r=e.getPredecessors(t))==null||r.forEach(r=>{let a=e.getNode(r.id),o=a.data.order;(o<i||d<o)&&!(a.data.dummy&&e.getNode(t)?.data.dummy)&&DE(n,r.id,t)})}),a=c+1,i=d)}),r}),n},TE=(e,t)=>{let n={};function r(t,r,i,a,o){var s;let c;for(let l=r;l<i;l++)c=t[l],e.getNode(c)?.data.dummy&&((s=e.getPredecessors(c))==null||s.forEach(t=>{let r=e.getNode(t.id);r.data.dummy&&(r.data.order<a||r.data.order>o)&&DE(n,t.id,c)}))}function i(e){return JSON.stringify(e.slice(1))}function a(e,t){let n=i(e);t.get(n)||(r(...e),t.set(n,!0))}return t?.length&&t.reduce((t,n)=>{let r=-1,i,o=0,s=new Map;return n?.forEach((c,l)=>{if(e.getNode(c)?.data.dummy===`border`){let t=e.getPredecessors(c)||[];t.length&&(i=e.getNode(t[0].id).data.order,a([n,o,l,r,i],s),o=l,r=i)}a([n,o,n.length,i,t.length],s)}),n}),n},EE=(e,t)=>{if(e.getNode(t)?.data.dummy)return e.getPredecessors(t)?.find(t=>e.getNode(t.id).data.dummy)},DE=(e,t,n)=>{let r=t,i=n;if(r>i){let e=r;r=i,i=e}let a=e[r];a||(e[r]=a={}),a[i]=!0},OE=(e,t,n)=>{let r=t,i=n;if(r>i){let e=t;r=i,i=e}return!!e[r]},kE=(e,t,n,r)=>{let i={},a={},o={};return t?.forEach(e=>{e?.forEach((e,t)=>{i[e]=e,a[e]=e,o[e]=t})}),t?.forEach(e=>{let t=-1;e?.forEach(e=>{let s=r(e).map(e=>e.id);if(s.length){s=s.sort((e,t)=>o[e]-o[t]);let r=(s.length-1)/2;for(let c=Math.floor(r),l=Math.ceil(r);c<=l;++c){let r=s[c];a[e]===e&&t<o[r]&&!OE(n,e,r)&&(a[r]=e,a[e]=i[e]=i[r],t=o[r])}}})}),{root:i,align:a}},AE=(e,t,n,r,i,a,o)=>{var s;let c={},l=jE(e,t,n,i,a,o),u=o?`borderLeft`:`borderRight`,d=(e,t)=>{let n=l.getAllNodes(),r=n.pop(),i={};for(;r;)i[r.id]?e(r.id):(i[r.id]=!0,n.push(r),n=n.concat(t(r.id))),r=n.pop()};return d(e=>{c[e]=(l.getRelatedEdges(e,`in`)||[]).reduce((e,t)=>Math.max(e,(c[t.source]||0)+t.data.weight),0)},l.getPredecessors.bind(l)),d(t=>{let n=(l.getRelatedEdges(t,`out`)||[]).reduce((e,t)=>Math.min(e,(c[t.target]||0)-t.data.weight),1/0),r=e.getNode(t);n!==1/0&&r.data.borderType!==u&&(c[t]=Math.max(c[t],n))},l.getSuccessors.bind(l)),(s=Object.values(r))==null||s.forEach(e=>{c[e]=c[n[e]]}),c},jE=(e,t,n,r,i,a)=>{let o=new iT,s=FE(r,i,a);return t?.forEach(t=>{let r;t?.forEach(t=>{let i=n[t];if(o.hasNode(i)||o.addNode({id:i,data:{}}),r){let a=n[r],c=o.getRelatedEdges(a,`out`).find(e=>e.target===i);c?o.updateEdgeData(c.id,Object.assign(Object.assign({},c.data),{weight:Math.max(s(e,t,r),c.data.weight||0)})):o.addEdge({id:`e${Math.random()}`,source:a,target:i,data:{weight:Math.max(s(e,t,r),0)}})}r=t})}),o},ME=(e,t)=>kT(Object.values(t),t=>{var n;let r=-1/0,i=1/0;return(n=Object.keys(t))==null||n.forEach(n=>{let a=t[n],o=IE(e,n)/2;r=Math.max(a+o,r),i=Math.min(a-o,i)}),r-i});function NE(e,t){let n=Object.values(t),r=Math.min(...n),i=Math.max(...n);[`u`,`d`].forEach(n=>{[`l`,`r`].forEach(a=>{let o=n+a,s=e[o],c;if(s===t)return;let l=Object.values(s);c=a===`l`?r-Math.min(...l):i-Math.max(...l),c&&(e[o]={},Object.keys(s).forEach(t=>{e[o][t]=s[t]+c}))})})}var PE=(e,t)=>{let n={};return Object.keys(e.ul).forEach(r=>{if(t)n[r]=e[t.toLowerCase()][r];else{let t=Object.values(e).map(e=>e[r]);n[r]=(t[0]+t[1])/2}}),n},FE=(e,t,n)=>(r,i,a)=>{let o=r.getNode(i),s=r.getNode(a),c=0,l=0;if(c+=o.data.width/2,o.data.hasOwnProperty(`labelpos`))switch((o.data.labelpos||``).toLowerCase()){case`l`:l=-o.data.width/2;break;case`r`:l=o.data.width/2;break}if(l&&(c+=n?l:-l),l=0,c+=(o.data.dummy?t:e)/2,c+=(s.data.dummy?t:e)/2,c+=s.data.width/2,s.data.labelpos)switch((s.data.labelpos||``).toLowerCase()){case`l`:l=s.data.width/2;break;case`r`:l=-s.data.width/2;break}return l&&(c+=n?l:-l),l=0,c},IE=(e,t)=>e.getNode(t).data.width||0,LE=(e,t)=>{let{ranksep:n=0}=t||{},r=CT(e),i=0;r?.forEach(t=>{let r=t.map(t=>e.getNode(t).data.height),a=Math.max(...r,0);t?.forEach(t=>{e.getNode(t).data.y=i+a/2}),i+=a+n})},RE=(e,t)=>{let{align:n,nodesep:r=0,edgesep:i=0}=t||{},a=CT(e),o=Object.assign(wE(e,a),TE(e,a)),s={},c=[];[`u`,`d`].forEach(t=>{c=t===`u`?a:Object.values(a).reverse(),[`l`,`r`].forEach(n=>{n===`r`&&(c=c.map(e=>Object.values(e).reverse()));let a=(t===`u`?e.getPredecessors:e.getSuccessors).bind(e),l=kE(e,c,o,a),u=AE(e,c,l.root,l.align,r,i,n===`r`);n===`r`&&Object.keys(u).forEach(e=>u[e]=-u[e]),s[t+n]=u})});let l=ME(e,s);return l&&NE(s,l),PE(s,n)},zE=(e,t)=>{var n;let r=bT(e);LE(r,t);let i=RE(r,t);(n=Object.keys(i))==null||n.forEach(e=>{r.getNode(e).data.x=i[e]})},BE=e=>{let t={},n=r=>{var i;let a=e.getNode(r);if(!a)return 0;if(t[r])return a.data.rank;t[r]=!0;let o;return(i=e.getRelatedEdges(r,`out`))==null||i.forEach(e=>{let t=n(e.target)-e.data.minlen;t&&(o===void 0||t<o)&&(o=t)}),o||=0,a.data.rank=o,o};e.getAllNodes().filter(t=>e.getRelatedEdges(t.id,`in`).length===0).forEach(e=>n(e.id))},VE=e=>{let t={},n,r=i=>{var a;let o=e.getNode(i);if(!o)return 0;if(t[i])return o.data.rank;t[i]=!0;let s;return(a=e.getRelatedEdges(i,`out`))==null||a.forEach(e=>{let t=r(e.target)-e.data.minlen;t&&(s===void 0||t<s)&&(s=t)}),s||=0,(n===void 0||s<n)&&(n=s),o.data.rank=s,s};e.getAllNodes().filter(t=>e.getRelatedEdges(t.id,`in`).length===0).forEach(e=>{e&&r(e.id)}),n===void 0&&(n=0);let i={},a=(t,n)=>{var r;let o=e.getNode(t),s=isNaN(o.data.layer)?n:o.data.layer;(o.data.rank===void 0||o.data.rank<s)&&(o.data.rank=s),!i[t]&&(i[t]=!0,(r=e.getRelatedEdges(t,`out`))==null||r.forEach(e=>{a(e.target,s+e.data.minlen)}))};e.getAllNodes().forEach(e=>{let t=e.data;t&&(isNaN(t.layer)?t.rank-=n:a(e.id,t.layer))})},HE=(e,t)=>e.getNode(t.target).data.rank-e.getNode(t.source).data.rank-t.data.minlen,UE=e=>{let t=new iT({tree:[]}),n=e.getAllNodes()[0],r=e.getAllNodes().length;t.addNode(n);let i,a;for(;WE(t,e)<r;)i=qE(t,e),a=t.hasNode(i.source)?HE(e,i):-HE(e,i),JE(t,e,a);return t},WE=(e,t)=>{let n=r=>{t.getRelatedEdges(r,`both`).forEach(i=>{let a=i.source,o=r===a?i.target:a;!e.hasNode(o)&&!HE(t,i)&&(e.addNode({id:o,data:{}}),e.addEdge({id:i.id,source:r,target:o,data:{}}),n(o))})};return e.getAllNodes().forEach(e=>n(e.id)),e.getAllNodes().length},GE=e=>{let t=new iT({tree:[]}),n=e.getAllNodes()[0],r=e.getAllNodes().length;t.addNode(n);let i,a;for(;KE(t,e)<r;)i=qE(t,e),a=t.hasNode(i.source)?HE(e,i):-HE(e,i),JE(t,e,a);return t},KE=(e,t)=>{let n=r=>{var i;(i=t.getRelatedEdges(r,`both`))==null||i.forEach(i=>{let a=i.source,o=r===a?i.target:a;!e.hasNode(o)&&(t.getNode(o).data.layer!==void 0||!HE(t,i))&&(e.addNode({id:o,data:{}}),e.addEdge({id:i.id,source:r,target:o,data:{}}),n(o))})};return e.getAllNodes().forEach(e=>n(e.id)),e.getAllNodes().length},qE=(e,t)=>kT(t.getAllEdges(),n=>e.hasNode(n.source)===e.hasNode(n.target)?1/0:HE(t,n)),JE=(e,t,n)=>{e.getAllNodes().forEach(e=>{let r=t.getNode(e.id);r.data.rank||(r.data.rank=0),r.data.rank+=n})},YE=e=>{let t=yT(e);BE(t);let n=UE(t);$E(n),XE(n,t);let r,i;for(;r=tD(n);)i=nD(n,t,r),rD(n,t,r,i)},XE=(e,t)=>{let n=jT(e,e.getAllNodes(),`post`);n=n.slice(0,n?.length-1),n.forEach(n=>{ZE(e,t,n)})},ZE=(e,t,n)=>{let r=e.getNode(n).data.parent,i=e.getRelatedEdges(n,`both`).find(e=>e.target===r||e.source===r);i.data.cutvalue=QE(e,t,n)},QE=(e,t,n)=>{let r=e.getNode(n).data.parent,i=!0,a=t.getRelatedEdges(n,`out`).find(e=>e.target===r),o=0;return a||=(i=!1,t.getRelatedEdges(r,`out`).find(e=>e.target===n)),o=a.data.weight,t.getRelatedEdges(n,`both`).forEach(t=>{let a=t.source===n,s=a?t.target:t.source;if(s!==r){let r=a===i,c=t.data.weight;if(o+=r?c:-c,aD(e,n,s)){let t=e.getRelatedEdges(n,`both`).find(e=>e.source===s||e.target===s).data.cutvalue;o+=r?-t:t}}}),o},$E=(e,t=e.getAllNodes()[0].id)=>{eD(e,{},1,t)},eD=(e,t,n,r,i)=>{var a;let o=n,s=n,c=e.getNode(r);return t[r]=!0,(a=e.getNeighbors(r))==null||a.forEach(n=>{t[n.id]||(s=eD(e,t,s,n.id,r))}),c.data.low=o,c.data.lim=s++,i?c.data.parent=i:delete c.data.parent,s},tD=e=>e.getAllEdges().find(e=>e.data.cutvalue<0),nD=(e,t,n)=>{let r=n.source,i=n.target;t.getRelatedEdges(r,`out`).find(e=>e.target===i)||(r=n.target,i=n.source);let a=e.getNode(r),o=e.getNode(i),s=a,c=!1;return a.data.lim>o.data.lim&&(s=o,c=!0),kT(t.getAllEdges().filter(t=>c===oD(e.getNode(t.source),s)&&c!==oD(e.getNode(t.target),s)),e=>HE(t,e))},rD=(e,t,n,r)=>{let i=e.getRelatedEdges(n.source,`both`).find(e=>e.source===n.target||e.target===n.target);i&&e.removeEdge(i.id),e.addEdge({id:`e${Math.random()}`,source:r.source,target:r.target,data:{}}),$E(e),XE(e,t),iD(e,t)},iD=(e,t)=>{let n=jT(e,e.getAllNodes().find(e=>!e.data.parent),`pre`);n=n.slice(1),n.forEach(n=>{let r=e.getNode(n).data.parent,i=t.getRelatedEdges(n,`out`).find(e=>e.target===r),a=!1;!i&&t.hasNode(r)&&(i=t.getRelatedEdges(r,`out`).find(e=>e.target===n),a=!0),t.getNode(n).data.rank=(t.hasNode(r)&&t.getNode(r).data.rank||0)+(a?i?.data.minlen:-i?.data.minlen)})},aD=(e,t,n)=>e.getRelatedEdges(t,`both`).find(e=>e.source===n||e.target===n),oD=(e,t)=>t.data.low<=e.data.lim&&e.data.lim<=t.data.lim,sD=(e,t)=>{switch(t){case`network-simplex`:uD(e);break;case`tight-tree`:lD(e);break;case`longest-path`:cD(e);break;default:lD(e)}},cD=BE,lD=e=>{VE(e),GE(e)},uD=e=>{YE(e)},dD=(e,t)=>{let{edgeLabelSpace:n,keepNodeOrder:r,prevGraph:i,rankdir:a,ranksep:o}=t;!r&&i&&pD(e,i);let s=bD(e);n&&(t.ranksep=xD(s,{rankdir:a,ranksep:o}));let c;try{c=fD(s,t)}catch(e){if(e.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:
10
+ `,e);return}throw e}return mD(e,s),c},fD=(e,t)=>{let{ranker:n,rankdir:r=`tb`,nodeOrder:i,keepNodeOrder:a,align:o,nodesep:s=50,edgesep:c=20,ranksep:l=50}=t;AD(e),hT(e);let{nestingRoot:u,nodeRankFactor:d}=HT(e);sD(bT(e),n),SD(e),TT(e,d),KT(e,u),wT(e),CD(e),wD(e);let f=[];YT(e,f),CE(e,f),MT(e),a&&bE(e,i),gE(e,a),jD(e),PT(e,r),zE(e,{align:o,nodesep:s,edgesep:c,ranksep:l}),MD(e),kD(e),ZT(e,f),DD(e),FT(e,r);let{width:p,height:m}=TD(e);return ED(e),OD(e),gT(e),{width:p,height:m}},pD=(e,t)=>{e.getAllNodes().forEach(n=>{let r=e.getNode(n.id);if(t.hasNode(n.id)){let e=t.getNode(n.id);r.data.fixorder=e.data._order,delete e.data._order}else delete r.data.fixorder})},mD=(e,t)=>{e.getAllNodes().forEach(n=>{let r=e.getNode(n.id);if(r){let e=t.getNode(n.id);r.data.x=e.data.x,r.data.y=e.data.y,r.data._order=e.data.order,r.data._rank=e.data.rank,t.getChildren(n.id)?.length&&(r.data.width=e.data.width,r.data.height=e.data.height)}}),e.getAllEdges().forEach(n=>{let r=e.getEdge(n.id),i=t.getEdge(n.id);r.data.points=i?i.data.points:[],i&&i.data.hasOwnProperty(`x`)&&(r.data.x=i.data.x,r.data.y=i.data.y)})},hD=[`width`,`height`,`layer`,`fixorder`],gD={width:0,height:0},_D=[`minlen`,`weight`,`width`,`height`,`labeloffset`],vD={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:`r`},yD=[`labelpos`],bD=e=>{let t=new iT({tree:[]});return e.getAllNodes().forEach(n=>{let r=PD(e.getNode(n.id).data),i=ND(Object.assign(Object.assign({},gD),r),hD);t.hasNode(n.id)||t.addNode({id:n.id,data:Object.assign({},i)});let a=e.hasTreeStructure(`combo`)?e.getParent(n.id,`combo`):e.getParent(n.id);dw(a)||(t.hasNode(a.id)||t.addNode(Object.assign({},a)),t.setParent(n.id,a.id))}),e.getAllEdges().forEach(n=>{let r=PD(e.getEdge(n.id).data),i={};yD?.forEach(e=>{r[e]!==void 0&&(i[e]=r[e])}),t.addEdge({id:n.id,source:n.source,target:n.target,data:Object.assign({},vD,ND(r,_D),i)})}),t},xD=(e,t)=>{let{ranksep:n=0,rankdir:r}=t;return e.getAllNodes().forEach(e=>{isNaN(e.data.layer)||e.data.layer||(e.data.layer=0)}),e.getAllEdges().forEach(e=>{e.data.minlen*=2,e.data.labelpos?.toLowerCase()!==`c`&&(r===`TB`||r===`BT`?e.data.width+=e.data.labeloffset:e.data.height+=e.data.labeloffset)}),n/2},SD=e=>{e.getAllEdges().forEach(t=>{if(t.data.width&&t.data.height){let n=e.getNode(t.source);vT(e,`edge-proxy`,{e:t,rank:(e.getNode(t.target).data.rank-n.data.rank)/2+n.data.rank},`_ep`)}})},CD=e=>{let t=0;return e.getAllNodes().forEach(n=>{n.data.borderTop&&(n.data.minRank=e.getNode(n.data.borderTop)?.data.rank,n.data.maxRank=e.getNode(n.data.borderBottom)?.data.rank,t=Math.max(t,n.data.maxRank||-1/0))}),t},wD=e=>{e.getAllNodes().forEach(t=>{t.data.dummy===`edge-proxy`&&(e.getEdge(t.data.e.id).data.labelRank=t.data.rank,e.removeNode(t.id))})},TD=(e,t)=>{let n,r=0,i,a=0,{marginx:o=0,marginy:s=0}={},c=e=>{if(!e.data)return;let t=e.data.x,o=e.data.y,s=e.data.width,c=e.data.height;!isNaN(t)&&!isNaN(s)&&(n===void 0&&(n=t-s/2),n=Math.min(n,t-s/2),r=Math.max(r,t+s/2)),!isNaN(o)&&!isNaN(c)&&(i===void 0&&(i=o-c/2),i=Math.min(i,o-c/2),a=Math.max(a,o+c/2))};return e.getAllNodes().forEach(e=>{c(e)}),e.getAllEdges().forEach(e=>{e?.data.hasOwnProperty(`x`)&&c(e)}),n-=o,i-=s,e.getAllNodes().forEach(e=>{e.data.x-=n,e.data.y-=i}),e.getAllEdges().forEach(e=>{var t;(t=e.data.points)==null||t.forEach(e=>{e.x-=n,e.y-=i}),e.data.hasOwnProperty(`x`)&&(e.data.x-=n),e.data.hasOwnProperty(`y`)&&(e.data.y-=i)}),{width:r-n+o,height:a-i+s}},ED=e=>{e.getAllEdges().forEach(t=>{let n=e.getNode(t.source),r=e.getNode(t.target),i,a;t.data.points?(i=t.data.points[0],a=t.data.points[t.data.points.length-1]):(t.data.points=[],i={x:r.data.x,y:r.data.y},a={x:n.data.x,y:n.data.y}),t.data.points.unshift(ST(n.data,i)),t.data.points.push(ST(r.data,a))})},DD=e=>{e.getAllEdges().forEach(e=>{if(e.data.hasOwnProperty(`x`))switch((e.data.labelpos===`l`||e.data.labelpos===`r`)&&(e.data.width-=e.data.labeloffset),e.data.labelpos){case`l`:e.data.x-=e.data.width/2+e.data.labeloffset;break;case`r`:e.data.x+=e.data.width/2+e.data.labeloffset;break}})},OD=e=>{e.getAllEdges().forEach(e=>{var t;e.data.reversed&&((t=e.data.points)==null||t.reverse())})},kD=e=>{e.getAllNodes().forEach(t=>{if(e.getChildren(t.id)?.length){let n=e.getNode(t.id),r=e.getNode(n.data.borderTop),i=e.getNode(n.data.borderBottom),a=e.getNode(n.data.borderLeft[n.data.borderLeft?.length-1]),o=e.getNode(n.data.borderRight[n.data.borderRight?.length-1]);n.data.width=Math.abs(o?.data.x-a?.data.x)||10,n.data.height=Math.abs(i?.data.y-r?.data.y)||10,n.data.x=(a?.data.x||0)+n.data.width/2,n.data.y=(r?.data.y||0)+n.data.height/2}}),e.getAllNodes().forEach(t=>{t.data.dummy===`border`&&e.removeNode(t.id)})},AD=e=>{e.getAllEdges().forEach(t=>{if(t.source===t.target){let n=e.getNode(t.source);n.data.selfEdges||(n.data.selfEdges=[]),n.data.selfEdges.push(t),e.removeEdge(t.id)}})},jD=e=>{CT(e)?.forEach(t=>{let n=0;t?.forEach((t,r)=>{var i;let a=e.getNode(t);a.data.order=r+n,(i=a.data.selfEdges)==null||i.forEach(t=>{vT(e,`selfedge`,{width:t.data.width,height:t.data.height,rank:a.data.rank,order:r+ ++n,e:t},`_se`)}),delete a.data.selfEdges})})},MD=e=>{e.getAllNodes().forEach(t=>{let n=e.getNode(t.id);if(n.data.dummy===`selfedge`){let r=e.getNode(n.data.e.source),i=r.data.x+r.data.width/2,a=r.data.y,o=n.data.x-i,s=r.data.height/2;e.hasEdge(n.data.e.id)?e.updateEdgeData(n.data.e.id,n.data.e.data):e.addEdge({id:n.data.e.id,source:n.data.e.source,target:n.data.e.target,data:n.data.e.data}),e.removeNode(t.id),n.data.e.data.points=[{x:i+2*o/3,y:a-s},{x:i+5*o/6,y:a-s},{y:a,x:i+o},{x:i+5*o/6,y:a+s},{x:i+2*o/3,y:a+s}],n.data.e.data.x=n.data.x,n.data.e.data.y=n.data.y}})},ND=(e,t)=>{let n={};return t?.forEach(t=>{e[t]!==void 0&&(n[t]=+e[t])}),n},PD=(e={})=>{let t={};return Object.keys(e).forEach(n=>{t[n.toLowerCase()]=e[n]}),t},FD={nodeSize:10,nodeSpacing:0,rankdir:`TB`,nodesep:50,ranksep:50,edgeLabelSpace:!0,ranker:`tight-tree`,controlPoints:!1,radial:!1,focusNode:null},ID=class extends tT{constructor(){super(...arguments),this.id=`antv-dagre`}getDefaultOptions(){return FD}layout(e){return RC(this,void 0,void 0,function*(){let{nodeSize:t,nodeSpacing:n,align:r,rankdir:i=`TB`,ranksep:a,nodesep:o,edgeLabelSpace:s,ranker:c=`tight-tree`,nodeOrder:l,begin:u,controlPoints:d,radial:f,sortByCombo:p,preset:m,ranksepFunc:h,nodesepFunc:g}=e,_=hw(h,a??50,`node`),v=hw(g,o??50,`node`),y=v,b=_;(i===`LR`||i===`RL`)&&(y=_,b=v);let x=new iT({tree:[]}),S=this.model.nodes(),C=this.model.edges(),w=_w(t,n,FD.nodeSize,FD.nodeSpacing);S.forEach(e=>{let t=e._original,n=w(t),r=b(t),i=y(t),a=n[0]+2*i,o=n[1]+2*r,s=e.data?.layer;cw(s)?x.addNode({id:e.id,data:{width:a,height:o,layer:s,originalWidth:n[0],originalHeight:n[1]}}):x.addNode({id:e.id,data:{width:a,height:o,originalWidth:n[0],originalHeight:n[1]}})}),C.forEach(e=>{x.addEdge({id:e.id,source:e.source,target:e.target,data:{}})}),p&&(x.attachTreeStructure(`combo`),S.forEach(e=>{let t=e?.parentId;t!==void 0&&x.hasNode(t)&&x.setParent(e.id,t,`combo`)}));let T=null;m?.length&&(T=new iT,m.forEach(e=>{T.addNode({id:e.id,data:e.data})})),dD(x,{prevGraph:T,edgeLabelSpace:s,keepNodeOrder:!!l,nodeOrder:l||[],acyclicer:`greedy`,ranker:c,rankdir:i,nodesep:o,align:r});let E=[0,0];if(u){let e=1/0,t=1/0;x.getAllNodes().forEach(n=>{e>n.data.x&&(e=n.data.x),t>n.data.y&&(t=n.data.y)}),x.getAllEdges().forEach(n=>{var r;(r=n.data.points)==null||r.forEach(n=>{e>n.x&&(e=n.x),t>n.y&&(t=n.y)})}),E[0]=u[0]-e,E[1]=u[1]-t}let D=i===`LR`||i===`RL`;if(!f){let e=new Set,t=i===`BT`||i===`RL`?(e,t)=>t-e:(e,t)=>e-t;x.getAllNodes().forEach(t=>{t.data.x=t.data.x+E[0],t.data.y=t.data.y+E[1],e.add(D?t.data.x:t.data.y)});let n=Array.from(e).sort(t),r=D?(e,t)=>e.x!==t.x:(e,t)=>e.y!==t.y,a=D?(e,t,n)=>{let r=Math.max(t.y,n.y),i=Math.min(t.y,n.y);return e.filter(e=>e.y<=r&&e.y>=i)}:(e,t,n)=>{let r=Math.max(t.x,n.x),i=Math.min(t.x,n.x);return e.filter(e=>e.x<=r&&e.x>=i)};x.getAllEdges().forEach((e,t)=>{s&&d&&e.data.type!==`loop`&&(e.data.controlPoints=LD(e.data.points?.map(({x:e,y:t})=>({x:e+E[0],y:t+E[1]})),x.getNode(e.source),x.getNode(e.target),n,D,r,a))})}this.model.forEachNode(e=>{let t=x.getNode(e.id);if(t){let{x:n,y:r,width:i,height:a,originalWidth:o,originalHeight:s}=t.data,c=p?x.getChildren(e.id,`combo`):x.getChildren(e.id);if(c.length>0){let t=1/0,n=-1/0,r=1/0,i=-1/0;c.forEach(e=>{let a=e.id,o=x.getNode(a);if(o?.data){let e=o.data.x,a=o.data.y,s=o.data.originalWidth||o.data.width||0,c=o.data.originalHeight||o.data.height||0;t=Math.min(t,e-s/2),n=Math.max(n,e+s/2),r=Math.min(r,a-c/2),i=Math.max(i,a+c/2)}});let a=(n-t||0)+40,o=(i-r||0)+40;e.x=(t+n)/2,e.y=(r+i)/2,e.size=[a,o]}else e.x=n,e.y=r,e.size=[o,s]}}),this.model.forEachEdge(e=>{let t=x.getEdge(e.id);t&&t.data.controlPoints&&(e.points=t.data.controlPoints.map(vw))})})}},LD=(e,t,n,r,i,a,o)=>{let s=e?.slice(1,e.length-1)||[];if(t&&n){let{x:e,y:c}=t.data,{x:l,y:u}=n.data;if(i&&(e=t.data.y,c=t.data.x,l=n.data.y,u=n.data.x),u!==c&&e!==l){let d=r.indexOf(c),f=r[d+1];if(f){let e=s[0],t=i?{x:(c+f)/2,y:e?.y||l}:{x:e?.x||l,y:(c+f)/2};(!e||a(e,t))&&s.unshift(t)}let p=r.indexOf(u),m=Math.abs(p-d);if(m===1)s=o(s,t.data,n.data),s.length||s.push(i?{x:(c+u)/2,y:e}:{x:e,y:(c+u)/2});else if(m>1){let t=r[p-1];if(t){let n=s[s.length-1],r=i?{x:(u+t)/2,y:n?.y||l}:{x:n?.x||e,y:(u+t)/2};(!n||a(n,r))&&s.push(r)}}}}return s};function RD(e,t,n=2){if(e.nodeCount()===1){let r=e.firstNode();r.x=t[0],r.y=t[1],n===3&&(r.z=t[2]||0)}}function zD(e,t){let n=e.nodes();return n.sort(t),e.setNodeOrder(n),e}function BD(e,t=`desc`){return zD(e,(n,r)=>{let i=e.degree(n.id),a=e.degree(r.id);return t===`asc`?i-a:a-i})}function VD(e){return zD(e,(e,t)=>{let n=e.id,r=t.id;return typeof n==`number`&&typeof r==`number`?n-r:String(n).localeCompare(String(r))})}function HD(e,t){return zD(e,(n,r)=>t(e.originalNode(n.id),e.originalNode(r.id)))}function UD(e,t=!1){let n=e.nodeCount();if(n===0)return e;let r=e.nodes(),i=[r[0]],a={};a[r[0].id]=!0;let o=0,s=0;return e.forEachNode(c=>{if(s!==0){let l=e.degree(c.id,`both`),u=s<n-1?e.degree(r[s+1].id,`both`):0,d=i[o].id,f=e.neighbors(d,`both`).includes(c.id);if((s===n-1||l!==u||f)&&!a[c.id])i.push(c),a[c.id]=!0,o++;else{let o=t?e.successors(d):e.neighbors(d),s=!1;for(let t=0;t<o.length;t++){let n=o[t],r=e.node(n);if(r&&e.degree(n)===e.degree(c.id)&&!a[n]){i.push(r),a[n]=!0,s=!0;break}}let l=0;for(;!s&&(a[r[l].id]||(i.push(r[l]),a[r[l].id]=!0,s=!0),l++,l!==n););}}s++}),e.setNodeOrder(i),e}var WD=e=>{let{width:t,height:n,center:r}=e,i=t??(typeof window<`u`?window.innerWidth:0),a=n??(typeof window<`u`?window.innerHeight:0);return{width:i,height:a,center:r??[i/2,a/2]}},GD={radius:null,startRadius:null,endRadius:null,startAngle:0,endAngle:2*Math.PI,clockwise:!0,divisions:1,ordering:null,angleRatio:1,nodeSize:10,nodeSpacing:0},KD=class extends tT{constructor(){super(...arguments),this.id=`circular`}getDefaultOptions(){return GD}layout(){return RC(this,void 0,void 0,function*(){let{width:e,height:t,center:n}=WD(this.options),r=this.model.nodeCount();if(!r||r===1){RD(this.model,n);return}let{ordering:i,nodeSpacing:a,nodeSize:o,endAngle:s=2*Math.PI,startAngle:c=0,divisions:l,angleRatio:u,clockwise:d}=this.options;i===`topology`?UD(this.model,!1):i===`topology-directed`?UD(this.model,!0):i===`degree`&&BD(this.model,`asc`);let{radius:f,startRadius:p,endRadius:m}=this.options,h=this.model.nodes(),g=_w(o,a,GD.nodeSize,GD.nodeSpacing);if(a){let e=0;for(let t of h)e+=Math.max(...g(t._original));f=e/(2*Math.PI)}else !f&&!p&&!m?f=Math.min(t,e)/2:!p&&m?p=m:p&&!m&&(m=p);let _=(s-c)/r*u,v=Math.ceil(r/l),y=2*Math.PI/l;for(let e=0;e<r;){let t=h[e],i=f;!i&&p!==null&&m!==null&&(i=p+e*(m-p)/(r-1)),i||=10+e*100/(r-1);let a=Math.floor(e/v),o=e%v*_+y*a,l=c+o;d||(l=s-o),t.x=n[0]+Math.cos(l)*i,t.y=n[1]+Math.sin(l)*i,e++}})}},qD={nodeSize:30,nodeSpacing:10,preventOverlap:!1,sweep:void 0,equidistant:!1,startAngle:3/2*Math.PI,clockwise:!0,maxLevelDiff:void 0,sortBy:`degree`},JD=class extends tT{constructor(){super(...arguments),this.id=`concentric`}getDefaultOptions(){return qD}layout(){return RC(this,void 0,void 0,function*(){let{width:e,height:t,center:n}=WD(this.options),r=this.model.nodeCount();if(!r||r===1){RD(this.model,n);return}let{sortBy:i,maxLevelDiff:a,sweep:o,clockwise:s,equidistant:c,preventOverlap:l,startAngle:u=qD.startAngle,nodeSize:d,nodeSpacing:f}=this.options,p=!i||i===`degree`?`degree`:mw(i,[`node`]);p===`degree`?BD(this.model):HD(this.model,(e,t)=>{let n=p(e),r=p(t);return n===r?0:n>r?-1:1});let m=this.model.nodes(),h=new Map;for(let e of m){let t=p===`degree`?this.model.degree(e.id):p(e._original);h.set(e.id,t)}let g=this.model.firstNode(),_=a||h.get(g.id)/4,v=_w(d,f,qD.nodeSize,qD.nodeSpacing),y=new Map;for(let e of m)y.set(e.id,Math.max(...v(e._original)));let b=[{nodes:[]}],x=b[0];for(let e=0;e<r;e++){let t=m[e];if(x.nodes.length>0){let e=x.nodes[0],n=Math.abs(h.get(e.id)-h.get(t.id));_&&n>=_&&(x={nodes:[]},b.push(x))}x.nodes.push(t)}for(let e of b){let t=e.nodes.map(e=>y.get(e.id));e.nodeSizes=t,e.maxNodeSize=Math.max(...t)}if(b.forEach(e=>{e.dTheta=(o===void 0?2*Math.PI-2*Math.PI/e.nodes.length:o)/Math.max(1,e.nodes.length-1)}),l){let e=0;for(let t=0;t<b.length;t++){let n=b[t];if(n.nodes.length>1){let t=n.nodeSizes||[],r=0;for(let e=0;e<t.length-1;e++)r=Math.max(r,(t[e]+t[e+1])/2);let i=Math.cos(n.dTheta)-Math.cos(0),a=Math.sin(n.dTheta)-Math.sin(0),o=Math.sqrt(i*i+a*a),s=o>0?r/o:0;e=Math.max(s,e)}if(n.r=e,t<b.length-1){let r=b[t+1],i=((n.maxNodeSize||0)+(r.maxNodeSize||0))/2;e+=Math.max(0,i)}}}else{let n=0;b[0].r=0;for(let e=0;e<b.length-1;e++){let t=b[e],r=b[e+1],i=((t.maxNodeSize||0)+(r.maxNodeSize||0))/2;n+=Math.max(0,i),r.r=n}let r=Math.min(e,t)/2,i=1;for(let e of b){let t=e.r||0;if(t<=0)continue;let n=r-(e.maxNodeSize||0);if(n<=0){i=0;break}i=Math.min(i,n/t)}if(i=Math.max(0,Math.min(1,i)),i!==1)for(let e of b)e.r=(e.r||0)*i}if(c){let e=0,t=0;for(let n=0;n<b.length;n++){let r=(b[n].r||0)-t;e=Math.max(e,r)}t=0,b.forEach((n,r)=>{r===0&&(t=n.r||0),n.r=t,t+=e})}b.forEach(e=>{let t=e.dTheta||0,r=e.r||0;e.nodes.forEach((e,i)=>{let a=u+(s?1:-1)*t*i;e.x=n[0]+r*Math.cos(a),e.y=n[1]+r*Math.sin(a)})})})}},YD=(function(e){var t=typeof e;return e!==null&&t===`object`||t===`function`});function XD(e,...t){return t.forEach(t=>{t&&Object.keys(t).forEach(n=>{let r=t[n];r!==void 0&&(e[n]=r)})}),e}var ZD=1664525,QD=1013904223,$D=4294967296;function eO(){let e=1;return()=>(e=(ZD*e+QD)%$D)/$D}var tO=0,nO=0,rO=0,iO=1e3,aO,oO,sO=0,cO=0,lO=0,uO=typeof performance==`object`&&performance.now?performance:Date,dO=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function fO(){return cO||=(dO(pO),uO.now()+lO)}function pO(){cO=0}function mO(){this._call=this._time=this._next=null}mO.prototype=hO.prototype={constructor:mO,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?fO():+n)+(t==null?0:+t),!this._next&&oO!==this&&(oO?oO._next=this:aO=this,oO=this),this._call=e,this._time=n,bO()},stop:function(){this._call&&(this._call=null,this._time=1/0,bO())}};function hO(e,t,n){var r=new mO;return r.restart(e,t,n),r}function gO(){fO(),++tO;for(var e=aO,t;e;)(t=cO-e._time)>=0&&e._call.call(void 0,t),e=e._next;--tO}function _O(){cO=(sO=uO.now())+lO,tO=nO=0;try{gO()}finally{tO=0,yO(),cO=0}}function vO(){var e=uO.now(),t=e-sO;t>iO&&(lO-=t,sO=e)}function yO(){for(var e,t=aO,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:aO=n);oO=e,bO(r)}function bO(e){tO||(nO&&=clearTimeout(nO),e-cO>24?(e<1/0&&(nO=setTimeout(_O,e-uO.now()-lO)),rO&&=clearInterval(rO)):(rO||=(sO=uO.now(),setInterval(vO,iO)),tO=1,dO(_O)))}var xO={value:()=>{}};function SO(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new CO(n)}function CO(e){this._=e}function wO(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}CO.prototype=SO.prototype={constructor:CO,on:function(e,t){var n=this._,r=wO(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=TO(n[i],e.name)))return i;return}if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=EO(n[i],e.name,t);else if(t==null)for(i in n)n[i]=EO(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new CO(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function TO(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function EO(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=xO,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}function DO(e){return e.x}function OO(e){return e.y}var kO=10,AO=Math.PI*(3-Math.sqrt(5));function jO(e){var t,n=1,r=.001,i=1-r**(1/300),a=0,o=.6,s=new Map,c=hO(d),l=SO(`tick`,`end`),u=eO();e??=[];function d(){f(),l.call(`tick`,t),n<r&&(c.stop(),l.call(`end`,t))}function f(r){var c,l=e.length,u;r===void 0&&(r=1);for(var d=0;d<r;++d)for(n+=(a-n)*i,s.forEach(function(e){e(n)}),c=0;c<l;++c)u=e[c],u.fx==null?u.x+=u.vx*=o:(u.x=u.fx,u.vx=0),u.fy==null?u.y+=u.vy*=o:(u.y=u.fy,u.vy=0);return t}function p(){for(var t=0,n=e.length,r;t<n;++t){if(r=e[t],r.index=t,r.fx!=null&&(r.x=r.fx),r.fy!=null&&(r.y=r.fy),isNaN(r.x)||isNaN(r.y)){var i=kO*Math.sqrt(.5+t),a=t*AO;r.x=i*Math.cos(a),r.y=i*Math.sin(a)}(isNaN(r.vx)||isNaN(r.vy))&&(r.vx=r.vy=0)}}function m(t){return t.initialize&&t.initialize(e,u),t}return p(),t={tick:f,restart:function(){return c.restart(d),t},stop:function(){return c.stop(),t},nodes:function(n){return arguments.length?(e=n,p(),s.forEach(m),t):e},alpha:function(e){return arguments.length?(n=+e,t):n},alphaMin:function(e){return arguments.length?(r=+e,t):r},alphaDecay:function(e){return arguments.length?(i=+e,t):+i},alphaTarget:function(e){return arguments.length?(a=+e,t):a},velocityDecay:function(e){return arguments.length?(o=1-e,t):1-o},randomSource:function(e){return arguments.length?(u=e,s.forEach(m),t):u},force:function(e,n){return arguments.length>1?(n==null?s.delete(e):s.set(e,m(n)),t):s.get(e)},find:function(t,n,r){var i=0,a=e.length,o,s,c,l,u;for(r==null?r=1/0:r*=r,i=0;i<a;++i)l=e[i],o=t-l.x,s=n-l.y,c=o*o+s*s,c<r&&(u=l,r=c);return u},on:function(e,n){return arguments.length>1?(l.on(e,n),t):l.on(e)}}}function MO(e){return function(){return e}}function NO(e){var t=MO(.1),n,r,i;typeof e!=`function`&&(e=MO(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vx+=(i[t]-o.x)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:MO(+e),o(),a):t},a.x=function(t){return arguments.length?(e=typeof t==`function`?t:MO(+t),o(),a):e},a}function PO(e){var t=MO(.1),n,r,i;typeof e!=`function`&&(e=MO(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vy+=(i[t]-o.y)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:MO(+e),o(),a):t},a.y=function(t){return arguments.length?(e=typeof t==`function`?t:MO(+t),o(),a):e},a}function FO(e){return(e()-.5)*1e-6}function IO(e){let t=+this._x.call(null,e),n=+this._y.call(null,e);return LO(this.cover(t,n),t,n,e)}function LO(e,t,n,r){if(isNaN(t)||isNaN(n))return e;var i,a=e._root,o={data:r},s=e._x0,c=e._y0,l=e._x1,u=e._y1,d,f,p,m,h,g,_,v;if(!a)return e._root=o,e;for(;a.length;)if((h=t>=(d=(s+l)/2))?s=d:l=d,(g=n>=(f=(c+u)/2))?c=f:u=f,i=a,!(a=a[_=g<<1|h]))return i[_]=o,e;if(p=+e._x.call(null,a.data),m=+e._y.call(null,a.data),t===p&&n===m)return o.next=a,i?i[_]=o:e._root=o,e;do i=i?i[_]=[,,,,]:e._root=[,,,,],(h=t>=(d=(s+l)/2))?s=d:l=d,(g=n>=(f=(c+u)/2))?c=f:u=f;while((_=g<<1|h)==(v=(m>=f)<<1|p>=d));return i[v]=a,i[_]=o,e}function RO(e){var t,n,r=e.length,i,a,o=Array(r),s=Array(r),c=1/0,l=1/0,u=-1/0,d=-1/0;for(n=0;n<r;++n)isNaN(i=+this._x.call(null,t=e[n]))||isNaN(a=+this._y.call(null,t))||(o[n]=i,s[n]=a,i<c&&(c=i),i>u&&(u=i),a<l&&(l=a),a>d&&(d=a));if(c>u||l>d)return this;for(this.cover(c,l).cover(u,d),n=0;n<r;++n)LO(this,o[n],s[n],e[n]);return this}function zO(e,t){if(isNaN(e=+e)||isNaN(t=+t))return this;var n=this._x0,r=this._y0,i=this._x1,a=this._y1;if(isNaN(n))i=(n=Math.floor(e))+1,a=(r=Math.floor(t))+1;else{for(var o=i-n||1,s=this._root,c,l;n>e||e>=i||r>t||t>=a;)switch(l=(t<r)<<1|e<n,c=[,,,,],c[l]=s,s=c,o*=2,l){case 0:i=n+o,a=r+o;break;case 1:n=i-o,a=r+o;break;case 2:i=n+o,r=a-o;break;case 3:n=i-o,r=a-o;break}this._root&&this._root.length&&(this._root=s)}return this._x0=n,this._y0=r,this._x1=i,this._y1=a,this}function BO(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function VO(e){return arguments.length?this.cover(+e[0][0],+e[0][1]).cover(+e[1][0],+e[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function HO(e,t,n,r,i){this.node=e,this.x0=t,this.y0=n,this.x1=r,this.y1=i}function UO(e,t,n){var r,i=this._x0,a=this._y0,o,s,c,l,u=this._x1,d=this._y1,f=[],p=this._root,m,h;for(p&&f.push(new HO(p,i,a,u,d)),n==null?n=1/0:(i=e-n,a=t-n,u=e+n,d=t+n,n*=n);m=f.pop();)if(!(!(p=m.node)||(o=m.x0)>u||(s=m.y0)>d||(c=m.x1)<i||(l=m.y1)<a))if(p.length){var g=(o+c)/2,_=(s+l)/2;f.push(new HO(p[3],g,_,c,l),new HO(p[2],o,_,g,l),new HO(p[1],g,s,c,_),new HO(p[0],o,s,g,_)),(h=(t>=_)<<1|e>=g)&&(m=f[f.length-1],f[f.length-1]=f[f.length-1-h],f[f.length-1-h]=m)}else{var v=e-+this._x.call(null,p.data),y=t-+this._y.call(null,p.data),b=v*v+y*y;if(b<n){var x=Math.sqrt(n=b);i=e-x,a=t-x,u=e+x,d=t+x,r=p.data}}return r}function WO(e){if(isNaN(u=+this._x.call(null,e))||isNaN(d=+this._y.call(null,e)))return this;var t,n=this._root,r,i,a,o=this._x0,s=this._y0,c=this._x1,l=this._y1,u,d,f,p,m,h,g,_;if(!n)return this;if(n.length)for(;;){if((m=u>=(f=(o+c)/2))?o=f:c=f,(h=d>=(p=(s+l)/2))?s=p:l=p,t=n,!(n=n[g=h<<1|m]))return this;if(!n.length)break;(t[g+1&3]||t[g+2&3]||t[g+3&3])&&(r=t,_=g)}for(;n.data!==e;)if(i=n,!(n=n.next))return this;return(a=n.next)&&delete n.next,i?(a?i.next=a:delete i.next,this):t?(a?t[g]=a:delete t[g],(n=t[0]||t[1]||t[2]||t[3])&&n===(t[3]||t[2]||t[1]||t[0])&&!n.length&&(r?r[_]=n:this._root=n),this):(this._root=a,this)}function GO(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function KO(){return this._root}function qO(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function JO(e){var t=[],n,r=this._root,i,a,o,s,c;for(r&&t.push(new HO(r,this._x0,this._y0,this._x1,this._y1));n=t.pop();)if(!e(r=n.node,a=n.x0,o=n.y0,s=n.x1,c=n.y1)&&r.length){var l=(a+s)/2,u=(o+c)/2;(i=r[3])&&t.push(new HO(i,l,u,s,c)),(i=r[2])&&t.push(new HO(i,a,u,l,c)),(i=r[1])&&t.push(new HO(i,l,o,s,u)),(i=r[0])&&t.push(new HO(i,a,o,l,u))}return this}function YO(e){var t=[],n=[],r;for(this._root&&t.push(new HO(this._root,this._x0,this._y0,this._x1,this._y1));r=t.pop();){var i=r.node;if(i.length){var a,o=r.x0,s=r.y0,c=r.x1,l=r.y1,u=(o+c)/2,d=(s+l)/2;(a=i[0])&&t.push(new HO(a,o,s,u,d)),(a=i[1])&&t.push(new HO(a,u,s,c,d)),(a=i[2])&&t.push(new HO(a,o,d,u,l)),(a=i[3])&&t.push(new HO(a,u,d,c,l))}n.push(r)}for(;r=n.pop();)e(r.node,r.x0,r.y0,r.x1,r.y1);return this}function XO(e){return e[0]}function ZO(e){return arguments.length?(this._x=e,this):this._x}function QO(e){return e[1]}function $O(e){return arguments.length?(this._y=e,this):this._y}function ek(e,t,n){var r=new tk(t??XO,n??QO,NaN,NaN,NaN,NaN);return e==null?r:r.addAll(e)}function tk(e,t,n,r,i,a){this._x=e,this._y=t,this._x0=n,this._y0=r,this._x1=i,this._y1=a,this._root=void 0}function nk(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var rk=ek.prototype=tk.prototype;rk.copy=function(){var e=new tk(this._x,this._y,this._x0,this._y0,this._x1,this._y1),t=this._root,n,r;if(!t)return e;if(!t.length)return e._root=nk(t),e;for(n=[{source:t,target:e._root=[,,,,]}];t=n.pop();)for(var i=0;i<4;++i)(r=t.source[i])&&(r.length?n.push({source:r,target:t.target[i]=[,,,,]}):t.target[i]=nk(r));return e},rk.add=IO,rk.addAll=RO,rk.cover=zO,rk.data=BO,rk.extent=VO,rk.find=UO,rk.remove=WO,rk.removeAll=GO,rk.root=KO,rk.size=qO,rk.visit=JO,rk.visitAfter=YO,rk.x=ZO,rk.y=$O;function ik(e){return e.x+e.vx}function ak(e){return e.y+e.vy}function ok(e){var t,n,r,i=1,a=1;typeof e!=`function`&&(e=MO(e==null?1:+e));function o(){for(var e,o=t.length,c,l,u,d,f,p,m=0;m<a;++m)for(c=ek(t,ik,ak).visitAfter(s),e=0;e<o;++e)l=t[e],f=n[l.index],p=f*f,u=l.x+l.vx,d=l.y+l.vy,c.visit(h);function h(e,t,n,a,o){var s=e.data,c=e.r,m=f+c;if(s){if(s.index>l.index){var h=u-s.x-s.vx,g=d-s.y-s.vy,_=h*h+g*g;_<m*m&&(h===0&&(h=FO(r),_+=h*h),g===0&&(g=FO(r),_+=g*g),_=(m-(_=Math.sqrt(_)))/_*i,l.vx+=(h*=_)*(m=(c*=c)/(p+c)),l.vy+=(g*=_)*m,s.vx-=h*(m=1-m),s.vy-=g*m)}return}return t>u+m||a<u-m||n>d+m||o<d-m}}function s(e){if(e.data)return e.r=n[e.data.index];for(var t=e.r=0;t<4;++t)e[t]&&e[t].r>e.r&&(e.r=e[t].r)}function c(){if(t){var r,i=t.length,a;for(n=Array(i),r=0;r<i;++r)a=t[r],n[a.index]=+e(a,r,t)}}return o.initialize=function(e,n){t=e,r=n,c()},o.iterations=function(e){return arguments.length?(a=+e,o):a},o.strength=function(e){return arguments.length?(i=+e,o):i},o.radius=function(t){return arguments.length?(e=typeof t==`function`?t:MO(+t),c(),o):e},o}function sk(){var e,t,n,r,i=MO(-30),a,o=1,s=1/0,c=.81;function l(n){var i,a=e.length,o=ek(e,DO,OO).visitAfter(d);for(r=n,i=0;i<a;++i)t=e[i],o.visit(f)}function u(){if(e){var t,n=e.length,r;for(a=Array(n),t=0;t<n;++t)r=e[t],a[r.index]=+i(r,t,e)}}function d(e){var t=0,n,r,i=0,o,s,c;if(e.length){for(o=s=c=0;c<4;++c)(n=e[c])&&(r=Math.abs(n.value))&&(t+=n.value,i+=r,o+=r*n.x,s+=r*n.y);e.x=o/i,e.y=s/i}else{n=e,n.x=n.data.x,n.y=n.data.y;do t+=a[n.data.index];while(n=n.next)}e.value=t}function f(e,i,l,u){if(!e.value)return!0;var d=e.x-t.x,f=e.y-t.y,p=u-i,m=d*d+f*f;if(p*p/c<m)return m<s&&(d===0&&(d=FO(n),m+=d*d),f===0&&(f=FO(n),m+=f*f),m<o&&(m=Math.sqrt(o*m)),t.vx+=d*e.value*r/m,t.vy+=f*e.value*r/m),!0;if(!(e.length||m>=s)){(e.data!==t||e.next)&&(d===0&&(d=FO(n),m+=d*d),f===0&&(f=FO(n),m+=f*f),m<o&&(m=Math.sqrt(o*m)));do e.data!==t&&(p=a[e.data.index]*r/m,t.vx+=d*p,t.vy+=f*p);while(e=e.next)}}return l.initialize=function(t,r){e=t,n=r,u()},l.strength=function(e){return arguments.length?(i=typeof e==`function`?e:MO(+e),u(),l):i},l.distanceMin=function(e){return arguments.length?(o=e*e,l):Math.sqrt(o)},l.distanceMax=function(e){return arguments.length?(s=e*e,l):Math.sqrt(s)},l.theta=function(e){return arguments.length?(c=e*e,l):Math.sqrt(c)},l}function ck(e){return e.index}function lk(e,t){var n=e.get(t);if(!n)throw Error(`node not found: `+t);return n}function uk(e){var t=ck,n=d,r,i=MO(30),a,o,s,c,l,u=1;e??=[];function d(e){return 1/Math.min(s[e.source.index],s[e.target.index])}function f(t){for(var n=0,i=e.length;n<u;++n)for(var o=0,s,d,f,p,m,h,g;o<i;++o)s=e[o],d=s.source,f=s.target,p=f.x+f.vx-d.x-d.vx||FO(l),m=f.y+f.vy-d.y-d.vy||FO(l),h=Math.sqrt(p*p+m*m),h=(h-a[o])/h*t*r[o],p*=h,m*=h,f.vx-=p*(g=c[o]),f.vy-=m*g,d.vx+=p*(g=1-g),d.vy+=m*g}function p(){if(o){var n,i=o.length,l=e.length,u=new Map(o.map((e,n)=>[t(e,n,o),e])),d;for(n=0,s=Array(i);n<l;++n)d=e[n],d.index=n,typeof d.source!=`object`&&(d.source=lk(u,d.source)),typeof d.target!=`object`&&(d.target=lk(u,d.target)),s[d.source.index]=(s[d.source.index]||0)+1,s[d.target.index]=(s[d.target.index]||0)+1;for(n=0,c=Array(l);n<l;++n)d=e[n],c[n]=s[d.source.index]/(s[d.source.index]+s[d.target.index]);r=Array(l),m(),a=Array(l),h()}}function m(){if(o)for(var t=0,i=e.length;t<i;++t)r[t]=+n(e[t],t,e)}function h(){if(o)for(var t=0,n=e.length;t<n;++t)a[t]=+i(e[t],t,e)}return f.initialize=function(e,t){o=e,l=t,p()},f.links=function(t){return arguments.length?(e=t,p(),f):e},f.id=function(e){return arguments.length?(t=e,f):t},f.iterations=function(e){return arguments.length?(u=+e,f):u},f.strength=function(e){return arguments.length?(n=typeof e==`function`?e:MO(+e),m(),f):n},f.distance=function(e){return arguments.length?(i=typeof e==`function`?e:MO(+e),h(),f):i},f}var dk=(e,t)=>e[t];function fk(){function e(e){return()=>e}let t=e=>e.cluster,n=e(1),r=e(-1),i=e(100),a=e(.1),o=[0,0],s=[],c={},l=[],u=100,d=100,f={none:{x:0,y:0}},p=[],m,h=`force`,g=!0,_=.1;function v(e){if(!g)return v;m.tick(),w();for(let n=0,r=s.length,i,a=e*_;n<r;++n)i=s[n],i.vx||=0,i.vy||=0,i.vx+=(f[t(i._original)].x-i.x)*a,i.vy+=(f[t(i._original)].y-i.y)*a}function y(){s&&b()}function b(){if(!s||!s.length)return;let e=s[0];if(t(e._original)===void 0)throw Error(`Couldnt find the grouping attribute for the nodes. Make sure to set it up with forceInABox.groupBy('clusterAttr') before calling .links()`);let n=x();m=jO(n.nodes).force(`x`,NO(u).strength(.1)).force(`y`,PO(d).strength(.1)).force(`collide`,ok(e=>e.r).iterations(4)).force(`charge`,sk().strength(r)).force(`links`,uk(n.nodes.length?n.links:[]).distance(i).strength(a)),p=m.nodes(),w()}function x(){let e=[],t=[],n={},r=[],i={},a=[];return i=S(s),a=C(l),r=Object.keys(i),r.forEach((t,r)=>{let a=i[t];e.push({id:t,size:a.count,r:Math.sqrt(a.sumforceNodeSize/Math.PI)}),n[t]=r}),a.forEach(e=>{let r=dk(e,`source`),i=dk(e,`target`),a=n[r],o=n[i];a!==void 0&&o!==void 0&&t.push({source:a,target:o,count:e.count})}),{nodes:e,links:t}}function S(e){let r={};return e.forEach(e=>{let n=t(e._original);r[n]||(r[n]={count:0,sumforceNodeSize:0})}),e.forEach(e=>{let i=t(e._original),a=n(e._original),o=r[i];o.count+=1,o.sumforceNodeSize+=a*a*Math.PI*1.3,r[i]=o}),r}function C(e){let t={},n=[];return e.forEach(e=>{let n=T(e),r=0;t[n]!==void 0&&(r=t[n]),r+=1,t[n]=r}),Object.entries(t).forEach(([e,t])=>{let r=e.split(`~`)[0],i=e.split(`~`)[1];r!==void 0&&i!==void 0&&n.push({source:r,target:i,count:t})}),n}function w(){return f={none:{x:0,y:0}},p.forEach(e=>{f[e.id]={x:e.x-o[0],y:e.y-o[1]}}),f}function T(e){let n=dk(e,`source`),r=dk(e,`target`),i=t(c[n]._original),a=t(c[r]._original);return i<=a?`${i}~${a}`:`${a}~${i}`}function E(e){c={},e.forEach(e=>{c[e.id]=e})}function D(e){return arguments.length?(h=e,y(),v):h}function O(e){return arguments.length?typeof e==`string`?(t=t=>t[e],v):(t=e,v):t}function k(e){return arguments.length?(g=e,v):g}function A(e){return arguments.length?(_=e,v):_}function j(e){return arguments.length?(u=e,v):u}function ee(e){return arguments.length?(d=e,v):d}function te(e){return arguments.length?(E(e||[]),s=e||[],v):s}function M(e){return arguments.length?(l=e||[],y(),v):l}function ne(t){return arguments.length?(n=typeof t==`function`?t:e(+t),y(),v):n}function re(t){return arguments.length?(r=typeof t==`function`?t:e(+t),y(),v):r}function ie(t){return arguments.length?(i=typeof t==`function`?t:e(+t),y(),v):i}function N(t){return arguments.length?(a=typeof t==`function`?t:e(+t),y(),v):a}function P(e){return arguments.length?(o=e,v):o}return v.initialize=e=>{s=e,y()},v.template=D,v.groupBy=O,v.enableGrouping=k,v.strength=A,v.centerX=j,v.centerY=ee,v.nodes=te,v.links=M,v.forceNodeSize=ne,v.nodeSize=v.forceNodeSize,v.forceCharge=re,v.forceLinkDistance=ie,v.forceLinkStrength=N,v.offset=P,v.getFocis=w,v}var pk=function(e){return typeof e==`object`&&!!e},mk={}.toString,hk=function(e,t){return mk.call(e)===`[object `+t+`]`},gk=function(e){if(!pk(e)||!hk(e,`Object`))return!1;if(Object.getPrototypeOf(e)===null)return!0;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t},_k=5;function vk(e,t){if(Object.hasOwn)return Object.hasOwn(e,t);if(e==null)throw TypeError(`Cannot convert undefined or null to object`);return Object.prototype.hasOwnProperty.call(Object(e),t)}function yk(e,t,n,r){for(var i in n||=0,r||=_k,t)if(vk(t,i)){var a=t[i];a!==null&&gk(a)?(gk(e[i])||(e[i]={}),n<r?yk(e[i],a,n+1,r):e[i]=t[i]):mE(a)?(e[i]=[],e[i]=e[i].concat(a)):a!==void 0&&(e[i]=a)}}var bk=function(e){for(var t=[...arguments].slice(1),n=0;n<t.length;n+=1)yk(e,t[n]);return e};function xk(e,t){var n,r=1;e??=0,t??=0;function i(){var i,a=n.length,o,s=0,c=0;for(i=0;i<a;++i)o=n[i],s+=o.x,c+=o.y;for(s=(s/a-e)*r,c=(c/a-t)*r,i=0;i<a;++i)o=n[i],o.x-=s,o.y-=c}return i.initialize=function(e){n=e},i.x=function(t){return arguments.length?(e=+t,i):e},i.y=function(e){return arguments.length?(t=+e,i):t},i.strength=function(e){return arguments.length?(r=+e,i):r},i}function Sk(e,t,n){var r,i=MO(.1),a,o;typeof e!=`function`&&(e=MO(+e)),t??=0,n??=0;function s(e){for(var i=0,s=r.length;i<s;++i){var c=r[i],l=c.x-t||1e-6,u=c.y-n||1e-6,d=Math.sqrt(l*l+u*u),f=(o[i]-d)*a[i]*e/d;c.vx+=l*f,c.vy+=u*f}}function c(){if(r){var t,n=r.length;for(a=Array(n),o=Array(n),t=0;t<n;++t)o[t]=+e(r[t],t,r),a[t]=isNaN(o[t])?0:+i(r[t],t,r)}}return s.initialize=function(e){r=e,c()},s.strength=function(e){return arguments.length?(i=typeof e==`function`?e:MO(+e),c(),s):i},s.radius=function(t){return arguments.length?(e=typeof t==`function`?t:MO(+t),c(),s):e},s.x=function(e){return arguments.length?(t=+e,s):t},s.y=function(e){return arguments.length?(n=+e,s):n},s}var Ck={edgeId:`edge.id`,manyBody:{strength:-30},preventOverlap:!1,nodeSize:10,nodeSpacing:0,x:!1,y:!1,clustering:!1,clusterNodeStrength:-1,clusterEdgeStrength:.1,clusterEdgeDistance:100,clusterFociStrength:.8,clusterNodeSize:10},wk=class extends nT{getDefaultOptions(){return Ck}mergeOptions(e,t){return bk({},e,t)}constructor(e){super(e),this.id=`d3-force`,this.d3Nodes=[],this.d3Edges=[],this.config={simulationAttrs:[`alpha`,`alphaMin`,`alphaDecay`,`alphaTarget`,`velocityDecay`,`randomSource`]},this.options.forceSimulation&&(this.simulation=this.options.forceSimulation)}stop(){return this.simulation&&this.simulation.stop(),this}tick(e=1){var t,n;if(this.simulation){for(let t=0;t<e;t++)this.simulation.tick();this.syncPositionsFromD3(),(n=(t=this.options).onTick)==null||n.call(t,this)}return this}restart(e){return this.simulation&&(e!==void 0&&this.simulation.alpha(e),this.simulation.restart()),this}reheat(){return this.restart(1)}getAlpha(){return this.simulation?.alpha()??0}setAlpha(e){return this.simulation&&this.simulation.alpha(e),this}getForce(e){return this.simulation?.force(e)}force(e,t){return this.simulation&&this.simulation.force(e,t),this}nodes(){return this.simulation?.nodes()??[]}find(e,t,n){if(this.simulation)return this.simulation.find(e,t,n)}setFixedPosition(e,t){let n=this.d3Nodes.find(t=>t.id===e),r=this.model.node(e);if(!r||!n)return;let i=[`fx`,`fy`,`fz`];if(t===null){i.forEach(e=>{delete r[e],delete n[e]});return}t.forEach((e,t)=>{t<i.length&&(typeof e==`number`||e===null)&&(r[i[t]]=e,n[i[t]]=e)})}parseOptions(e){let t=e;return t.iterations===void 0&&(t.link&&t.link.iterations===void 0&&(t.iterations=t.link.iterations),t.collide&&t.collide.iterations===void 0&&(t.iterations=t.collide.iterations)),t}layout(){var e;return RC(this,void 0,void 0,function*(){let t=this.parseOptions(this.options||{});this.createD3Copies();let n=this.setSimulation(t);return n.nodes(this.d3Nodes),(e=n.force(`link`))==null||e.links(this.d3Edges),new Promise(e=>{n.on(`end`,()=>{this.syncPositionsFromD3(),e()})})})}createD3Copies(){this.d3Nodes=[],this.d3Edges=[],this.model.forEachNode(e=>{this.d3Nodes.push(Object.assign({},e))}),this.model.forEachEdge(e=>{this.d3Edges.push(Object.assign({},e))})}syncPositionsFromD3(){this.d3Nodes.forEach(e=>{let t=this.model.node(e.id);t&&(t.x=e.x,t.y=e.y,e.z!==void 0&&(t.z=e.z),e.fx!==void 0&&(t.fx=e.fx),e.fy!==void 0&&(t.fy=e.fy),e.fz!==void 0&&(t.fz=e.fz),e.vx!==void 0&&(t.vx=e.vx),e.vy!==void 0&&(t.vy=e.vy),e.vz!==void 0&&(t.vz=e.vz))})}initSimulation(){return jO()}setSimulation(e){let t=this.simulation||this.options.forceSimulation||this.initSimulation();return this.simulation||=t.on(`tick`,()=>{var t;this.syncPositionsFromD3(),(t=e.onTick)==null||t.call(e,this)}),Tk(t,this.config.simulationAttrs.map(t=>[t,e[t]])),this.setupForces(t,e),t}setupForces(e,t){this.setupLinkForce(e,t),this.setupManyBodyForce(e,t),this.setupCenterForce(e,t),this.setupCollisionForce(e,t),this.setupXForce(e,t),this.setupYForce(e,t),this.setupRadialForce(e,t),this.setupClusterForce(e,t)}getCenterOptions(e){if(e.center===!1)return;let t=WD({width:e.width,height:e.height});return XD({},e.center||{},{x:t.width/2,y:t.height/2,strength:e.centerStrength})}setupCenterForce(e,t){let n=this.getCenterOptions(t);if(n){let t=e.force(`center`);t||(t=xk(n.x,n.y),e.force(`center`,t));let r=[];n.x!==void 0&&r.push([`x`,n.x]),n.y!==void 0&&r.push([`y`,n.y]),n.strength!==void 0&&r.push([`strength`,n.strength]),Tk(t,r)}else e.force(`center`,null)}getManyBodyOptions(e){if(e.manyBody!==!1)return XD({},e.manyBody||{},{strength:e.nodeStrength?mw(e.nodeStrength,[`node`]):void 0,distanceMin:e.distanceMin,distanceMax:e.distanceMax,theta:e.theta})}setupManyBodyForce(e,t){let n=this.getManyBodyOptions(t);if(n){let t=e.force(`charge`);t||(t=sk(),e.force(`charge`,t));let r=[];n.strength!==void 0&&r.push([`strength`,n.strength]),n.distanceMin!==void 0&&r.push([`distanceMin`,n.distanceMin]),n.distanceMax!==void 0&&r.push([`distanceMax`,n.distanceMax]),n.theta!==void 0&&r.push([`theta`,n.theta]),Tk(t,r)}else e.force(`charge`,null)}getLinkOptions(e){if(e.link!==!1)return XD({},e.link||{},{id:e.edgeId?mw(e.edgeId,[`edge`]):void 0,distance:e.linkDistance?mw(e.linkDistance,[`edge`]):void 0,strength:e.edgeStrength?mw(e.edgeStrength,[`edge`]):void 0,iterations:e.edgeIterations})}setupLinkForce(e,t){let n=this.model.edges(),r=this.getLinkOptions(t);if(n.length>0&&r){let t=e.force(`link`);t||(t=uk(),e.force(`link`,t));let n=[];r.id!==void 0&&n.push([`id`,r.id]),r.distance!==void 0&&n.push([`distance`,r.distance]),r.strength!==void 0&&n.push([`strength`,r.strength]),r.iterations!==void 0&&n.push([`iterations`,r.iterations]),Tk(t,n)}else e.force(`link`,null)}getCollisionOptions(e){if(e.preventOverlap===!1&&(e.collide===!1||e.collide===void 0))return;let t=_w(e.nodeSize,e.nodeSpacing,Ck.nodeSize,Ck.nodeSpacing);return XD({},e.collide||{},{radius:e.collide&&e.collide.radius||(e=>Math.max(...t(e._original))/2),strength:e.collideStrength,iterations:e.collideIterations})}setupCollisionForce(e,t){let n=this.getCollisionOptions(t);if(n){let t=e.force(`collide`);t||(t=ok(),e.force(`collide`,t));let r=[];n.radius!==void 0&&r.push([`radius`,n.radius]),n.strength!==void 0&&r.push([`strength`,n.strength]),n.iterations!==void 0&&r.push([`iterations`,n.iterations]),Tk(t,r)}else e.force(`collide`,null)}getXForceOptions(e){if(e.x===!1)return;let t=this.getCenterOptions(e);return XD({},e.x||{},{x:e.forceXPosition??(t&&t.x),strength:e.forceXStrength})}setupXForce(e,t){let n=this.getXForceOptions(t);if(n){let t=e.force(`x`);t||(t=NO(),e.force(`x`,t));let r=[];n.x!==void 0&&r.push([`x`,n.x]),n.strength!==void 0&&r.push([`strength`,n.strength]),Tk(t,r)}else e.force(`x`,null)}getYForceOptions(e){if(e.y===!1)return;let t=this.getCenterOptions(e);return XD({},e.y||{},{y:e.forceYPosition??(t&&t.y),strength:e.forceYStrength})}setupYForce(e,t){let n=this.getYForceOptions(t);if(n){let t=e.force(`y`);t||(t=PO(),e.force(`y`,t));let r=[];n.y!==void 0&&r.push([`y`,n.y]),n.strength!==void 0&&r.push([`strength`,n.strength]),Tk(t,r)}else e.force(`y`,null)}getRadialOptions(e){if(e.radial!==void 0||e.radialStrength!==void 0||e.radialRadius!==void 0||e.radialX!==void 0||e.radialY!==void 0){let t=this.getCenterOptions(e);return XD({},e.radial||{},{strength:e.radialStrength,radius:e.radialRadius??100,x:e.radialX??(t&&t.x),y:e.radialY??(t&&t.y)})}}setupRadialForce(e,t){let n=this.getRadialOptions(t);if(n){let t=e.force(`radial`);t||(t=Sk(n.radius||100,n.x,n.y),e.force(`radial`,t));let r=[];n.radius!==void 0&&r.push([`radius`,n.radius]),n.strength!==void 0&&r.push([`strength`,n.strength]),n.x!==void 0&&r.push([`x`,n.x]),n.y!==void 0&&r.push([`y`,n.y]),Tk(t,r)}else e.force(`radial`,null)}setupClusterForce(e,t){let{clustering:n}=t;if(n){let{clusterFociStrength:n,clusterEdgeDistance:r,clusterEdgeStrength:i,clusterNodeStrength:a,clusterNodeSize:o,clusterBy:s}=t,c=this.getCenterOptions(t),l=e.force(`group`);l||(l=fk(),e.force(`group`,l)),Tk(l,[[`centerX`,c&&c.x],[`centerY`,c&&c.y],[`template`,`force`],[`strength`,n],[`groupBy`,s?mw(s,[`node`]):void 0],[`nodes`,this.model.nodes()],[`links`,this.model.edges()],[`forceLinkDistance`,r],[`forceLinkStrength`,i],[`forceCharge`,a],[`forceNodeSize`,o]])}else e.force(`group`,null)}},Tk=(e,t)=>t.reduce((t,[n,r])=>!t[n]||r===void 0?t:t[n].call(e,r),e);function Ek(e){return function(){return e}}function Dk(e){var t=Ek(.1),n,r,i;typeof e!=`function`&&(e=Ek(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vz+=(i[t]-o.z)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:Ek(+e),o(),a):t},a.z=function(t){return arguments.length?(e=typeof t==`function`?t:Ek(+t),o(),a):e},a}function Ok(e){var t=Ek(.1),n,r,i;typeof e!=`function`&&(e=Ek(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vy+=(i[t]-o.y)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:Ek(+e),o(),a):t},a.y=function(t){return arguments.length?(e=typeof t==`function`?t:Ek(+t),o(),a):e},a}function kk(e){var t=Ek(.1),n,r,i;typeof e!=`function`&&(e=Ek(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vx+=(i[t]-o.x)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:Ek(+e),o(),a):t},a.x=function(t){return arguments.length?(e=typeof t==`function`?t:Ek(+t),o(),a):e},a}function Ak(e,t,n,r){var i,a,o=Ek(.1),s,c;typeof e!=`function`&&(e=Ek(+e)),t??=0,n??=0,r??=0;function l(e){for(var o=0,l=i.length;o<l;++o){var u=i[o],d=u.x-t||1e-6,f=(u.y||0)-n||1e-6,p=(u.z||0)-r||1e-6,m=Math.sqrt(d*d+f*f+p*p),h=(c[o]-m)*s[o]*e/m;u.vx+=d*h,a>1&&(u.vy+=f*h),a>2&&(u.vz+=p*h)}}function u(){if(i){var t,n=i.length;for(s=Array(n),c=Array(n),t=0;t<n;++t)c[t]=+e(i[t],t,i),s[t]=isNaN(c[t])?0:+o(i[t],t,i)}}return l.initialize=function(e,...t){i=e,a=t.find(e=>[1,2,3].includes(e))||2,u()},l.strength=function(e){return arguments.length?(o=typeof e==`function`?e:Ek(+e),u(),l):o},l.radius=function(t){return arguments.length?(e=typeof t==`function`?t:Ek(+t),u(),l):e},l.x=function(e){return arguments.length?(t=+e,l):t},l.y=function(e){return arguments.length?(n=+e,l):n},l.z=function(e){return arguments.length?(r=+e,l):r},l}function jk(e){return(e()-.5)*1e-6}function Mk(e){let t=+this._x.call(null,e);return Nk(this.cover(t),t,e)}function Nk(e,t,n){if(isNaN(t))return e;var r,i=e._root,a={data:n},o=e._x0,s=e._x1,c,l,u,d,f;if(!i)return e._root=a,e;for(;i.length;)if((u=t>=(c=(o+s)/2))?o=c:s=c,r=i,!(i=i[d=+u]))return r[d]=a,e;if(l=+e._x.call(null,i.data),t===l)return a.next=i,r?r[d]=a:e._root=a,e;do r=r?r[d]=[,,]:e._root=[,,],(u=t>=(c=(o+s)/2))?o=c:s=c;while((d=+u)==(f=+(l>=c)));return r[f]=i,r[d]=a,e}function Pk(e){Array.isArray(e)||(e=Array.from(e));let t=e.length,n=new Float64Array(t),r=1/0,i=-1/0;for(let a=0,o;a<t;++a)isNaN(o=+this._x.call(null,e[a]))||(n[a]=o,o<r&&(r=o),o>i&&(i=o));if(r>i)return this;this.cover(r).cover(i);for(let r=0;r<t;++r)Nk(this,n[r],e[r]);return this}function Fk(e){if(isNaN(e=+e))return this;var t=this._x0,n=this._x1;if(isNaN(t))n=(t=Math.floor(e))+1;else{for(var r=n-t||1,i=this._root,a,o;t>e||e>=n;)switch(o=+(e<t),a=[,,],a[o]=i,i=a,r*=2,o){case 0:n=t+r;break;case 1:t=n-r;break}this._root&&this._root.length&&(this._root=i)}return this._x0=t,this._x1=n,this}function Ik(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function Lk(e){return arguments.length?this.cover(+e[0][0]).cover(+e[1][0]):isNaN(this._x0)?void 0:[[this._x0],[this._x1]]}function Rk(e,t,n){this.node=e,this.x0=t,this.x1=n}function zk(e,t){var n,r=this._x0,i,a,o=this._x1,s=[],c=this._root,l,u;for(c&&s.push(new Rk(c,r,o)),t==null?t=1/0:(r=e-t,o=e+t);l=s.pop();)if(!(!(c=l.node)||(i=l.x0)>o||(a=l.x1)<r))if(c.length){var d=(i+a)/2;s.push(new Rk(c[1],d,a),new Rk(c[0],i,d)),(u=+(e>=d))&&(l=s[s.length-1],s[s.length-1]=s[s.length-1-u],s[s.length-1-u]=l)}else{var f=Math.abs(e-+this._x.call(null,c.data));f<t&&(t=f,r=e-f,o=e+f,n=c.data)}return n}function Bk(e){if(isNaN(c=+this._x.call(null,e)))return this;var t,n=this._root,r,i,a,o=this._x0,s=this._x1,c,l,u,d,f;if(!n)return this;if(n.length)for(;;){if((u=c>=(l=(o+s)/2))?o=l:s=l,t=n,!(n=n[d=+u]))return this;if(!n.length)break;t[d+1&1]&&(r=t,f=d)}for(;n.data!==e;)if(i=n,!(n=n.next))return this;return(a=n.next)&&delete n.next,i?(a?i.next=a:delete i.next,this):t?(a?t[d]=a:delete t[d],(n=t[0]||t[1])&&n===(t[1]||t[0])&&!n.length&&(r?r[f]=n:this._root=n),this):(this._root=a,this)}function Vk(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function Hk(){return this._root}function Uk(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function Wk(e){var t=[],n,r=this._root,i,a,o;for(r&&t.push(new Rk(r,this._x0,this._x1));n=t.pop();)if(!e(r=n.node,a=n.x0,o=n.x1)&&r.length){var s=(a+o)/2;(i=r[1])&&t.push(new Rk(i,s,o)),(i=r[0])&&t.push(new Rk(i,a,s))}return this}function Gk(e){var t=[],n=[],r;for(this._root&&t.push(new Rk(this._root,this._x0,this._x1));r=t.pop();){var i=r.node;if(i.length){var a,o=r.x0,s=r.x1,c=(o+s)/2;(a=i[0])&&t.push(new Rk(a,o,c)),(a=i[1])&&t.push(new Rk(a,c,s))}n.push(r)}for(;r=n.pop();)e(r.node,r.x0,r.x1);return this}function Kk(e){return e[0]}function qk(e){return arguments.length?(this._x=e,this):this._x}function Jk(e,t){var n=new Yk(t??Kk,NaN,NaN);return e==null?n:n.addAll(e)}function Yk(e,t,n){this._x=e,this._x0=t,this._x1=n,this._root=void 0}function Xk(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var Zk=Jk.prototype=Yk.prototype;Zk.copy=function(){var e=new Yk(this._x,this._x0,this._x1),t=this._root,n,r;if(!t)return e;if(!t.length)return e._root=Xk(t),e;for(n=[{source:t,target:e._root=[,,]}];t=n.pop();)for(var i=0;i<2;++i)(r=t.source[i])&&(r.length?n.push({source:r,target:t.target[i]=[,,]}):t.target[i]=Xk(r));return e},Zk.add=Mk,Zk.addAll=Pk,Zk.cover=Fk,Zk.data=Ik,Zk.extent=Lk,Zk.find=zk,Zk.remove=Bk,Zk.removeAll=Vk,Zk.root=Hk,Zk.size=Uk,Zk.visit=Wk,Zk.visitAfter=Gk,Zk.x=qk;function Qk(e){let t=+this._x.call(null,e),n=+this._y.call(null,e),r=+this._z.call(null,e);return $k(this.cover(t,n,r),t,n,r,e)}function $k(e,t,n,r,i){if(isNaN(t)||isNaN(n)||isNaN(r))return e;var a,o=e._root,s={data:i},c=e._x0,l=e._y0,u=e._z0,d=e._x1,f=e._y1,p=e._z1,m,h,g,_,v,y,b,x,S,C,w;if(!o)return e._root=s,e;for(;o.length;)if((b=t>=(m=(c+d)/2))?c=m:d=m,(x=n>=(h=(l+f)/2))?l=h:f=h,(S=r>=(g=(u+p)/2))?u=g:p=g,a=o,!(o=o[C=S<<2|x<<1|b]))return a[C]=s,e;if(_=+e._x.call(null,o.data),v=+e._y.call(null,o.data),y=+e._z.call(null,o.data),t===_&&n===v&&r===y)return s.next=o,a?a[C]=s:e._root=s,e;do a=a?a[C]=Array(8):e._root=Array(8),(b=t>=(m=(c+d)/2))?c=m:d=m,(x=n>=(h=(l+f)/2))?l=h:f=h,(S=r>=(g=(u+p)/2))?u=g:p=g;while((C=S<<2|x<<1|b)==(w=(y>=g)<<2|(v>=h)<<1|_>=m));return a[w]=o,a[C]=s,e}function eA(e){Array.isArray(e)||(e=Array.from(e));let t=e.length,n=new Float64Array(t),r=new Float64Array(t),i=new Float64Array(t),a=1/0,o=1/0,s=1/0,c=-1/0,l=-1/0,u=-1/0;for(let d=0,f,p,m,h;d<t;++d)isNaN(p=+this._x.call(null,f=e[d]))||isNaN(m=+this._y.call(null,f))||isNaN(h=+this._z.call(null,f))||(n[d]=p,r[d]=m,i[d]=h,p<a&&(a=p),p>c&&(c=p),m<o&&(o=m),m>l&&(l=m),h<s&&(s=h),h>u&&(u=h));if(a>c||o>l||s>u)return this;this.cover(a,o,s).cover(c,l,u);for(let a=0;a<t;++a)$k(this,n[a],r[a],i[a],e[a]);return this}function tA(e,t,n){if(isNaN(e=+e)||isNaN(t=+t)||isNaN(n=+n))return this;var r=this._x0,i=this._y0,a=this._z0,o=this._x1,s=this._y1,c=this._z1;if(isNaN(r))o=(r=Math.floor(e))+1,s=(i=Math.floor(t))+1,c=(a=Math.floor(n))+1;else{for(var l=o-r||1,u=this._root,d,f;r>e||e>=o||i>t||t>=s||a>n||n>=c;)switch(f=(n<a)<<2|(t<i)<<1|e<r,d=Array(8),d[f]=u,u=d,l*=2,f){case 0:o=r+l,s=i+l,c=a+l;break;case 1:r=o-l,s=i+l,c=a+l;break;case 2:o=r+l,i=s-l,c=a+l;break;case 3:r=o-l,i=s-l,c=a+l;break;case 4:o=r+l,s=i+l,a=c-l;break;case 5:r=o-l,s=i+l,a=c-l;break;case 6:o=r+l,i=s-l,a=c-l;break;case 7:r=o-l,i=s-l,a=c-l;break}this._root&&this._root.length&&(this._root=u)}return this._x0=r,this._y0=i,this._z0=a,this._x1=o,this._y1=s,this._z1=c,this}function nA(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function rA(e){return arguments.length?this.cover(+e[0][0],+e[0][1],+e[0][2]).cover(+e[1][0],+e[1][1],+e[1][2]):isNaN(this._x0)?void 0:[[this._x0,this._y0,this._z0],[this._x1,this._y1,this._z1]]}function iA(e,t,n,r,i,a,o){this.node=e,this.x0=t,this.y0=n,this.z0=r,this.x1=i,this.y1=a,this.z1=o}function aA(e,t,n,r){var i,a=this._x0,o=this._y0,s=this._z0,c,l,u,d,f,p,m=this._x1,h=this._y1,g=this._z1,_=[],v=this._root,y,b;for(v&&_.push(new iA(v,a,o,s,m,h,g)),r==null?r=1/0:(a=e-r,o=t-r,s=n-r,m=e+r,h=t+r,g=n+r,r*=r);y=_.pop();)if(!(!(v=y.node)||(c=y.x0)>m||(l=y.y0)>h||(u=y.z0)>g||(d=y.x1)<a||(f=y.y1)<o||(p=y.z1)<s))if(v.length){var x=(c+d)/2,S=(l+f)/2,C=(u+p)/2;_.push(new iA(v[7],x,S,C,d,f,p),new iA(v[6],c,S,C,x,f,p),new iA(v[5],x,l,C,d,S,p),new iA(v[4],c,l,C,x,S,p),new iA(v[3],x,S,u,d,f,C),new iA(v[2],c,S,u,x,f,C),new iA(v[1],x,l,u,d,S,C),new iA(v[0],c,l,u,x,S,C)),(b=(n>=C)<<2|(t>=S)<<1|e>=x)&&(y=_[_.length-1],_[_.length-1]=_[_.length-1-b],_[_.length-1-b]=y)}else{var w=e-+this._x.call(null,v.data),T=t-+this._y.call(null,v.data),E=n-+this._z.call(null,v.data),D=w*w+T*T+E*E;if(D<r){var O=Math.sqrt(r=D);a=e-O,o=t-O,s=n-O,m=e+O,h=t+O,g=n+O,i=v.data}}return i}var oA=(e,t,n,r,i,a)=>Math.sqrt((e-r)**2+(t-i)**2+(n-a)**2);function sA(e,t,n,r){let i=[],a=e-r,o=t-r,s=n-r,c=e+r,l=t+r,u=n+r;return this.visit((d,f,p,m,h,g,_)=>{if(!d.length)do{let a=d.data;oA(e,t,n,this._x(a),this._y(a),this._z(a))<=r&&i.push(a)}while(d=d.next);return f>c||p>l||m>u||h<a||g<o||_<s}),i}function cA(e){if(isNaN(f=+this._x.call(null,e))||isNaN(p=+this._y.call(null,e))||isNaN(m=+this._z.call(null,e)))return this;var t,n=this._root,r,i,a,o=this._x0,s=this._y0,c=this._z0,l=this._x1,u=this._y1,d=this._z1,f,p,m,h,g,_,v,y,b,x,S;if(!n)return this;if(n.length)for(;;){if((v=f>=(h=(o+l)/2))?o=h:l=h,(y=p>=(g=(s+u)/2))?s=g:u=g,(b=m>=(_=(c+d)/2))?c=_:d=_,t=n,!(n=n[x=b<<2|y<<1|v]))return this;if(!n.length)break;(t[x+1&7]||t[x+2&7]||t[x+3&7]||t[x+4&7]||t[x+5&7]||t[x+6&7]||t[x+7&7])&&(r=t,S=x)}for(;n.data!==e;)if(i=n,!(n=n.next))return this;return(a=n.next)&&delete n.next,i?(a?i.next=a:delete i.next,this):t?(a?t[x]=a:delete t[x],(n=t[0]||t[1]||t[2]||t[3]||t[4]||t[5]||t[6]||t[7])&&n===(t[7]||t[6]||t[5]||t[4]||t[3]||t[2]||t[1]||t[0])&&!n.length&&(r?r[S]=n:this._root=n),this):(this._root=a,this)}function lA(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function uA(){return this._root}function dA(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function fA(e){var t=[],n,r=this._root,i,a,o,s,c,l,u;for(r&&t.push(new iA(r,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));n=t.pop();)if(!e(r=n.node,a=n.x0,o=n.y0,s=n.z0,c=n.x1,l=n.y1,u=n.z1)&&r.length){var d=(a+c)/2,f=(o+l)/2,p=(s+u)/2;(i=r[7])&&t.push(new iA(i,d,f,p,c,l,u)),(i=r[6])&&t.push(new iA(i,a,f,p,d,l,u)),(i=r[5])&&t.push(new iA(i,d,o,p,c,f,u)),(i=r[4])&&t.push(new iA(i,a,o,p,d,f,u)),(i=r[3])&&t.push(new iA(i,d,f,s,c,l,p)),(i=r[2])&&t.push(new iA(i,a,f,s,d,l,p)),(i=r[1])&&t.push(new iA(i,d,o,s,c,f,p)),(i=r[0])&&t.push(new iA(i,a,o,s,d,f,p))}return this}function pA(e){var t=[],n=[],r;for(this._root&&t.push(new iA(this._root,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));r=t.pop();){var i=r.node;if(i.length){var a,o=r.x0,s=r.y0,c=r.z0,l=r.x1,u=r.y1,d=r.z1,f=(o+l)/2,p=(s+u)/2,m=(c+d)/2;(a=i[0])&&t.push(new iA(a,o,s,c,f,p,m)),(a=i[1])&&t.push(new iA(a,f,s,c,l,p,m)),(a=i[2])&&t.push(new iA(a,o,p,c,f,u,m)),(a=i[3])&&t.push(new iA(a,f,p,c,l,u,m)),(a=i[4])&&t.push(new iA(a,o,s,m,f,p,d)),(a=i[5])&&t.push(new iA(a,f,s,m,l,p,d)),(a=i[6])&&t.push(new iA(a,o,p,m,f,u,d)),(a=i[7])&&t.push(new iA(a,f,p,m,l,u,d))}n.push(r)}for(;r=n.pop();)e(r.node,r.x0,r.y0,r.z0,r.x1,r.y1,r.z1);return this}function mA(e){return e[0]}function hA(e){return arguments.length?(this._x=e,this):this._x}function gA(e){return e[1]}function _A(e){return arguments.length?(this._y=e,this):this._y}function vA(e){return e[2]}function yA(e){return arguments.length?(this._z=e,this):this._z}function bA(e,t,n,r){var i=new xA(t??mA,n??gA,r??vA,NaN,NaN,NaN,NaN,NaN,NaN);return e==null?i:i.addAll(e)}function xA(e,t,n,r,i,a,o,s,c){this._x=e,this._y=t,this._z=n,this._x0=r,this._y0=i,this._z0=a,this._x1=o,this._y1=s,this._z1=c,this._root=void 0}function SA(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var CA=bA.prototype=xA.prototype;CA.copy=function(){var e=new xA(this._x,this._y,this._z,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1),t=this._root,n,r;if(!t)return e;if(!t.length)return e._root=SA(t),e;for(n=[{source:t,target:e._root=Array(8)}];t=n.pop();)for(var i=0;i<8;++i)(r=t.source[i])&&(r.length?n.push({source:r,target:t.target[i]=Array(8)}):t.target[i]=SA(r));return e},CA.add=Qk,CA.addAll=eA,CA.cover=tA,CA.data=nA,CA.extent=rA,CA.find=aA,CA.findAllWithinRadius=sA,CA.remove=cA,CA.removeAll=lA,CA.root=uA,CA.size=dA,CA.visit=fA,CA.visitAfter=pA,CA.x=hA,CA.y=_A,CA.z=yA;function wA(e){return e.x+e.vx}function TA(e){return e.y+e.vy}function EA(e){return e.z+e.vz}function DA(e){var t,n,r,i,a=1,o=1;typeof e!=`function`&&(e=Ek(e==null?1:+e));function s(){for(var e,s=t.length,l,u,d,f,p,m,h,g=0;g<o;++g)for(l=(n===1?Jk(t,wA):n===2?ek(t,wA,TA):n===3?bA(t,wA,TA,EA):null).visitAfter(c),e=0;e<s;++e)u=t[e],m=r[u.index],h=m*m,d=u.x+u.vx,n>1&&(f=u.y+u.vy),n>2&&(p=u.z+u.vz),l.visit(_);function _(e,t,r,o,s,c,l){var g=[t,r,o,s,c,l],_=g[0],v=g[1],y=g[2],b=g[n],x=g[n+1],S=g[n+2],C=e.data,w=e.r,T=m+w;if(C){if(C.index>u.index){var E=d-C.x-C.vx,D=n>1?f-C.y-C.vy:0,O=n>2?p-C.z-C.vz:0,k=E*E+D*D+O*O;k<T*T&&(E===0&&(E=jk(i),k+=E*E),n>1&&D===0&&(D=jk(i),k+=D*D),n>2&&O===0&&(O=jk(i),k+=O*O),k=(T-(k=Math.sqrt(k)))/k*a,u.vx+=(E*=k)*(T=(w*=w)/(h+w)),n>1&&(u.vy+=(D*=k)*T),n>2&&(u.vz+=(O*=k)*T),C.vx-=E*(T=1-T),n>1&&(C.vy-=D*T),n>2&&(C.vz-=O*T))}return}return _>d+T||b<d-T||n>1&&(v>f+T||x<f-T)||n>2&&(y>p+T||S<p-T)}}function c(e){if(e.data)return e.r=r[e.data.index];for(var t=e.r=0;t<2**n;++t)e[t]&&e[t].r>e.r&&(e.r=e[t].r)}function l(){if(t){var n,i=t.length,a;for(r=Array(i),n=0;n<i;++n)a=t[n],r[a.index]=+e(a,n,t)}}return s.initialize=function(e,...r){t=e,i=r.find(e=>typeof e==`function`)||Math.random,n=r.find(e=>[1,2,3].includes(e))||2,l()},s.iterations=function(e){return arguments.length?(o=+e,s):o},s.strength=function(e){return arguments.length?(a=+e,s):a},s.radius=function(t){return arguments.length?(e=typeof t==`function`?t:Ek(+t),l(),s):e},s}function OA(e,t,n){var r,i=1;e??=0,t??=0,n??=0;function a(){var a,o=r.length,s,c=0,l=0,u=0;for(a=0;a<o;++a)s=r[a],c+=s.x||0,l+=s.y||0,u+=s.z||0;for(c=(c/o-e)*i,l=(l/o-t)*i,u=(u/o-n)*i,a=0;a<o;++a)s=r[a],c&&(s.x-=c),l&&(s.y-=l),u&&(s.z-=u)}return a.initialize=function(e){r=e},a.x=function(t){return arguments.length?(e=+t,a):e},a.y=function(e){return arguments.length?(t=+e,a):t},a.z=function(e){return arguments.length?(n=+e,a):n},a.strength=function(e){return arguments.length?(i=+e,a):i},a}var kA=1664525,AA=1013904223,jA=4294967296;function MA(){let e=1;return()=>(e=(kA*e+AA)%jA)/jA}var NA=3;function PA(e){return e.x}function FA(e){return e.y}function IA(e){return e.z}var LA=10,RA=Math.PI*(3-Math.sqrt(5)),zA=Math.PI*20/(9+Math.sqrt(221));function BA(e,t){t||=2;var n=Math.min(NA,Math.max(1,Math.round(t))),r,i=1,a=.001,o=1-a**(1/300),s=0,c=.6,l=new Map,u=hO(p),d=SO(`tick`,`end`),f=MA();e??=[];function p(){m(),d.call(`tick`,r),i<a&&(u.stop(),d.call(`end`,r))}function m(t){var a,u=e.length,d;t===void 0&&(t=1);for(var f=0;f<t;++f)for(i+=(s-i)*o,l.forEach(function(e){e(i)}),a=0;a<u;++a)d=e[a],d.fx==null?d.x+=d.vx*=c:(d.x=d.fx,d.vx=0),n>1&&(d.fy==null?d.y+=d.vy*=c:(d.y=d.fy,d.vy=0)),n>2&&(d.fz==null?d.z+=d.vz*=c:(d.z=d.fz,d.vz=0));return r}function h(){for(var t=0,r=e.length,i;t<r;++t){if(i=e[t],i.index=t,i.fx!=null&&(i.x=i.fx),i.fy!=null&&(i.y=i.fy),i.fz!=null&&(i.z=i.fz),isNaN(i.x)||n>1&&isNaN(i.y)||n>2&&isNaN(i.z)){var a=LA*(n>2?Math.cbrt(.5+t):n>1?Math.sqrt(.5+t):t),o=t*RA,s=t*zA;n===1?i.x=a:n===2?(i.x=a*Math.cos(o),i.y=a*Math.sin(o)):(i.x=a*Math.sin(o)*Math.cos(s),i.y=a*Math.cos(o),i.z=a*Math.sin(o)*Math.sin(s))}(isNaN(i.vx)||n>1&&isNaN(i.vy)||n>2&&isNaN(i.vz))&&(i.vx=0,n>1&&(i.vy=0),n>2&&(i.vz=0))}}function g(t){return t.initialize&&t.initialize(e,f,n),t}return h(),r={tick:m,restart:function(){return u.restart(p),r},stop:function(){return u.stop(),r},numDimensions:function(e){return arguments.length?(n=Math.min(NA,Math.max(1,Math.round(e))),l.forEach(g),r):n},nodes:function(t){return arguments.length?(e=t,h(),l.forEach(g),r):e},alpha:function(e){return arguments.length?(i=+e,r):i},alphaMin:function(e){return arguments.length?(a=+e,r):a},alphaDecay:function(e){return arguments.length?(o=+e,r):+o},alphaTarget:function(e){return arguments.length?(s=+e,r):s},velocityDecay:function(e){return arguments.length?(c=1-e,r):1-c},randomSource:function(e){return arguments.length?(f=e,l.forEach(g),r):f},force:function(e,t){return arguments.length>1?(t==null?l.delete(e):l.set(e,g(t)),r):l.get(e)},find:function(){var t=Array.prototype.slice.call(arguments),r=t.shift()||0,i=(n>1?t.shift():null)||0,a=(n>2?t.shift():null)||0,o=t.shift()||1/0,s=0,c=e.length,l,u,d,f,p,m;for(o*=o,s=0;s<c;++s)p=e[s],l=r-p.x,u=i-(p.y||0),d=a-(p.z||0),f=l*l+u*u+d*d,f<o&&(m=p,o=f);return m},on:function(e,t){return arguments.length>1?(d.on(e,t),r):d.on(e)}}}function VA(){var e,t,n,r,i,a=Ek(-30),o,s=1,c=1/0,l=.81;function u(r){var a,o=e.length,s=(t===1?Jk(e,PA):t===2?ek(e,PA,FA):t===3?bA(e,PA,FA,IA):null).visitAfter(f);for(i=r,a=0;a<o;++a)n=e[a],s.visit(p)}function d(){if(e){var t,n=e.length,r;for(o=Array(n),t=0;t<n;++t)r=e[t],o[r.index]=+a(r,t,e)}}function f(e){var n=0,r,i,a=0,s,c,l,u,d=e.length;if(d){for(s=c=l=u=0;u<d;++u)(r=e[u])&&(i=Math.abs(r.value))&&(n+=r.value,a+=i,s+=i*(r.x||0),c+=i*(r.y||0),l+=i*(r.z||0));n*=Math.sqrt(4/d),e.x=s/a,t>1&&(e.y=c/a),t>2&&(e.z=l/a)}else{r=e,r.x=r.data.x,t>1&&(r.y=r.data.y),t>2&&(r.z=r.data.z);do n+=o[r.data.index];while(r=r.next)}e.value=n}function p(e,a,u,d,f){if(!e.value)return!0;var p=[u,d,f][t-1],m=e.x-n.x,h=t>1?e.y-n.y:0,g=t>2?e.z-n.z:0,_=p-a,v=m*m+h*h+g*g;if(_*_/l<v)return v<c&&(m===0&&(m=jk(r),v+=m*m),t>1&&h===0&&(h=jk(r),v+=h*h),t>2&&g===0&&(g=jk(r),v+=g*g),v<s&&(v=Math.sqrt(s*v)),n.vx+=m*e.value*i/v,t>1&&(n.vy+=h*e.value*i/v),t>2&&(n.vz+=g*e.value*i/v)),!0;if(!(e.length||v>=c)){(e.data!==n||e.next)&&(m===0&&(m=jk(r),v+=m*m),t>1&&h===0&&(h=jk(r),v+=h*h),t>2&&g===0&&(g=jk(r),v+=g*g),v<s&&(v=Math.sqrt(s*v)));do e.data!==n&&(_=o[e.data.index]*i/v,n.vx+=m*_,t>1&&(n.vy+=h*_),t>2&&(n.vz+=g*_));while(e=e.next)}}return u.initialize=function(n,...i){e=n,r=i.find(e=>typeof e==`function`)||Math.random,t=i.find(e=>[1,2,3].includes(e))||2,d()},u.strength=function(e){return arguments.length?(a=typeof e==`function`?e:Ek(+e),d(),u):a},u.distanceMin=function(e){return arguments.length?(s=e*e,u):Math.sqrt(s)},u.distanceMax=function(e){return arguments.length?(c=e*e,u):Math.sqrt(c)},u.theta=function(e){return arguments.length?(l=e*e,u):Math.sqrt(l)},u}function HA(e){return e.index}function UA(e,t){var n=e.get(t);if(!n)throw Error(`node not found: `+t);return n}function WA(e){var t=HA,n=f,r,i=Ek(30),a,o,s,c,l,u,d=1;e??=[];function f(e){return 1/Math.min(c[e.source.index],c[e.target.index])}function p(t){for(var n=0,i=e.length;n<d;++n)for(var o=0,c,f,p,m=0,h=0,g=0,_,v;o<i;++o)c=e[o],f=c.source,p=c.target,m=p.x+p.vx-f.x-f.vx||jk(u),s>1&&(h=p.y+p.vy-f.y-f.vy||jk(u)),s>2&&(g=p.z+p.vz-f.z-f.vz||jk(u)),_=Math.sqrt(m*m+h*h+g*g),_=(_-a[o])/_*t*r[o],m*=_,h*=_,g*=_,p.vx-=m*(v=l[o]),s>1&&(p.vy-=h*v),s>2&&(p.vz-=g*v),f.vx+=m*(v=1-v),s>1&&(f.vy+=h*v),s>2&&(f.vz+=g*v)}function m(){if(o){var n,i=o.length,s=e.length,u=new Map(o.map((e,n)=>[t(e,n,o),e])),d;for(n=0,c=Array(i);n<s;++n)d=e[n],d.index=n,typeof d.source!=`object`&&(d.source=UA(u,d.source)),typeof d.target!=`object`&&(d.target=UA(u,d.target)),c[d.source.index]=(c[d.source.index]||0)+1,c[d.target.index]=(c[d.target.index]||0)+1;for(n=0,l=Array(s);n<s;++n)d=e[n],l[n]=c[d.source.index]/(c[d.source.index]+c[d.target.index]);r=Array(s),h(),a=Array(s),g()}}function h(){if(o)for(var t=0,i=e.length;t<i;++t)r[t]=+n(e[t],t,e)}function g(){if(o)for(var t=0,n=e.length;t<n;++t)a[t]=+i(e[t],t,e)}return p.initialize=function(e,...t){o=e,u=t.find(e=>typeof e==`function`)||Math.random,s=t.find(e=>[1,2,3].includes(e))||2,m()},p.links=function(t){return arguments.length?(e=t,m(),p):e},p.id=function(e){return arguments.length?(t=e,p):t},p.iterations=function(e){return arguments.length?(d=+e,p):d},p.strength=function(e){return arguments.length?(n=typeof e==`function`?e:Ek(+e),h(),p):n},p.distance=function(e){return arguments.length?(i=typeof e==`function`?e:Ek(+e),g(),p):i},p}var GA=class extends wk{constructor(){super(...arguments),this.id=`d3-force-3d`,this.config={simulationAttrs:[`alpha`,`alphaMin`,`alphaDecay`,`alphaTarget`,`velocityDecay`,`randomSource`,`numDimensions`]},this.forceMap={link:WA,manyBody:VA,center:OA,collide:DA,radial:Ak,x:kk,y:Ok,z:Dk}}getDefaultOptions(){return{numDimensions:3,link:{id:e=>e.id},manyBody:{},center:{x:0,y:0,z:0}}}initSimulation(){return BA()}setupForces(e,t){Object.entries(this.forceMap).forEach(([n,r])=>{let i=n;if(t[n]){let n=e.force(i);n||(n=r(),e.force(i,n)),Tk(n,Object.entries(t[i]))}else e.force(i,null)})}},KA=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{};function qA(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}function JA(e){if(Object.prototype.hasOwnProperty.call(e,`__esModule`))return e;var t=e.default;if(typeof t==`function`){var n=function e(){var n=!1;try{n=this instanceof e}catch{}return n?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,`__esModule`,{value:!0}),Object.keys(e).forEach(function(t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}),n}function YA(e){throw Error(`Could not dynamically require "`+e+`". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.`)}var XA,ZA;function QA(){if(ZA)return XA;ZA=1;function e(){this.__data__=[],this.size=0}return XA=e,XA}var $A,ej;function tj(){if(ej)return $A;ej=1;function e(e,t){return e===t||e!==e&&t!==t}return $A=e,$A}var nj,rj;function ij(){if(rj)return nj;rj=1;var e=tj();function t(t,n){for(var r=t.length;r--;)if(e(t[r][0],n))return r;return-1}return nj=t,nj}var aj,oj;function sj(){if(oj)return aj;oj=1;var e=ij(),t=Array.prototype.splice;function n(n){var r=this.__data__,i=e(r,n);return i<0?!1:(i==r.length-1?r.pop():t.call(r,i,1),--this.size,!0)}return aj=n,aj}var cj,lj;function uj(){if(lj)return cj;lj=1;var e=ij();function t(t){var n=this.__data__,r=e(n,t);return r<0?void 0:n[r][1]}return cj=t,cj}var dj,fj;function pj(){if(fj)return dj;fj=1;var e=ij();function t(t){return e(this.__data__,t)>-1}return dj=t,dj}var mj,hj;function gj(){if(hj)return mj;hj=1;var e=ij();function t(t,n){var r=this.__data__,i=e(r,t);return i<0?(++this.size,r.push([t,n])):r[i][1]=n,this}return mj=t,mj}var _j,vj;function yj(){if(vj)return _j;vj=1;var e=QA(),t=sj(),n=uj(),r=pj(),i=gj();function a(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}return a.prototype.clear=e,a.prototype.delete=t,a.prototype.get=n,a.prototype.has=r,a.prototype.set=i,_j=a,_j}var bj,xj;function Sj(){if(xj)return bj;xj=1;var e=yj();function t(){this.__data__=new e,this.size=0}return bj=t,bj}var Cj,wj;function Tj(){if(wj)return Cj;wj=1;function e(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}return Cj=e,Cj}var Ej,Dj;function Oj(){if(Dj)return Ej;Dj=1;function e(e){return this.__data__.get(e)}return Ej=e,Ej}var kj,Aj;function jj(){if(Aj)return kj;Aj=1;function e(e){return this.__data__.has(e)}return kj=e,kj}var Mj,Nj;function Pj(){return Nj?Mj:(Nj=1,Mj=typeof KA==`object`&&KA&&KA.Object===Object&&KA,Mj)}var Fj,Ij;function Lj(){if(Ij)return Fj;Ij=1;var e=Pj(),t=typeof self==`object`&&self&&self.Object===Object&&self;return Fj=e||t||Function(`return this`)(),Fj}var Rj,zj;function Bj(){return zj?Rj:(zj=1,Rj=Lj().Symbol,Rj)}var Vj,Hj;function Uj(){if(Hj)return Vj;Hj=1;var e=Bj(),t=Object.prototype,n=t.hasOwnProperty,r=t.toString,i=e?e.toStringTag:void 0;function a(e){var t=n.call(e,i),a=e[i];try{e[i]=void 0;var o=!0}catch{}var s=r.call(e);return o&&(t?e[i]=a:delete e[i]),s}return Vj=a,Vj}var Wj,Gj;function Kj(){if(Gj)return Wj;Gj=1;var e=Object.prototype.toString;function t(t){return e.call(t)}return Wj=t,Wj}var qj,Jj;function Yj(){if(Jj)return qj;Jj=1;var e=Bj(),t=Uj(),n=Kj(),r=`[object Null]`,i=`[object Undefined]`,a=e?e.toStringTag:void 0;function o(e){return e==null?e===void 0?i:r:a&&a in Object(e)?t(e):n(e)}return qj=o,qj}var Xj,Zj;function Qj(){if(Zj)return Xj;Zj=1;function e(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}return Xj=e,Xj}var $j,eM;function tM(){if(eM)return $j;eM=1;var e=Yj(),t=Qj(),n=`[object AsyncFunction]`,r=`[object Function]`,i=`[object GeneratorFunction]`,a=`[object Proxy]`;function o(o){if(!t(o))return!1;var s=e(o);return s==r||s==i||s==n||s==a}return $j=o,$j}var nM,rM;function iM(){return rM?nM:(rM=1,nM=Lj()[`__core-js_shared__`],nM)}var aM,oM;function sM(){if(oM)return aM;oM=1;var e=iM(),t=function(){var t=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||``);return t?`Symbol(src)_1.`+t:``}();function n(e){return!!t&&t in e}return aM=n,aM}var cM,lM;function uM(){if(lM)return cM;lM=1;var e=Function.prototype.toString;function t(t){if(t!=null){try{return e.call(t)}catch{}try{return t+``}catch{}}return``}return cM=t,cM}var dM,fM;function pM(){if(fM)return dM;fM=1;var e=tM(),t=sM(),n=Qj(),r=uM(),i=/[\\^$.*+?()[\]{}|]/g,a=/^\[object .+?Constructor\]$/,o=Function.prototype,s=Object.prototype,c=o.toString,l=s.hasOwnProperty,u=RegExp(`^`+c.call(l).replace(i,`\\$&`).replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,`$1.*?`)+`$`);function d(i){return!n(i)||t(i)?!1:(e(i)?u:a).test(r(i))}return dM=d,dM}var mM,hM;function gM(){if(hM)return mM;hM=1;function e(e,t){return e?.[t]}return mM=e,mM}var _M,vM;function yM(){if(vM)return _M;vM=1;var e=pM(),t=gM();function n(n,r){var i=t(n,r);return e(i)?i:void 0}return _M=n,_M}var bM,xM;function SM(){return xM?bM:(xM=1,bM=yM()(Lj(),`Map`),bM)}var CM,wM;function TM(){return wM?CM:(wM=1,CM=yM()(Object,`create`),CM)}var EM,DM;function OM(){if(DM)return EM;DM=1;var e=TM();function t(){this.__data__=e?e(null):{},this.size=0}return EM=t,EM}var kM,AM;function jM(){if(AM)return kM;AM=1;function e(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=+!!t,t}return kM=e,kM}var MM,NM;function PM(){if(NM)return MM;NM=1;var e=TM(),t=`__lodash_hash_undefined__`,n=Object.prototype.hasOwnProperty;function r(r){var i=this.__data__;if(e){var a=i[r];return a===t?void 0:a}return n.call(i,r)?i[r]:void 0}return MM=r,MM}var FM,IM;function LM(){if(IM)return FM;IM=1;var e=TM(),t=Object.prototype.hasOwnProperty;function n(n){var r=this.__data__;return e?r[n]!==void 0:t.call(r,n)}return FM=n,FM}var RM,zM;function BM(){if(zM)return RM;zM=1;var e=TM(),t=`__lodash_hash_undefined__`;function n(n,r){var i=this.__data__;return this.size+=+!this.has(n),i[n]=e&&r===void 0?t:r,this}return RM=n,RM}var VM,HM;function UM(){if(HM)return VM;HM=1;var e=OM(),t=jM(),n=PM(),r=LM(),i=BM();function a(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}return a.prototype.clear=e,a.prototype.delete=t,a.prototype.get=n,a.prototype.has=r,a.prototype.set=i,VM=a,VM}var WM,GM;function KM(){if(GM)return WM;GM=1;var e=UM(),t=yj(),n=SM();function r(){this.size=0,this.__data__={hash:new e,map:new(n||t),string:new e}}return WM=r,WM}var qM,JM;function YM(){if(JM)return qM;JM=1;function e(e){var t=typeof e;return t==`string`||t==`number`||t==`symbol`||t==`boolean`?e!==`__proto__`:e===null}return qM=e,qM}var XM,ZM;function QM(){if(ZM)return XM;ZM=1;var e=YM();function t(t,n){var r=t.__data__;return e(n)?r[typeof n==`string`?`string`:`hash`]:r.map}return XM=t,XM}var $M,eN;function tN(){if(eN)return $M;eN=1;var e=QM();function t(t){var n=e(this,t).delete(t);return this.size-=+!!n,n}return $M=t,$M}var nN,rN;function iN(){if(rN)return nN;rN=1;var e=QM();function t(t){return e(this,t).get(t)}return nN=t,nN}var aN,oN;function sN(){if(oN)return aN;oN=1;var e=QM();function t(t){return e(this,t).has(t)}return aN=t,aN}var cN,lN;function uN(){if(lN)return cN;lN=1;var e=QM();function t(t,n){var r=e(this,t),i=r.size;return r.set(t,n),this.size+=r.size==i?0:1,this}return cN=t,cN}var dN,fN;function pN(){if(fN)return dN;fN=1;var e=KM(),t=tN(),n=iN(),r=sN(),i=uN();function a(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}return a.prototype.clear=e,a.prototype.delete=t,a.prototype.get=n,a.prototype.has=r,a.prototype.set=i,dN=a,dN}var mN,hN;function gN(){if(hN)return mN;hN=1;var e=yj(),t=SM(),n=pN(),r=200;function i(i,a){var o=this.__data__;if(o instanceof e){var s=o.__data__;if(!t||s.length<r-1)return s.push([i,a]),this.size=++o.size,this;o=this.__data__=new n(s)}return o.set(i,a),this.size=o.size,this}return mN=i,mN}var _N,vN;function yN(){if(vN)return _N;vN=1;var e=yj(),t=Sj(),n=Tj(),r=Oj(),i=jj(),a=gN();function o(t){var n=this.__data__=new e(t);this.size=n.size}return o.prototype.clear=t,o.prototype.delete=n,o.prototype.get=r,o.prototype.has=i,o.prototype.set=a,_N=o,_N}var bN,xN;function SN(){if(xN)return bN;xN=1;function e(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}return bN=e,bN}var CN,wN;function TN(){if(wN)return CN;wN=1;var e=yM();return CN=function(){try{var t=e(Object,`defineProperty`);return t({},``,{}),t}catch{}}(),CN}var EN,DN;function ON(){if(DN)return EN;DN=1;var e=TN();function t(t,n,r){n==`__proto__`&&e?e(t,n,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[n]=r}return EN=t,EN}var kN,AN;function jN(){if(AN)return kN;AN=1;var e=ON(),t=tj(),n=Object.prototype.hasOwnProperty;function r(r,i,a){var o=r[i];(!(n.call(r,i)&&t(o,a))||a===void 0&&!(i in r))&&e(r,i,a)}return kN=r,kN}var MN,NN;function PN(){if(NN)return MN;NN=1;var e=jN(),t=ON();function n(n,r,i,a){var o=!i;i||={};for(var s=-1,c=r.length;++s<c;){var l=r[s],u=a?a(i[l],n[l],l,i,n):void 0;u===void 0&&(u=n[l]),o?t(i,l,u):e(i,l,u)}return i}return MN=n,MN}var FN,IN;function LN(){if(IN)return FN;IN=1;function e(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}return FN=e,FN}var RN,zN;function BN(){if(zN)return RN;zN=1;function e(e){return typeof e==`object`&&!!e}return RN=e,RN}var VN,HN;function UN(){if(HN)return VN;HN=1;var e=Yj(),t=BN(),n=`[object Arguments]`;function r(r){return t(r)&&e(r)==n}return VN=r,VN}var WN,GN;function KN(){if(GN)return WN;GN=1;var e=UN(),t=BN(),n=Object.prototype,r=n.hasOwnProperty,i=n.propertyIsEnumerable;return WN=e(function(){return arguments}())?e:function(e){return t(e)&&r.call(e,`callee`)&&!i.call(e,`callee`)},WN}var qN,JN;function YN(){return JN?qN:(JN=1,qN=Array.isArray,qN)}var XN={exports:{}},ZN,QN;function $N(){if(QN)return ZN;QN=1;function e(){return!1}return ZN=e,ZN}XN.exports;var eP;function tP(){return eP?XN.exports:(eP=1,(function(e,t){var n=Lj(),r=$N(),i=t&&!t.nodeType&&t,a=i&&e&&!e.nodeType&&e,o=a&&a.exports===i?n.Buffer:void 0;e.exports=(o?o.isBuffer:void 0)||r})(XN,XN.exports),XN.exports)}var nP,rP;function iP(){if(rP)return nP;rP=1;var e=9007199254740991,t=/^(?:0|[1-9]\d*)$/;function n(n,r){var i=typeof n;return r??=e,!!r&&(i==`number`||i!=`symbol`&&t.test(n))&&n>-1&&n%1==0&&n<r}return nP=n,nP}var aP,oP;function sP(){if(oP)return aP;oP=1;var e=9007199254740991;function t(t){return typeof t==`number`&&t>-1&&t%1==0&&t<=e}return aP=t,aP}var cP,lP;function uP(){if(lP)return cP;lP=1;var e=Yj(),t=sP(),n=BN(),r=`[object Arguments]`,i=`[object Array]`,a=`[object Boolean]`,o=`[object Date]`,s=`[object Error]`,c=`[object Function]`,l=`[object Map]`,u=`[object Number]`,d=`[object Object]`,f=`[object RegExp]`,p=`[object Set]`,m=`[object String]`,h=`[object WeakMap]`,g=`[object ArrayBuffer]`,_=`[object DataView]`,v=`[object Float32Array]`,y=`[object Float64Array]`,b=`[object Int8Array]`,x=`[object Int16Array]`,S=`[object Int32Array]`,C=`[object Uint8Array]`,w=`[object Uint8ClampedArray]`,T=`[object Uint16Array]`,E=`[object Uint32Array]`,D={};D[v]=D[y]=D[b]=D[x]=D[S]=D[C]=D[w]=D[T]=D[E]=!0,D[r]=D[i]=D[g]=D[a]=D[_]=D[o]=D[s]=D[c]=D[l]=D[u]=D[d]=D[f]=D[p]=D[m]=D[h]=!1;function O(r){return n(r)&&t(r.length)&&!!D[e(r)]}return cP=O,cP}var dP,fP;function pP(){if(fP)return dP;fP=1;function e(e){return function(t){return e(t)}}return dP=e,dP}var mP={exports:{}};mP.exports;var hP;function gP(){return hP?mP.exports:(hP=1,(function(e,t){var n=Pj(),r=t&&!t.nodeType&&t,i=r&&e&&!e.nodeType&&e,a=i&&i.exports===r&&n.process;e.exports=function(){try{return i&&i.require&&i.require(`util`).types||a&&a.binding&&a.binding(`util`)}catch{}}()})(mP,mP.exports),mP.exports)}var _P,vP;function yP(){if(vP)return _P;vP=1;var e=uP(),t=pP(),n=gP(),r=n&&n.isTypedArray;return _P=r?t(r):e,_P}var bP,xP;function SP(){if(xP)return bP;xP=1;var e=LN(),t=KN(),n=YN(),r=tP(),i=iP(),a=yP(),o=Object.prototype.hasOwnProperty;function s(s,c){var l=n(s),u=!l&&t(s),d=!l&&!u&&r(s),f=!l&&!u&&!d&&a(s),p=l||u||d||f,m=p?e(s.length,String):[],h=m.length;for(var g in s)(c||o.call(s,g))&&!(p&&(g==`length`||d&&(g==`offset`||g==`parent`)||f&&(g==`buffer`||g==`byteLength`||g==`byteOffset`)||i(g,h)))&&m.push(g);return m}return bP=s,bP}var CP,wP;function TP(){if(wP)return CP;wP=1;var e=Object.prototype;function t(t){var n=t&&t.constructor;return t===(typeof n==`function`&&n.prototype||e)}return CP=t,CP}var EP,DP;function OP(){if(DP)return EP;DP=1;function e(e,t){return function(n){return e(t(n))}}return EP=e,EP}var kP,AP;function jP(){return AP?kP:(AP=1,kP=OP()(Object.keys,Object),kP)}var MP,NP;function PP(){if(NP)return MP;NP=1;var e=TP(),t=jP(),n=Object.prototype.hasOwnProperty;function r(r){if(!e(r))return t(r);var i=[];for(var a in Object(r))n.call(r,a)&&a!=`constructor`&&i.push(a);return i}return MP=r,MP}var FP,IP;function LP(){if(IP)return FP;IP=1;var e=tM(),t=sP();function n(n){return n!=null&&t(n.length)&&!e(n)}return FP=n,FP}var RP,zP;function BP(){if(zP)return RP;zP=1;var e=SP(),t=PP(),n=LP();function r(r){return n(r)?e(r):t(r)}return RP=r,RP}var VP,HP;function UP(){if(HP)return VP;HP=1;var e=PN(),t=BP();function n(n,r){return n&&e(r,t(r),n)}return VP=n,VP}var WP,GP;function KP(){if(GP)return WP;GP=1;function e(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}return WP=e,WP}var qP,JP;function YP(){if(JP)return qP;JP=1;var e=Qj(),t=TP(),n=KP(),r=Object.prototype.hasOwnProperty;function i(i){if(!e(i))return n(i);var a=t(i),o=[];for(var s in i)s==`constructor`&&(a||!r.call(i,s))||o.push(s);return o}return qP=i,qP}var XP,ZP;function QP(){if(ZP)return XP;ZP=1;var e=SP(),t=YP(),n=LP();function r(r){return n(r)?e(r,!0):t(r)}return XP=r,XP}var $P,eF;function tF(){if(eF)return $P;eF=1;var e=PN(),t=QP();function n(n,r){return n&&e(r,t(r),n)}return $P=n,$P}var nF={exports:{}};nF.exports;var rF;function iF(){return rF?nF.exports:(rF=1,(function(e,t){var n=Lj(),r=t&&!t.nodeType&&t,i=r&&e&&!e.nodeType&&e,a=i&&i.exports===r?n.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(e,t){if(t)return e.slice();var n=e.length,r=o?o(n):new e.constructor(n);return e.copy(r),r}e.exports=s})(nF,nF.exports),nF.exports)}var aF,oF;function sF(){if(oF)return aF;oF=1;function e(e,t){var n=-1,r=e.length;for(t||=Array(r);++n<r;)t[n]=e[n];return t}return aF=e,aF}var cF,lF;function uF(){if(lF)return cF;lF=1;function e(e,t){for(var n=-1,r=e==null?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}return cF=e,cF}var dF,fF;function pF(){if(fF)return dF;fF=1;function e(){return[]}return dF=e,dF}var mF,hF;function gF(){if(hF)return mF;hF=1;var e=uF(),t=pF(),n=Object.prototype.propertyIsEnumerable,r=Object.getOwnPropertySymbols;return mF=r?function(t){return t==null?[]:(t=Object(t),e(r(t),function(e){return n.call(t,e)}))}:t,mF}var _F,vF;function yF(){if(vF)return _F;vF=1;var e=PN(),t=gF();function n(n,r){return e(n,t(n),r)}return _F=n,_F}var bF,xF;function SF(){if(xF)return bF;xF=1;function e(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}return bF=e,bF}var CF,wF;function TF(){return wF?CF:(wF=1,CF=OP()(Object.getPrototypeOf,Object),CF)}var EF,DF;function OF(){if(DF)return EF;DF=1;var e=SF(),t=TF(),n=gF(),r=pF();return EF=Object.getOwnPropertySymbols?function(r){for(var i=[];r;)e(i,n(r)),r=t(r);return i}:r,EF}var kF,AF;function jF(){if(AF)return kF;AF=1;var e=PN(),t=OF();function n(n,r){return e(n,t(n),r)}return kF=n,kF}var MF,NF;function PF(){if(NF)return MF;NF=1;var e=SF(),t=YN();function n(n,r,i){var a=r(n);return t(n)?a:e(a,i(n))}return MF=n,MF}var FF,IF;function LF(){if(IF)return FF;IF=1;var e=PF(),t=gF(),n=BP();function r(r){return e(r,n,t)}return FF=r,FF}var RF,zF;function BF(){if(zF)return RF;zF=1;var e=PF(),t=OF(),n=QP();function r(r){return e(r,n,t)}return RF=r,RF}var VF,HF;function UF(){return HF?VF:(HF=1,VF=yM()(Lj(),`DataView`),VF)}var WF,GF;function KF(){return GF?WF:(GF=1,WF=yM()(Lj(),`Promise`),WF)}var qF,JF;function YF(){return JF?qF:(JF=1,qF=yM()(Lj(),`Set`),qF)}var XF,ZF;function QF(){return ZF?XF:(ZF=1,XF=yM()(Lj(),`WeakMap`),XF)}var $F,eI;function tI(){if(eI)return $F;eI=1;var e=UF(),t=SM(),n=KF(),r=YF(),i=QF(),a=Yj(),o=uM(),s=`[object Map]`,c=`[object Object]`,l=`[object Promise]`,u=`[object Set]`,d=`[object WeakMap]`,f=`[object DataView]`,p=o(e),m=o(t),h=o(n),g=o(r),_=o(i),v=a;return(e&&v(new e(new ArrayBuffer(1)))!=f||t&&v(new t)!=s||n&&v(n.resolve())!=l||r&&v(new r)!=u||i&&v(new i)!=d)&&(v=function(e){var t=a(e),n=t==c?e.constructor:void 0,r=n?o(n):``;if(r)switch(r){case p:return f;case m:return s;case h:return l;case g:return u;case _:return d}return t}),$F=v,$F}var nI,rI;function iI(){if(rI)return nI;rI=1;var e=Object.prototype.hasOwnProperty;function t(t){var n=t.length,r=new t.constructor(n);return n&&typeof t[0]==`string`&&e.call(t,`index`)&&(r.index=t.index,r.input=t.input),r}return nI=t,nI}var aI,oI;function sI(){return oI?aI:(oI=1,aI=Lj().Uint8Array,aI)}var cI,lI;function uI(){if(lI)return cI;lI=1;var e=sI();function t(t){var n=new t.constructor(t.byteLength);return new e(n).set(new e(t)),n}return cI=t,cI}var dI,fI;function pI(){if(fI)return dI;fI=1;var e=uI();function t(t,n){var r=n?e(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}return dI=t,dI}var mI,hI;function gI(){if(hI)return mI;hI=1;var e=/\w*$/;function t(t){var n=new t.constructor(t.source,e.exec(t));return n.lastIndex=t.lastIndex,n}return mI=t,mI}var _I,vI;function yI(){if(vI)return _I;vI=1;var e=Bj(),t=e?e.prototype:void 0,n=t?t.valueOf:void 0;function r(e){return n?Object(n.call(e)):{}}return _I=r,_I}var bI,xI;function SI(){if(xI)return bI;xI=1;var e=uI();function t(t,n){var r=n?e(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}return bI=t,bI}var CI,wI;function TI(){if(wI)return CI;wI=1;var e=uI(),t=pI(),n=gI(),r=yI(),i=SI(),a=`[object Boolean]`,o=`[object Date]`,s=`[object Map]`,c=`[object Number]`,l=`[object RegExp]`,u=`[object Set]`,d=`[object String]`,f=`[object Symbol]`,p=`[object ArrayBuffer]`,m=`[object DataView]`,h=`[object Float32Array]`,g=`[object Float64Array]`,_=`[object Int8Array]`,v=`[object Int16Array]`,y=`[object Int32Array]`,b=`[object Uint8Array]`,x=`[object Uint8ClampedArray]`,S=`[object Uint16Array]`,C=`[object Uint32Array]`;function w(w,T,E){var D=w.constructor;switch(T){case p:return e(w);case a:case o:return new D(+w);case m:return t(w,E);case h:case g:case _:case v:case y:case b:case x:case S:case C:return i(w,E);case s:return new D;case c:case d:return new D(w);case l:return n(w);case u:return new D;case f:return r(w)}}return CI=w,CI}var EI,DI;function OI(){if(DI)return EI;DI=1;var e=Qj(),t=Object.create;return EI=function(){function n(){}return function(r){if(!e(r))return{};if(t)return t(r);n.prototype=r;var i=new n;return n.prototype=void 0,i}}(),EI}var kI,AI;function jI(){if(AI)return kI;AI=1;var e=OI(),t=TF(),n=TP();function r(r){return typeof r.constructor==`function`&&!n(r)?e(t(r)):{}}return kI=r,kI}var MI,NI;function PI(){if(NI)return MI;NI=1;var e=tI(),t=BN(),n=`[object Map]`;function r(r){return t(r)&&e(r)==n}return MI=r,MI}var FI,II;function LI(){if(II)return FI;II=1;var e=PI(),t=pP(),n=gP(),r=n&&n.isMap;return FI=r?t(r):e,FI}var RI,zI;function BI(){if(zI)return RI;zI=1;var e=tI(),t=BN(),n=`[object Set]`;function r(r){return t(r)&&e(r)==n}return RI=r,RI}var VI,HI;function UI(){if(HI)return VI;HI=1;var e=BI(),t=pP(),n=gP(),r=n&&n.isSet;return VI=r?t(r):e,VI}var WI,GI;function KI(){if(GI)return WI;GI=1;var e=yN(),t=SN(),n=jN(),r=UP(),i=tF(),a=iF(),o=sF(),s=yF(),c=jF(),l=LF(),u=BF(),d=tI(),f=iI(),p=TI(),m=jI(),h=YN(),g=tP(),_=LI(),v=Qj(),y=UI(),b=BP(),x=QP(),S=1,C=2,w=4,T=`[object Arguments]`,E=`[object Array]`,D=`[object Boolean]`,O=`[object Date]`,k=`[object Error]`,A=`[object Function]`,j=`[object GeneratorFunction]`,ee=`[object Map]`,te=`[object Number]`,M=`[object Object]`,ne=`[object RegExp]`,re=`[object Set]`,ie=`[object String]`,N=`[object Symbol]`,P=`[object WeakMap]`,ae=`[object ArrayBuffer]`,F=`[object DataView]`,oe=`[object Float32Array]`,se=`[object Float64Array]`,ce=`[object Int8Array]`,le=`[object Int16Array]`,ue=`[object Int32Array]`,de=`[object Uint8Array]`,fe=`[object Uint8ClampedArray]`,pe=`[object Uint16Array]`,me=`[object Uint32Array]`,I={};I[T]=I[E]=I[ae]=I[F]=I[D]=I[O]=I[oe]=I[se]=I[ce]=I[le]=I[ue]=I[ee]=I[te]=I[M]=I[ne]=I[re]=I[ie]=I[N]=I[de]=I[fe]=I[pe]=I[me]=!0,I[k]=I[A]=I[P]=!1;function he(E,D,O,k,ee,te){var ne,re=D&S,ie=D&C,N=D&w;if(O&&(ne=ee?O(E,k,ee,te):O(E)),ne!==void 0)return ne;if(!v(E))return E;var P=h(E);if(P){if(ne=f(E),!re)return o(E,ne)}else{var ae=d(E),F=ae==A||ae==j;if(g(E))return a(E,re);if(ae==M||ae==T||F&&!ee){if(ne=ie||F?{}:m(E),!re)return ie?c(E,i(ne,E)):s(E,r(ne,E))}else{if(!I[ae])return ee?E:{};ne=p(E,ae,re)}}te||=new e;var oe=te.get(E);if(oe)return oe;te.set(E,ne),y(E)?E.forEach(function(e){ne.add(he(e,D,O,e,E,te))}):_(E)&&E.forEach(function(e,t){ne.set(t,he(e,D,O,t,E,te))});var se=P?void 0:(N?ie?u:l:ie?x:b)(E);return t(se||E,function(e,t){se&&(t=e,e=E[t]),n(ne,t,he(e,D,O,t,E,te))}),ne}return WI=he,WI}var qI,JI;function YI(){if(JI)return qI;JI=1;var e=KI(),t=4;function n(n){return e(n,t)}return qI=n,qI}var XI,ZI;function QI(){if(ZI)return XI;ZI=1;function e(e){return function(){return e}}return XI=e,XI}var $I,eL;function tL(){if(eL)return $I;eL=1;function e(e){return function(t,n,r){for(var i=-1,a=Object(t),o=r(t),s=o.length;s--;){var c=o[e?s:++i];if(n(a[c],c,a)===!1)break}return t}}return $I=e,$I}var nL,rL;function iL(){return rL?nL:(rL=1,nL=tL()(),nL)}var aL,oL;function sL(){if(oL)return aL;oL=1;var e=iL(),t=BP();function n(n,r){return n&&e(n,r,t)}return aL=n,aL}var cL,lL;function uL(){if(lL)return cL;lL=1;var e=LP();function t(t,n){return function(r,i){if(r==null)return r;if(!e(r))return t(r,i);for(var a=r.length,o=n?a:-1,s=Object(r);(n?o--:++o<a)&&i(s[o],o,s)!==!1;);return r}}return cL=t,cL}var dL,fL;function pL(){if(fL)return dL;fL=1;var e=sL();return dL=uL()(e),dL}var mL,hL;function gL(){if(hL)return mL;hL=1;function e(e){return e}return mL=e,mL}var _L,vL;function yL(){if(vL)return _L;vL=1;var e=gL();function t(t){return typeof t==`function`?t:e}return _L=t,_L}var bL,xL;function SL(){if(xL)return bL;xL=1;var e=SN(),t=pL(),n=yL(),r=YN();function i(i,a){return(r(i)?e:t)(i,n(a))}return bL=i,bL}var CL,wL;function TL(){return wL?CL:(wL=1,CL=SL(),CL)}var EL,DL;function OL(){if(DL)return EL;DL=1;var e=pL();function t(t,n){var r=[];return e(t,function(e,t,i){n(e,t,i)&&r.push(e)}),r}return EL=t,EL}var kL,AL;function jL(){if(AL)return kL;AL=1;var e=`__lodash_hash_undefined__`;function t(t){return this.__data__.set(t,e),this}return kL=t,kL}var ML,NL;function PL(){if(NL)return ML;NL=1;function e(e){return this.__data__.has(e)}return ML=e,ML}var FL,IL;function LL(){if(IL)return FL;IL=1;var e=pN(),t=jL(),n=PL();function r(t){var n=-1,r=t==null?0:t.length;for(this.__data__=new e;++n<r;)this.add(t[n])}return r.prototype.add=r.prototype.push=t,r.prototype.has=n,FL=r,FL}var RL,zL;function BL(){if(zL)return RL;zL=1;function e(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}return RL=e,RL}var VL,HL;function UL(){if(HL)return VL;HL=1;function e(e,t){return e.has(t)}return VL=e,VL}var WL,GL;function KL(){if(GL)return WL;GL=1;var e=LL(),t=BL(),n=UL(),r=1,i=2;function a(a,o,s,c,l,u){var d=s&r,f=a.length,p=o.length;if(f!=p&&!(d&&p>f))return!1;var m=u.get(a),h=u.get(o);if(m&&h)return m==o&&h==a;var g=-1,_=!0,v=s&i?new e:void 0;for(u.set(a,o),u.set(o,a);++g<f;){var y=a[g],b=o[g];if(c)var x=d?c(b,y,g,o,a,u):c(y,b,g,a,o,u);if(x!==void 0){if(x)continue;_=!1;break}if(v){if(!t(o,function(e,t){if(!n(v,t)&&(y===e||l(y,e,s,c,u)))return v.push(t)})){_=!1;break}}else if(!(y===b||l(y,b,s,c,u))){_=!1;break}}return u.delete(a),u.delete(o),_}return WL=a,WL}var qL,JL;function YL(){if(JL)return qL;JL=1;function e(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}return qL=e,qL}var XL,ZL;function QL(){if(ZL)return XL;ZL=1;function e(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}return XL=e,XL}var $L,eR;function tR(){if(eR)return $L;eR=1;var e=Bj(),t=sI(),n=tj(),r=KL(),i=YL(),a=QL(),o=1,s=2,c=`[object Boolean]`,l=`[object Date]`,u=`[object Error]`,d=`[object Map]`,f=`[object Number]`,p=`[object RegExp]`,m=`[object Set]`,h=`[object String]`,g=`[object Symbol]`,_=`[object ArrayBuffer]`,v=`[object DataView]`,y=e?e.prototype:void 0,b=y?y.valueOf:void 0;function x(e,y,x,S,C,w,T){switch(x){case v:if(e.byteLength!=y.byteLength||e.byteOffset!=y.byteOffset)return!1;e=e.buffer,y=y.buffer;case _:return!(e.byteLength!=y.byteLength||!w(new t(e),new t(y)));case c:case l:case f:return n(+e,+y);case u:return e.name==y.name&&e.message==y.message;case p:case h:return e==y+``;case d:var E=i;case m:var D=S&o;if(E||=a,e.size!=y.size&&!D)return!1;var O=T.get(e);if(O)return O==y;S|=s,T.set(e,y);var k=r(E(e),E(y),S,C,w,T);return T.delete(e),k;case g:if(b)return b.call(e)==b.call(y)}return!1}return $L=x,$L}var nR,rR;function iR(){if(rR)return nR;rR=1;var e=LF(),t=1,n=Object.prototype.hasOwnProperty;function r(r,i,a,o,s,c){var l=a&t,u=e(r),d=u.length;if(d!=e(i).length&&!l)return!1;for(var f=d;f--;){var p=u[f];if(!(l?p in i:n.call(i,p)))return!1}var m=c.get(r),h=c.get(i);if(m&&h)return m==i&&h==r;var g=!0;c.set(r,i),c.set(i,r);for(var _=l;++f<d;){p=u[f];var v=r[p],y=i[p];if(o)var b=l?o(y,v,p,i,r,c):o(v,y,p,r,i,c);if(!(b===void 0?v===y||s(v,y,a,o,c):b)){g=!1;break}_||=p==`constructor`}if(g&&!_){var x=r.constructor,S=i.constructor;x!=S&&`constructor`in r&&`constructor`in i&&!(typeof x==`function`&&x instanceof x&&typeof S==`function`&&S instanceof S)&&(g=!1)}return c.delete(r),c.delete(i),g}return nR=r,nR}var aR,oR;function sR(){if(oR)return aR;oR=1;var e=yN(),t=KL(),n=tR(),r=iR(),i=tI(),a=YN(),o=tP(),s=yP(),c=1,l=`[object Arguments]`,u=`[object Array]`,d=`[object Object]`,f=Object.prototype.hasOwnProperty;function p(p,m,h,g,_,v){var y=a(p),b=a(m),x=y?u:i(p),S=b?u:i(m);x=x==l?d:x,S=S==l?d:S;var C=x==d,w=S==d,T=x==S;if(T&&o(p)){if(!o(m))return!1;y=!0,C=!1}if(T&&!C)return v||=new e,y||s(p)?t(p,m,h,g,_,v):n(p,m,x,h,g,_,v);if(!(h&c)){var E=C&&f.call(p,`__wrapped__`),D=w&&f.call(m,`__wrapped__`);if(E||D){var O=E?p.value():p,k=D?m.value():m;return v||=new e,_(O,k,h,g,v)}}return T?(v||=new e,r(p,m,h,g,_,v)):!1}return aR=p,aR}var cR,lR;function uR(){if(lR)return cR;lR=1;var e=sR(),t=BN();function n(r,i,a,o,s){return r===i?!0:r==null||i==null||!t(r)&&!t(i)?r!==r&&i!==i:e(r,i,a,o,n,s)}return cR=n,cR}var dR,fR;function pR(){if(fR)return dR;fR=1;var e=yN(),t=uR(),n=1,r=2;function i(i,a,o,s){var c=o.length,l=c,u=!s;if(i==null)return!l;for(i=Object(i);c--;){var d=o[c];if(u&&d[2]?d[1]!==i[d[0]]:!(d[0]in i))return!1}for(;++c<l;){d=o[c];var f=d[0],p=i[f],m=d[1];if(u&&d[2]){if(p===void 0&&!(f in i))return!1}else{var h=new e;if(s)var g=s(p,m,f,i,a,h);if(!(g===void 0?t(m,p,n|r,s,h):g))return!1}}return!0}return dR=i,dR}var mR,hR;function gR(){if(hR)return mR;hR=1;var e=Qj();function t(t){return t===t&&!e(t)}return mR=t,mR}var _R,vR;function yR(){if(vR)return _R;vR=1;var e=gR(),t=BP();function n(n){for(var r=t(n),i=r.length;i--;){var a=r[i],o=n[a];r[i]=[a,o,e(o)]}return r}return _R=n,_R}var bR,xR;function SR(){if(xR)return bR;xR=1;function e(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}return bR=e,bR}var CR,wR;function TR(){if(wR)return CR;wR=1;var e=pR(),t=yR(),n=SR();function r(r){var i=t(r);return i.length==1&&i[0][2]?n(i[0][0],i[0][1]):function(t){return t===r||e(t,r,i)}}return CR=r,CR}var ER,DR;function OR(){if(DR)return ER;DR=1;var e=Yj(),t=BN(),n=`[object Symbol]`;function r(r){return typeof r==`symbol`||t(r)&&e(r)==n}return ER=r,ER}var kR,AR;function jR(){if(AR)return kR;AR=1;var e=YN(),t=OR(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function i(i,a){if(e(i))return!1;var o=typeof i;return o==`number`||o==`symbol`||o==`boolean`||i==null||t(i)?!0:r.test(i)||!n.test(i)||a!=null&&i in Object(a)}return kR=i,kR}var MR,NR;function PR(){if(NR)return MR;NR=1;var e=pN(),t=`Expected a function`;function n(r,i){if(typeof r!=`function`||i!=null&&typeof i!=`function`)throw TypeError(t);var a=function(){var e=arguments,t=i?i.apply(this,e):e[0],n=a.cache;if(n.has(t))return n.get(t);var o=r.apply(this,e);return a.cache=n.set(t,o)||n,o};return a.cache=new(n.Cache||e),a}return n.Cache=e,MR=n,MR}var FR,IR;function LR(){if(IR)return FR;IR=1;var e=PR(),t=500;function n(n){var r=e(n,function(e){return i.size===t&&i.clear(),e}),i=r.cache;return r}return FR=n,FR}var RR,zR;function BR(){if(zR)return RR;zR=1;var e=LR(),t=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,n=/\\(\\)?/g;return RR=e(function(e){var r=[];return e.charCodeAt(0)===46&&r.push(``),e.replace(t,function(e,t,i,a){r.push(i?a.replace(n,`$1`):t||e)}),r}),RR}var VR,HR;function UR(){if(HR)return VR;HR=1;function e(e,t){for(var n=-1,r=e==null?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}return VR=e,VR}var WR,GR;function KR(){if(GR)return WR;GR=1;var e=Bj(),t=UR(),n=YN(),r=OR(),i=e?e.prototype:void 0,a=i?i.toString:void 0;function o(e){if(typeof e==`string`)return e;if(n(e))return t(e,o)+``;if(r(e))return a?a.call(e):``;var i=e+``;return i==`0`&&1/e==-1/0?`-0`:i}return WR=o,WR}var qR,JR;function YR(){if(JR)return qR;JR=1;var e=KR();function t(t){return t==null?``:e(t)}return qR=t,qR}var XR,ZR;function QR(){if(ZR)return XR;ZR=1;var e=YN(),t=jR(),n=BR(),r=YR();function i(i,a){return e(i)?i:t(i,a)?[i]:n(r(i))}return XR=i,XR}var $R,ez;function tz(){if(ez)return $R;ez=1;var e=OR();function t(t){if(typeof t==`string`||e(t))return t;var n=t+``;return n==`0`&&1/t==-1/0?`-0`:n}return $R=t,$R}var nz,rz;function iz(){if(rz)return nz;rz=1;var e=QR(),t=tz();function n(n,r){r=e(r,n);for(var i=0,a=r.length;n!=null&&i<a;)n=n[t(r[i++])];return i&&i==a?n:void 0}return nz=n,nz}var az,oz;function sz(){if(oz)return az;oz=1;var e=iz();function t(t,n,r){var i=t==null?void 0:e(t,n);return i===void 0?r:i}return az=t,az}var cz,lz;function uz(){if(lz)return cz;lz=1;function e(e,t){return e!=null&&t in Object(e)}return cz=e,cz}var dz,fz;function pz(){if(fz)return dz;fz=1;var e=QR(),t=KN(),n=YN(),r=iP(),i=sP(),a=tz();function o(o,s,c){s=e(s,o);for(var l=-1,u=s.length,d=!1;++l<u;){var f=a(s[l]);if(!(d=o!=null&&c(o,f)))break;o=o[f]}return d||++l!=u?d:(u=o==null?0:o.length,!!u&&i(u)&&r(f,u)&&(n(o)||t(o)))}return dz=o,dz}var mz,hz;function gz(){if(hz)return mz;hz=1;var e=uz(),t=pz();function n(n,r){return n!=null&&t(n,r,e)}return mz=n,mz}var _z,vz;function yz(){if(vz)return _z;vz=1;var e=uR(),t=sz(),n=gz(),r=jR(),i=gR(),a=SR(),o=tz(),s=1,c=2;function l(l,u){return r(l)&&i(u)?a(o(l),u):function(r){var i=t(r,l);return i===void 0&&i===u?n(r,l):e(u,i,s|c)}}return _z=l,_z}var bz,xz;function Sz(){if(xz)return bz;xz=1;function e(e){return function(t){return t?.[e]}}return bz=e,bz}var Cz,wz;function Tz(){if(wz)return Cz;wz=1;var e=iz();function t(t){return function(n){return e(n,t)}}return Cz=t,Cz}var Ez,Dz;function Oz(){if(Dz)return Ez;Dz=1;var e=Sz(),t=Tz(),n=jR(),r=tz();function i(i){return n(i)?e(r(i)):t(i)}return Ez=i,Ez}var kz,Az;function jz(){if(Az)return kz;Az=1;var e=TR(),t=yz(),n=gL(),r=YN(),i=Oz();function a(a){return typeof a==`function`?a:a==null?n:typeof a==`object`?r(a)?t(a[0],a[1]):e(a):i(a)}return kz=a,kz}var Mz,Nz;function Pz(){if(Nz)return Mz;Nz=1;var e=uF(),t=OL(),n=jz(),r=YN();function i(i,a){return(r(i)?e:t)(i,n(a,3))}return Mz=i,Mz}var Fz,Iz;function Lz(){if(Iz)return Fz;Iz=1;var e=Object.prototype.hasOwnProperty;function t(t,n){return t!=null&&e.call(t,n)}return Fz=t,Fz}var Rz,zz;function Bz(){if(zz)return Rz;zz=1;var e=Lz(),t=pz();function n(n,r){return n!=null&&t(n,r,e)}return Rz=n,Rz}var Vz,Hz;function Uz(){if(Hz)return Vz;Hz=1;var e=PP(),t=tI(),n=KN(),r=YN(),i=LP(),a=tP(),o=TP(),s=yP(),c=`[object Map]`,l=`[object Set]`,u=Object.prototype.hasOwnProperty;function d(d){if(d==null)return!0;if(i(d)&&(r(d)||typeof d==`string`||typeof d.splice==`function`||a(d)||s(d)||n(d)))return!d.length;var f=t(d);if(f==c||f==l)return!d.size;if(o(d))return!e(d).length;for(var p in d)if(u.call(d,p))return!1;return!0}return Vz=d,Vz}var Wz,Gz;function Kz(){if(Gz)return Wz;Gz=1;function e(e){return e===void 0}return Wz=e,Wz}var qz,Jz;function Yz(){if(Jz)return qz;Jz=1;var e=pL(),t=LP();function n(n,r){var i=-1,a=t(n)?Array(n.length):[];return e(n,function(e,t,n){a[++i]=r(e,t,n)}),a}return qz=n,qz}var Xz,Zz;function Qz(){if(Zz)return Xz;Zz=1;var e=UR(),t=jz(),n=Yz(),r=YN();function i(i,a){return(r(i)?e:n)(i,t(a,3))}return Xz=i,Xz}var $z,eB;function tB(){if(eB)return $z;eB=1;function e(e,t,n,r){var i=-1,a=e==null?0:e.length;for(r&&a&&(n=e[++i]);++i<a;)n=t(n,e[i],i,e);return n}return $z=e,$z}var nB,rB;function iB(){if(rB)return nB;rB=1;function e(e,t,n,r,i){return i(e,function(e,i,a){n=r?(r=!1,e):t(n,e,i,a)}),n}return nB=e,nB}var aB,oB;function sB(){if(oB)return aB;oB=1;var e=tB(),t=pL(),n=jz(),r=iB(),i=YN();function a(a,o,s){var c=i(a)?e:r,l=arguments.length<3;return c(a,n(o,4),s,l,t)}return aB=a,aB}var cB,lB;function uB(){if(lB)return cB;lB=1;var e=Yj(),t=YN(),n=BN(),r=`[object String]`;function i(i){return typeof i==`string`||!t(i)&&n(i)&&e(i)==r}return cB=i,cB}var dB,fB;function pB(){return fB?dB:(fB=1,dB=Sz()(`length`),dB)}var mB,hB;function gB(){if(hB)return mB;hB=1;var e=RegExp(`[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]`);function t(t){return e.test(t)}return mB=t,mB}var _B,vB;function yB(){if(vB)return _B;vB=1;var e=`\\ud800-\\udfff`,t=`\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff`,n=`\\ufe0e\\ufe0f`,r=`[`+e+`]`,i=`[`+t+`]`,a=`\\ud83c[\\udffb-\\udfff]`,o=`(?:`+i+`|`+a+`)`,s=`[^`+e+`]`,c=`(?:\\ud83c[\\udde6-\\uddff]){2}`,l=`[\\ud800-\\udbff][\\udc00-\\udfff]`,u=`\\u200d`,d=o+`?`,f=`[`+n+`]?`,p=`(?:`+u+`(?:`+[s,c,l].join(`|`)+`)`+f+d+`)*`,m=f+d+p,h=`(?:`+[s+i+`?`,i,c,l,r].join(`|`)+`)`,g=RegExp(a+`(?=`+a+`)|`+h+m,`g`);function _(e){for(var t=g.lastIndex=0;g.test(e);)++t;return t}return _B=_,_B}var bB,xB;function SB(){if(xB)return bB;xB=1;var e=pB(),t=gB(),n=yB();function r(r){return t(r)?n(r):e(r)}return bB=r,bB}var CB,wB;function TB(){if(wB)return CB;wB=1;var e=PP(),t=tI(),n=LP(),r=uB(),i=SB(),a=`[object Map]`,o=`[object Set]`;function s(s){if(s==null)return 0;if(n(s))return r(s)?i(s):s.length;var c=t(s);return c==a||c==o?s.size:e(s).length}return CB=s,CB}var EB,DB;function OB(){if(DB)return EB;DB=1;var e=SN(),t=OI(),n=sL(),r=jz(),i=TF(),a=YN(),o=tP(),s=tM(),c=Qj(),l=yP();function u(u,d,f){var p=a(u),m=p||o(u)||l(u);if(d=r(d,4),f==null){var h=u&&u.constructor;f=m?p?new h:[]:c(u)&&s(h)?t(i(u)):{}}return(m?e:n)(u,function(e,t,n){return d(f,e,t,n)}),f}return EB=u,EB}var kB,AB;function jB(){if(AB)return kB;AB=1;var e=Bj(),t=KN(),n=YN(),r=e?e.isConcatSpreadable:void 0;function i(e){return n(e)||t(e)||!!(r&&e&&e[r])}return kB=i,kB}var MB,NB;function PB(){if(NB)return MB;NB=1;var e=SF(),t=jB();function n(r,i,a,o,s){var c=-1,l=r.length;for(a||=t,s||=[];++c<l;){var u=r[c];i>0&&a(u)?i>1?n(u,i-1,a,o,s):e(s,u):o||(s[s.length]=u)}return s}return MB=n,MB}var FB,IB;function LB(){if(IB)return FB;IB=1;function e(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}return FB=e,FB}var RB,zB;function BB(){if(zB)return RB;zB=1;var e=LB(),t=Math.max;function n(n,r,i){return r=t(r===void 0?n.length-1:r,0),function(){for(var a=arguments,o=-1,s=t(a.length-r,0),c=Array(s);++o<s;)c[o]=a[r+o];o=-1;for(var l=Array(r+1);++o<r;)l[o]=a[o];return l[r]=i(c),e(n,this,l)}}return RB=n,RB}var VB,HB;function UB(){if(HB)return VB;HB=1;var e=QI(),t=TN(),n=gL();return VB=t?function(n,r){return t(n,`toString`,{configurable:!0,enumerable:!1,value:e(r),writable:!0})}:n,VB}var WB,GB;function KB(){if(GB)return WB;GB=1;var e=800,t=16,n=Date.now;function r(r){var i=0,a=0;return function(){var o=n(),s=t-(o-a);if(a=o,s>0){if(++i>=e)return arguments[0]}else i=0;return r.apply(void 0,arguments)}}return WB=r,WB}var qB,JB;function YB(){if(JB)return qB;JB=1;var e=UB();return qB=KB()(e),qB}var XB,ZB;function QB(){if(ZB)return XB;ZB=1;var e=gL(),t=BB(),n=YB();function r(r,i){return n(t(r,i,e),r+``)}return XB=r,XB}var $B,eV;function tV(){if(eV)return $B;eV=1;function e(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a<i;)if(t(e[a],a,e))return a;return-1}return $B=e,$B}var nV,rV;function iV(){if(rV)return nV;rV=1;function e(e){return e!==e}return nV=e,nV}var aV,oV;function sV(){if(oV)return aV;oV=1;function e(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}return aV=e,aV}var cV,lV;function uV(){if(lV)return cV;lV=1;var e=tV(),t=iV(),n=sV();function r(r,i,a){return i===i?n(r,i,a):e(r,t,a)}return cV=r,cV}var dV,fV;function pV(){if(fV)return dV;fV=1;var e=uV();function t(t,n){return!!(t!=null&&t.length)&&e(t,n,0)>-1}return dV=t,dV}var mV,hV;function gV(){if(hV)return mV;hV=1;function e(e,t,n){for(var r=-1,i=e==null?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}return mV=e,mV}var _V,vV;function yV(){if(vV)return _V;vV=1;function e(){}return _V=e,_V}var bV,xV;function SV(){if(xV)return bV;xV=1;var e=YF(),t=yV(),n=QL();return bV=e&&1/n(new e([,-0]))[1]==1/0?function(t){return new e(t)}:t,bV}var CV,wV;function TV(){if(wV)return CV;wV=1;var e=LL(),t=pV(),n=gV(),r=UL(),i=SV(),a=QL(),o=200;function s(s,c,l){var u=-1,d=t,f=s.length,p=!0,m=[],h=m;if(l)p=!1,d=n;else if(f>=o){var g=c?null:i(s);if(g)return a(g);p=!1,d=r,h=new e}else h=c?[]:m;outer:for(;++u<f;){var _=s[u],v=c?c(_):_;if(_=l||_!==0?_:0,p&&v===v){for(var y=h.length;y--;)if(h[y]===v)continue outer;c&&h.push(v),m.push(_)}else d(h,v,l)||(h!==m&&h.push(v),m.push(_))}return m}return CV=s,CV}var EV,DV;function OV(){if(DV)return EV;DV=1;var e=LP(),t=BN();function n(n){return t(n)&&e(n)}return EV=n,EV}var kV,AV;function jV(){if(AV)return kV;AV=1;var e=PB(),t=QB(),n=TV(),r=OV();return kV=t(function(t){return n(e(t,1,r,!0))}),kV}var MV,NV;function PV(){if(NV)return MV;NV=1;var e=UR();function t(t,n){return e(n,function(e){return t[e]})}return MV=t,MV}var FV,IV;function LV(){if(IV)return FV;IV=1;var e=PV(),t=BP();function n(n){return n==null?[]:e(n,t(n))}return FV=n,FV}var RV,zV;function BV(){if(zV)return RV;zV=1;var e;if(typeof YA==`function`)try{e={clone:YI(),constant:QI(),each:TL(),filter:Pz(),has:Bz(),isArray:YN(),isEmpty:Uz(),isFunction:tM(),isUndefined:Kz(),keys:BP(),map:Qz(),reduce:sB(),size:TB(),transform:OB(),union:jV(),values:LV()}}catch{}return e||=window._,RV=e,RV}var VV,HV;function UV(){if(HV)return VV;HV=1;var e=BV();VV=i;var t=`\0`,n=`\0`,r=``;function i(t){this._isDirected=e.has(t,`directed`)?t.directed:!0,this._isMultigraph=e.has(t,`multigraph`)?t.multigraph:!1,this._isCompound=e.has(t,`compound`)?t.compound:!1,this._label=void 0,this._defaultNodeLabelFn=e.constant(void 0),this._defaultEdgeLabelFn=e.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[n]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}i.prototype._nodeCount=0,i.prototype._edgeCount=0,i.prototype.isDirected=function(){return this._isDirected},i.prototype.isMultigraph=function(){return this._isMultigraph},i.prototype.isCompound=function(){return this._isCompound},i.prototype.setGraph=function(e){return this._label=e,this},i.prototype.graph=function(){return this._label},i.prototype.setDefaultNodeLabel=function(t){return e.isFunction(t)||(t=e.constant(t)),this._defaultNodeLabelFn=t,this},i.prototype.nodeCount=function(){return this._nodeCount},i.prototype.nodes=function(){return e.keys(this._nodes)},i.prototype.sources=function(){var t=this;return e.filter(this.nodes(),function(n){return e.isEmpty(t._in[n])})},i.prototype.sinks=function(){var t=this;return e.filter(this.nodes(),function(n){return e.isEmpty(t._out[n])})},i.prototype.setNodes=function(t,n){var r=arguments,i=this;return e.each(t,function(e){r.length>1?i.setNode(e,n):i.setNode(e)}),this},i.prototype.setNode=function(t,r){return e.has(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=r),this):(this._nodes[t]=arguments.length>1?r:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=n,this._children[t]={},this._children[n][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)},i.prototype.node=function(e){return this._nodes[e]},i.prototype.hasNode=function(t){return e.has(this._nodes,t)},i.prototype.removeNode=function(t){var n=this;if(e.has(this._nodes,t)){var r=function(e){n.removeEdge(n._edgeObjs[e])};delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],e.each(this.children(t),function(e){n.setParent(e)}),delete this._children[t]),e.each(e.keys(this._in[t]),r),delete this._in[t],delete this._preds[t],e.each(e.keys(this._out[t]),r),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this},i.prototype.setParent=function(t,r){if(!this._isCompound)throw Error(`Cannot set parent in a non-compound graph`);if(e.isUndefined(r))r=n;else{r+=``;for(var i=r;!e.isUndefined(i);i=this.parent(i))if(i===t)throw Error(`Setting `+r+` as parent of `+t+` would create a cycle`);this.setNode(r)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=r,this._children[r][t]=!0,this},i.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},i.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==n)return t}},i.prototype.children=function(t){if(e.isUndefined(t)&&(t=n),this._isCompound){var r=this._children[t];if(r)return e.keys(r)}else if(t===n)return this.nodes();else if(this.hasNode(t))return[]},i.prototype.predecessors=function(t){var n=this._preds[t];if(n)return e.keys(n)},i.prototype.successors=function(t){var n=this._sucs[t];if(n)return e.keys(n)},i.prototype.neighbors=function(t){var n=this.predecessors(t);if(n)return e.union(n,this.successors(t))},i.prototype.isLeaf=function(e){return(this.isDirected()?this.successors(e):this.neighbors(e)).length===0},i.prototype.filterNodes=function(t){var n=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});n.setGraph(this.graph());var r=this;e.each(this._nodes,function(e,r){t(r)&&n.setNode(r,e)}),e.each(this._edgeObjs,function(e){n.hasNode(e.v)&&n.hasNode(e.w)&&n.setEdge(e,r.edge(e))});var i={};function a(e){var t=r.parent(e);return t===void 0||n.hasNode(t)?(i[e]=t,t):t in i?i[t]:a(t)}return this._isCompound&&e.each(n.nodes(),function(e){n.setParent(e,a(e))}),n},i.prototype.setDefaultEdgeLabel=function(t){return e.isFunction(t)||(t=e.constant(t)),this._defaultEdgeLabelFn=t,this},i.prototype.edgeCount=function(){return this._edgeCount},i.prototype.edges=function(){return e.values(this._edgeObjs)},i.prototype.setPath=function(t,n){var r=this,i=arguments;return e.reduce(t,function(e,t){return i.length>1?r.setEdge(e,t,n):r.setEdge(e,t),t}),this},i.prototype.setEdge=function(){var t,n,r,i,o=!1,l=arguments[0];typeof l==`object`&&l&&`v`in l?(t=l.v,n=l.w,r=l.name,arguments.length===2&&(i=arguments[1],o=!0)):(t=l,n=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],o=!0)),t=``+t,n=``+n,e.isUndefined(r)||(r=``+r);var u=s(this._isDirected,t,n,r);if(e.has(this._edgeLabels,u))return o&&(this._edgeLabels[u]=i),this;if(!e.isUndefined(r)&&!this._isMultigraph)throw Error(`Cannot set a named edge when isMultigraph = false`);this.setNode(t),this.setNode(n),this._edgeLabels[u]=o?i:this._defaultEdgeLabelFn(t,n,r);var d=c(this._isDirected,t,n,r);return t=d.v,n=d.w,Object.freeze(d),this._edgeObjs[u]=d,a(this._preds[n],t),a(this._sucs[t],n),this._in[n][u]=d,this._out[t][u]=d,this._edgeCount++,this},i.prototype.edge=function(e,t,n){var r=arguments.length===1?l(this._isDirected,arguments[0]):s(this._isDirected,e,t,n);return this._edgeLabels[r]},i.prototype.hasEdge=function(t,n,r){var i=arguments.length===1?l(this._isDirected,arguments[0]):s(this._isDirected,t,n,r);return e.has(this._edgeLabels,i)},i.prototype.removeEdge=function(e,t,n){var r=arguments.length===1?l(this._isDirected,arguments[0]):s(this._isDirected,e,t,n),i=this._edgeObjs[r];return i&&(e=i.v,t=i.w,delete this._edgeLabels[r],delete this._edgeObjs[r],o(this._preds[t],e),o(this._sucs[e],t),delete this._in[t][r],delete this._out[e][r],this._edgeCount--),this},i.prototype.inEdges=function(t,n){var r=this._in[t];if(r){var i=e.values(r);return n?e.filter(i,function(e){return e.v===n}):i}},i.prototype.outEdges=function(t,n){var r=this._out[t];if(r){var i=e.values(r);return n?e.filter(i,function(e){return e.w===n}):i}},i.prototype.nodeEdges=function(e,t){var n=this.inEdges(e,t);if(n)return n.concat(this.outEdges(e,t))};function a(e,t){e[t]?e[t]++:e[t]=1}function o(e,t){--e[t]||delete e[t]}function s(n,i,a,o){var s=``+i,c=``+a;if(!n&&s>c){var l=s;s=c,c=l}return s+r+c+r+(e.isUndefined(o)?t:o)}function c(e,t,n,r){var i=``+t,a=``+n;if(!e&&i>a){var o=i;i=a,a=o}var s={v:i,w:a};return r&&(s.name=r),s}function l(e,t){return s(e,t.v,t.w,t.name)}return VV}var WV,GV;function KV(){return GV?WV:(GV=1,WV=`2.1.8`,WV)}var qV,JV;function YV(){return JV?qV:(JV=1,qV={Graph:UV(),version:KV()},qV)}var XV,ZV;function QV(){if(ZV)return XV;ZV=1;var e=BV(),t=UV();XV={write:n,read:a};function n(t){var n={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:r(t),edges:i(t)};return e.isUndefined(t.graph())||(n.value=e.clone(t.graph())),n}function r(t){return e.map(t.nodes(),function(n){var r=t.node(n),i=t.parent(n),a={v:n};return e.isUndefined(r)||(a.value=r),e.isUndefined(i)||(a.parent=i),a})}function i(t){return e.map(t.edges(),function(n){var r=t.edge(n),i={v:n.v,w:n.w};return e.isUndefined(n.name)||(i.name=n.name),e.isUndefined(r)||(i.value=r),i})}function a(n){var r=new t(n.options).setGraph(n.value);return e.each(n.nodes,function(e){r.setNode(e.v,e.value),e.parent&&r.setParent(e.v,e.parent)}),e.each(n.edges,function(e){r.setEdge({v:e.v,w:e.w,name:e.name},e.value)}),r}return XV}var $V,eH;function tH(){if(eH)return $V;eH=1;var e=BV();$V=t;function t(t){var n={},r=[],i;function a(r){e.has(n,r)||(n[r]=!0,i.push(r),e.each(t.successors(r),a),e.each(t.predecessors(r),a))}return e.each(t.nodes(),function(e){i=[],a(e),i.length&&r.push(i)}),r}return $V}var nH,rH;function iH(){if(rH)return nH;rH=1;var e=BV();nH=t;function t(){this._arr=[],this._keyIndices={}}return t.prototype.size=function(){return this._arr.length},t.prototype.keys=function(){return this._arr.map(function(e){return e.key})},t.prototype.has=function(t){return e.has(this._keyIndices,t)},t.prototype.priority=function(e){var t=this._keyIndices[e];if(t!==void 0)return this._arr[t].priority},t.prototype.min=function(){if(this.size()===0)throw Error(`Queue underflow`);return this._arr[0].key},t.prototype.add=function(t,n){var r=this._keyIndices;if(t=String(t),!e.has(r,t)){var i=this._arr,a=i.length;return r[t]=a,i.push({key:t,priority:n}),this._decrease(a),!0}return!1},t.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},t.prototype.decrease=function(e,t){var n=this._keyIndices[e];if(t>this._arr[n].priority)throw Error(`New priority is greater than current priority. Key: `+e+` Old: `+this._arr[n].priority+` New: `+t);this._arr[n].priority=t,this._decrease(n)},t.prototype._heapify=function(e){var t=this._arr,n=2*e,r=n+1,i=e;n<t.length&&(i=t[n].priority<t[i].priority?n:i,r<t.length&&(i=t[r].priority<t[i].priority?r:i),i!==e&&(this._swap(e,i),this._heapify(i)))},t.prototype._decrease=function(e){for(var t=this._arr,n=t[e].priority,r;e!==0&&(r=e>>1,!(t[r].priority<n));)this._swap(e,r),e=r},t.prototype._swap=function(e,t){var n=this._arr,r=this._keyIndices,i=n[e],a=n[t];n[e]=a,n[t]=i,r[a.key]=e,r[i.key]=t},nH}var aH,oH;function sH(){if(oH)return aH;oH=1;var e=BV(),t=iH();aH=r;var n=e.constant(1);function r(e,t,r,a){return i(e,String(t),r||n,a||function(t){return e.outEdges(t)})}function i(e,n,r,i){var a={},o=new t,s,c,l=function(e){var t=e.v===s?e.w:e.v,n=a[t],i=r(e),l=c.distance+i;if(i<0)throw Error(`dijkstra does not allow negative edge weights. Bad edge: `+e+` Weight: `+i);l<n.distance&&(n.distance=l,n.predecessor=s,o.decrease(t,l))};for(e.nodes().forEach(function(e){var t=e===n?0:1/0;a[e]={distance:t},o.add(e,t)});o.size()>0&&(s=o.removeMin(),c=a[s],c.distance!==1/0);)i(s).forEach(l);return a}return aH}var cH,lH;function uH(){if(lH)return cH;lH=1;var e=sH(),t=BV();cH=n;function n(n,r,i){return t.transform(n.nodes(),function(t,a){t[a]=e(n,a,r,i)},{})}return cH}var dH,fH;function pH(){if(fH)return dH;fH=1;var e=BV();dH=t;function t(t){var n=0,r=[],i={},a=[];function o(s){var c=i[s]={onStack:!0,lowlink:n,index:n++};if(r.push(s),t.successors(s).forEach(function(t){e.has(i,t)?i[t].onStack&&(c.lowlink=Math.min(c.lowlink,i[t].index)):(o(t),c.lowlink=Math.min(c.lowlink,i[t].lowlink))}),c.lowlink===c.index){var l=[],u;do u=r.pop(),i[u].onStack=!1,l.push(u);while(s!==u);a.push(l)}}return t.nodes().forEach(function(t){e.has(i,t)||o(t)}),a}return dH}var mH,hH;function gH(){if(hH)return mH;hH=1;var e=BV(),t=pH();mH=n;function n(n){return e.filter(t(n),function(e){return e.length>1||e.length===1&&n.hasEdge(e[0],e[0])})}return mH}var _H,vH;function yH(){if(vH)return _H;vH=1;var e=BV();_H=n;var t=e.constant(1);function n(e,n,i){return r(e,n||t,i||function(t){return e.outEdges(t)})}function r(e,t,n){var r={},i=e.nodes();return i.forEach(function(e){r[e]={},r[e][e]={distance:0},i.forEach(function(t){e!==t&&(r[e][t]={distance:1/0})}),n(e).forEach(function(n){var i=n.v===e?n.w:n.v,a=t(n);r[e][i]={distance:a,predecessor:e}})}),i.forEach(function(e){var t=r[e];i.forEach(function(n){var a=r[n];i.forEach(function(n){var r=a[e],i=t[n],o=a[n],s=r.distance+i.distance;s<o.distance&&(o.distance=s,o.predecessor=i.predecessor)})})}),r}return _H}var bH,xH;function SH(){if(xH)return bH;xH=1;var e=BV();bH=t,t.CycleException=n;function t(t){var r={},i={},a=[];function o(s){if(e.has(i,s))throw new n;e.has(r,s)||(i[s]=!0,r[s]=!0,e.each(t.predecessors(s),o),delete i[s],a.push(s))}if(e.each(t.sinks(),o),e.size(r)!==t.nodeCount())throw new n;return a}function n(){}return n.prototype=Error(),bH}var CH,wH;function TH(){if(wH)return CH;wH=1;var e=SH();CH=t;function t(t){try{e(t)}catch(t){if(t instanceof e.CycleException)return!1;throw t}return!0}return CH}var EH,DH;function OH(){if(DH)return EH;DH=1;var e=BV();EH=t;function t(t,r,i){e.isArray(r)||(r=[r]);var a=(t.isDirected()?t.successors:t.neighbors).bind(t),o=[],s={};return e.each(r,function(e){if(!t.hasNode(e))throw Error(`Graph does not have node: `+e);n(t,e,i===`post`,s,a,o)}),o}function n(t,r,i,a,o,s){e.has(a,r)||(a[r]=!0,i||s.push(r),e.each(o(r),function(e){n(t,e,i,a,o,s)}),i&&s.push(r))}return EH}var kH,AH;function jH(){if(AH)return kH;AH=1;var e=OH();kH=t;function t(t,n){return e(t,n,`post`)}return kH}var MH,NH;function PH(){if(NH)return MH;NH=1;var e=OH();MH=t;function t(t,n){return e(t,n,`pre`)}return MH}var FH,IH;function LH(){if(IH)return FH;IH=1;var e=BV(),t=UV(),n=iH();FH=r;function r(r,i){var a=new t,o={},s=new n,c;function l(e){var t=e.v===c?e.w:e.v,n=s.priority(t);if(n!==void 0){var r=i(e);r<n&&(o[t]=c,s.decrease(t,r))}}if(r.nodeCount()===0)return a;e.each(r.nodes(),function(e){s.add(e,1/0),a.setNode(e)}),s.decrease(r.nodes()[0],0);for(var u=!1;s.size()>0;){if(c=s.removeMin(),e.has(o,c))a.setEdge(c,o[c]);else if(u)throw Error(`Input graph is not connected: `+r);else u=!0;r.nodeEdges(c).forEach(l)}return a}return FH}var RH,zH;function BH(){return zH?RH:(zH=1,RH={components:tH(),dijkstra:sH(),dijkstraAll:uH(),findCycles:gH(),floydWarshall:yH(),isAcyclic:TH(),postorder:jH(),preorder:PH(),prim:LH(),tarjan:pH(),topsort:SH()},RH)}var VH,HH;function UH(){if(HH)return VH;HH=1;var e=YV();return VH={Graph:e.Graph,json:QV(),alg:BH(),version:e.version},VH}var WH,GH;function KH(){if(GH)return WH;GH=1;var e;if(typeof YA==`function`)try{e=UH()}catch{}return e||=window.graphlib,WH=e,WH}var qH,JH;function YH(){if(JH)return qH;JH=1;var e=KI(),t=1,n=4;function r(r){return e(r,t|n)}return qH=r,qH}var XH,ZH;function QH(){if(ZH)return XH;ZH=1;var e=tj(),t=LP(),n=iP(),r=Qj();function i(i,a,o){if(!r(o))return!1;var s=typeof a;return(s==`number`?t(o)&&n(a,o.length):s==`string`&&a in o)?e(o[a],i):!1}return XH=i,XH}var $H,eU;function tU(){if(eU)return $H;eU=1;var e=QB(),t=tj(),n=QH(),r=QP(),i=Object.prototype,a=i.hasOwnProperty;return $H=e(function(e,o){e=Object(e);var s=-1,c=o.length,l=c>2?o[2]:void 0;for(l&&n(o[0],o[1],l)&&(c=1);++s<c;)for(var u=o[s],d=r(u),f=-1,p=d.length;++f<p;){var m=d[f],h=e[m];(h===void 0||t(h,i[m])&&!a.call(e,m))&&(e[m]=u[m])}return e}),$H}var nU,rU;function iU(){if(rU)return nU;rU=1;var e=jz(),t=LP(),n=BP();function r(r){return function(i,a,o){var s=Object(i);if(!t(i)){var c=e(a,3);i=n(i),a=function(e){return c(s[e],e,s)}}var l=r(i,a,o);return l>-1?s[c?i[l]:l]:void 0}}return nU=r,nU}var aU,oU;function sU(){if(oU)return aU;oU=1;var e=/\s/;function t(t){for(var n=t.length;n--&&e.test(t.charAt(n)););return n}return aU=t,aU}var cU,lU;function uU(){if(lU)return cU;lU=1;var e=sU(),t=/^\s+/;function n(n){return n&&n.slice(0,e(n)+1).replace(t,``)}return cU=n,cU}var dU,fU;function pU(){if(fU)return dU;fU=1;var e=uU(),t=Qj(),n=OR(),r=NaN,i=/^[-+]0x[0-9a-f]+$/i,a=/^0b[01]+$/i,o=/^0o[0-7]+$/i,s=parseInt;function c(c){if(typeof c==`number`)return c;if(n(c))return r;if(t(c)){var l=typeof c.valueOf==`function`?c.valueOf():c;c=t(l)?l+``:l}if(typeof c!=`string`)return c===0?c:+c;c=e(c);var u=a.test(c);return u||o.test(c)?s(c.slice(2),u?2:8):i.test(c)?r:+c}return dU=c,dU}var mU,hU;function gU(){if(hU)return mU;hU=1;var e=pU(),t=1/0,n=17976931348623157e292;function r(r){return r?(r=e(r),r===t||r===-t?(r<0?-1:1)*n:r===r?r:0):r===0?r:0}return mU=r,mU}var _U,vU;function yU(){if(vU)return _U;vU=1;var e=gU();function t(t){var n=e(t),r=n%1;return n===n?r?n-r:n:0}return _U=t,_U}var bU,xU;function SU(){if(xU)return bU;xU=1;var e=tV(),t=jz(),n=yU(),r=Math.max;function i(i,a,o){var s=i==null?0:i.length;if(!s)return-1;var c=o==null?0:n(o);return c<0&&(c=r(s+c,0)),e(i,t(a,3),c)}return bU=i,bU}var CU,wU;function TU(){return wU?CU:(wU=1,CU=iU()(SU()),CU)}var EU,DU;function OU(){if(DU)return EU;DU=1;var e=PB();function t(t){return t!=null&&t.length?e(t,1):[]}return EU=t,EU}var kU,AU;function jU(){if(AU)return kU;AU=1;var e=iL(),t=yL(),n=QP();function r(r,i){return r==null?r:e(r,t(i),n)}return kU=r,kU}var MU,NU;function PU(){if(NU)return MU;NU=1;function e(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}return MU=e,MU}var FU,IU;function LU(){if(IU)return FU;IU=1;var e=ON(),t=sL(),n=jz();function r(r,i){var a={};return i=n(i,3),t(r,function(t,n,r){e(a,n,i(t,n,r))}),a}return FU=r,FU}var RU,zU;function BU(){if(zU)return RU;zU=1;var e=OR();function t(t,n,r){for(var i=-1,a=t.length;++i<a;){var o=t[i],s=n(o);if(s!=null&&(c===void 0?s===s&&!e(s):r(s,c)))var c=s,l=o}return l}return RU=t,RU}var VU,HU;function UU(){if(HU)return VU;HU=1;function e(e,t){return e>t}return VU=e,VU}var WU,GU;function KU(){if(GU)return WU;GU=1;var e=BU(),t=UU(),n=gL();function r(r){return r&&r.length?e(r,n,t):void 0}return WU=r,WU}var qU,JU;function YU(){if(JU)return qU;JU=1;var e=ON(),t=tj();function n(n,r,i){(i!==void 0&&!t(n[r],i)||i===void 0&&!(r in n))&&e(n,r,i)}return qU=n,qU}var XU,ZU;function QU(){if(ZU)return XU;ZU=1;var e=Yj(),t=TF(),n=BN(),r=`[object Object]`,i=Function.prototype,a=Object.prototype,o=i.toString,s=a.hasOwnProperty,c=o.call(Object);function l(i){if(!n(i)||e(i)!=r)return!1;var a=t(i);if(a===null)return!0;var l=s.call(a,`constructor`)&&a.constructor;return typeof l==`function`&&l instanceof l&&o.call(l)==c}return XU=l,XU}var $U,eW;function tW(){if(eW)return $U;eW=1;function e(e,t){if(!(t===`constructor`&&typeof e[t]==`function`)&&t!=`__proto__`)return e[t]}return $U=e,$U}var nW,rW;function iW(){if(rW)return nW;rW=1;var e=PN(),t=QP();function n(n){return e(n,t(n))}return nW=n,nW}var aW,oW;function sW(){if(oW)return aW;oW=1;var e=YU(),t=iF(),n=SI(),r=sF(),i=jI(),a=KN(),o=YN(),s=OV(),c=tP(),l=tM(),u=Qj(),d=QU(),f=yP(),p=tW(),m=iW();function h(h,g,_,v,y,b,x){var S=p(h,_),C=p(g,_),w=x.get(C);if(w){e(h,_,w);return}var T=b?b(S,C,_+``,h,g,x):void 0,E=T===void 0;if(E){var D=o(C),O=!D&&c(C),k=!D&&!O&&f(C);T=C,D||O||k?o(S)?T=S:s(S)?T=r(S):O?(E=!1,T=t(C,!0)):k?(E=!1,T=n(C,!0)):T=[]:d(C)||a(C)?(T=S,a(S)?T=m(S):(!u(S)||l(S))&&(T=i(C))):E=!1}E&&(x.set(C,T),y(T,C,v,b,x),x.delete(C)),e(h,_,T)}return aW=h,aW}var cW,lW;function uW(){if(lW)return cW;lW=1;var e=yN(),t=YU(),n=iL(),r=sW(),i=Qj(),a=QP(),o=tW();function s(c,l,u,d,f){c!==l&&n(l,function(n,a){if(f||=new e,i(n))r(c,l,a,u,s,d,f);else{var p=d?d(o(c,a),n,a+``,c,l,f):void 0;p===void 0&&(p=n),t(c,a,p)}},a)}return cW=s,cW}var dW,fW;function pW(){if(fW)return dW;fW=1;var e=QB(),t=QH();function n(n){return e(function(e,r){var i=-1,a=r.length,o=a>1?r[a-1]:void 0,s=a>2?r[2]:void 0;for(o=n.length>3&&typeof o==`function`?(a--,o):void 0,s&&t(r[0],r[1],s)&&(o=a<3?void 0:o,a=1),e=Object(e);++i<a;){var c=r[i];c&&n(e,c,i,o)}return e})}return dW=n,dW}var mW,hW;function gW(){if(hW)return mW;hW=1;var e=uW();return mW=pW()(function(t,n,r){e(t,n,r)}),mW}var _W,vW;function yW(){if(vW)return _W;vW=1;function e(e,t){return e<t}return _W=e,_W}var bW,xW;function SW(){if(xW)return bW;xW=1;var e=BU(),t=yW(),n=gL();function r(r){return r&&r.length?e(r,n,t):void 0}return bW=r,bW}var CW,wW;function TW(){if(wW)return CW;wW=1;var e=BU(),t=jz(),n=yW();function r(r,i){return r&&r.length?e(r,t(i,2),n):void 0}return CW=r,CW}var EW,DW;function OW(){if(DW)return EW;DW=1;var e=Lj();return EW=function(){return e.Date.now()},EW}var kW,AW;function jW(){if(AW)return kW;AW=1;var e=jN(),t=QR(),n=iP(),r=Qj(),i=tz();function a(a,o,s,c){if(!r(a))return a;o=t(o,a);for(var l=-1,u=o.length,d=u-1,f=a;f!=null&&++l<u;){var p=i(o[l]),m=s;if(p===`__proto__`||p===`constructor`||p===`prototype`)return a;if(l!=d){var h=f[p];m=c?c(h,p,f):void 0,m===void 0&&(m=r(h)?h:n(o[l+1])?[]:{})}e(f,p,m),f=f[p]}return a}return kW=a,kW}var MW,NW;function PW(){if(NW)return MW;NW=1;var e=iz(),t=jW(),n=QR();function r(r,i,a){for(var o=-1,s=i.length,c={};++o<s;){var l=i[o],u=e(r,l);a(u,l)&&t(c,n(l,r),u)}return c}return MW=r,MW}var FW,IW;function LW(){if(IW)return FW;IW=1;var e=PW(),t=gz();function n(n,r){return e(n,r,function(e,r){return t(n,r)})}return FW=n,FW}var RW,zW;function BW(){if(zW)return RW;zW=1;var e=OU(),t=BB(),n=YB();function r(r){return n(t(r,void 0,e),r+``)}return RW=r,RW}var VW,HW;function UW(){if(HW)return VW;HW=1;var e=LW();return VW=BW()(function(t,n){return t==null?{}:e(t,n)}),VW}var WW,GW;function KW(){if(GW)return WW;GW=1;var e=Math.ceil,t=Math.max;function n(n,r,i,a){for(var o=-1,s=t(e((r-n)/(i||1)),0),c=Array(s);s--;)c[a?s:++o]=n,n+=i;return c}return WW=n,WW}var qW,JW;function YW(){if(JW)return qW;JW=1;var e=KW(),t=QH(),n=gU();function r(r){return function(i,a,o){return o&&typeof o!=`number`&&t(i,a,o)&&(a=o=void 0),i=n(i),a===void 0?(a=i,i=0):a=n(a),o=o===void 0?i<a?1:-1:n(o),e(i,a,o,r)}}return qW=r,qW}var XW,ZW;function QW(){return ZW?XW:(ZW=1,XW=YW()(),XW)}var $W,eG;function tG(){if(eG)return $W;eG=1;function e(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}return $W=e,$W}var nG,rG;function iG(){if(rG)return nG;rG=1;var e=OR();function t(t,n){if(t!==n){var r=t!==void 0,i=t===null,a=t===t,o=e(t),s=n!==void 0,c=n===null,l=n===n,u=e(n);if(!c&&!u&&!o&&t>n||o&&s&&l&&!c&&!u||i&&s&&l||!r&&l||!a)return 1;if(!i&&!o&&!u&&t<n||u&&r&&a&&!i&&!o||c&&r&&a||!s&&a||!l)return-1}return 0}return nG=t,nG}var aG,oG;function sG(){if(oG)return aG;oG=1;var e=iG();function t(t,n,r){for(var i=-1,a=t.criteria,o=n.criteria,s=a.length,c=r.length;++i<s;){var l=e(a[i],o[i]);if(l)return i>=c?l:l*(r[i]==`desc`?-1:1)}return t.index-n.index}return aG=t,aG}var cG,lG;function uG(){if(lG)return cG;lG=1;var e=UR(),t=iz(),n=jz(),r=Yz(),i=tG(),a=pP(),o=sG(),s=gL(),c=YN();function l(l,u,d){u=u.length?e(u,function(e){return c(e)?function(n){return t(n,e.length===1?e[0]:e)}:e}):[s];var f=-1;return u=e(u,a(n)),i(r(l,function(t,n,r){return{criteria:e(u,function(e){return e(t)}),index:++f,value:t}}),function(e,t){return o(e,t,d)})}return cG=l,cG}var dG,fG;function pG(){if(fG)return dG;fG=1;var e=PB(),t=uG(),n=QB(),r=QH();return dG=n(function(n,i){if(n==null)return[];var a=i.length;return a>1&&r(n,i[0],i[1])?i=[]:a>2&&r(i[0],i[1],i[2])&&(i=[i[0]]),t(n,e(i,1),[])}),dG}var mG,hG;function gG(){if(hG)return mG;hG=1;var e=YR(),t=0;function n(n){var r=++t;return e(n)+r}return mG=n,mG}var _G,vG;function yG(){if(vG)return _G;vG=1;function e(e,t,n){for(var r=-1,i=e.length,a=t.length,o={};++r<i;){var s=r<a?t[r]:void 0;n(o,e[r],s)}return o}return _G=e,_G}var bG,xG;function SG(){if(xG)return bG;xG=1;var e=jN(),t=yG();function n(n,r){return t(n||[],r||[],e)}return bG=n,bG}var CG,wG;function TG(){if(wG)return CG;wG=1;var e;if(typeof YA==`function`)try{e={cloneDeep:YH(),constant:QI(),defaults:tU(),each:TL(),filter:Pz(),find:TU(),flatten:OU(),forEach:SL(),forIn:jU(),has:Bz(),isUndefined:Kz(),last:PU(),map:Qz(),mapValues:LU(),max:KU(),merge:gW(),min:SW(),minBy:TW(),now:OW(),pick:UW(),range:QW(),reduce:sB(),sortBy:pG(),uniqueId:gG(),values:LV(),zipObject:SG()}}catch{}return e||=window._,CG=e,CG}var EG,DG;function OG(){if(DG)return EG;DG=1,EG=e;function e(){var e={};e._next=e._prev=e,this._sentinel=e}e.prototype.dequeue=function(){var e=this._sentinel,n=e._prev;if(n!==e)return t(n),n},e.prototype.enqueue=function(e){var n=this._sentinel;e._prev&&e._next&&t(e),e._next=n._next,n._next._prev=e,n._next=e,e._prev=n},e.prototype.toString=function(){for(var e=[],t=this._sentinel,r=t._prev;r!==t;)e.push(JSON.stringify(r,n)),r=r._prev;return`[`+e.join(`, `)+`]`};function t(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function n(e,t){if(e!==`_next`&&e!==`_prev`)return t}return EG}var kG,AG;function jG(){if(AG)return kG;AG=1;var e=TG(),t=KH().Graph,n=OG();kG=i;var r=e.constant(1);function i(t,n){if(t.nodeCount()<=1)return[];var i=s(t,n||r),o=a(i.graph,i.buckets,i.zeroIdx);return e.flatten(e.map(o,function(e){return t.outEdges(e.v,e.w)}),!0)}function a(e,t,n){for(var r=[],i=t[t.length-1],a=t[0],s;e.nodeCount();){for(;s=a.dequeue();)o(e,t,n,s);for(;s=i.dequeue();)o(e,t,n,s);if(e.nodeCount()){for(var c=t.length-2;c>0;--c)if(s=t[c].dequeue(),s){r=r.concat(o(e,t,n,s,!0));break}}}return r}function o(t,n,r,i,a){var o=a?[]:void 0;return e.forEach(t.inEdges(i.v),function(e){var i=t.edge(e),s=t.node(e.v);a&&o.push({v:e.v,w:e.w}),s.out-=i,c(n,r,s)}),e.forEach(t.outEdges(i.v),function(e){var i=t.edge(e),a=e.w,o=t.node(a);o.in-=i,c(n,r,o)}),t.removeNode(i.v),o}function s(r,i){var a=new t,o=0,s=0;e.forEach(r.nodes(),function(e){a.setNode(e,{v:e,in:0,out:0})}),e.forEach(r.edges(),function(e){var t=a.edge(e.v,e.w)||0,n=i(e),r=t+n;a.setEdge(e.v,e.w,r),s=Math.max(s,a.node(e.v).out+=n),o=Math.max(o,a.node(e.w).in+=n)});var l=e.range(s+o+3).map(function(){return new n}),u=o+1;return e.forEach(a.nodes(),function(e){c(l,u,a.node(e))}),{graph:a,buckets:l,zeroIdx:u}}function c(e,t,n){n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)}return kG}var MG,NG;function PG(){if(NG)return MG;NG=1;var e=TG(),t=jG();MG={run:n,undo:i};function n(n){var i=n.graph().acyclicer===`greedy`?t(n,a(n)):r(n);e.forEach(i,function(t){var r=n.edge(t);n.removeEdge(t),r.forwardName=t.name,r.reversed=!0,n.setEdge(t.w,t.v,r,e.uniqueId(`rev`))});function a(e){return function(t){return e.edge(t).weight}}}function r(t){var n=[],r={},i={};function a(o){e.has(i,o)||(i[o]=!0,r[o]=!0,e.forEach(t.outEdges(o),function(t){e.has(r,t.w)?n.push(t):a(t.w)}),delete r[o])}return e.forEach(t.nodes(),a),n}function i(t){e.forEach(t.edges(),function(e){var n=t.edge(e);if(n.reversed){t.removeEdge(e);var r=n.forwardName;delete n.reversed,delete n.forwardName,t.setEdge(e.w,e.v,n,r)}})}return MG}var FG,IG;function LG(){if(IG)return FG;IG=1;var e=TG(),t=KH().Graph;FG={addDummyNode:n,simplify:r,asNonCompoundGraph:i,successorWeights:a,predecessorWeights:o,intersectRect:s,buildLayerMatrix:c,normalizeRanks:l,removeEmptyRanks:u,addBorderNode:d,maxRank:f,partition:p,time:m,notime:h};function n(t,n,r,i){var a;do a=e.uniqueId(i);while(t.hasNode(a));return r.dummy=n,t.setNode(a,r),a}function r(n){var r=new t().setGraph(n.graph());return e.forEach(n.nodes(),function(e){r.setNode(e,n.node(e))}),e.forEach(n.edges(),function(e){var t=r.edge(e.v,e.w)||{weight:0,minlen:1},i=n.edge(e);r.setEdge(e.v,e.w,{weight:t.weight+i.weight,minlen:Math.max(t.minlen,i.minlen)})}),r}function i(n){var r=new t({multigraph:n.isMultigraph()}).setGraph(n.graph());return e.forEach(n.nodes(),function(e){n.children(e).length||r.setNode(e,n.node(e))}),e.forEach(n.edges(),function(e){r.setEdge(e,n.edge(e))}),r}function a(t){var n=e.map(t.nodes(),function(n){var r={};return e.forEach(t.outEdges(n),function(e){r[e.w]=(r[e.w]||0)+t.edge(e).weight}),r});return e.zipObject(t.nodes(),n)}function o(t){var n=e.map(t.nodes(),function(n){var r={};return e.forEach(t.inEdges(n),function(e){r[e.v]=(r[e.v]||0)+t.edge(e).weight}),r});return e.zipObject(t.nodes(),n)}function s(e,t){var n=e.x,r=e.y,i=t.x-n,a=t.y-r,o=e.width/2,s=e.height/2;if(!i&&!a)throw Error(`Not possible to find intersection inside of the rectangle`);var c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,l=s):(i<0&&(o=-o),c=o,l=o*a/i),{x:n+c,y:r+l}}function c(t){var n=e.map(e.range(f(t)+1),function(){return[]});return e.forEach(t.nodes(),function(r){var i=t.node(r),a=i.rank;e.isUndefined(a)||(n[a][i.order]=r)}),n}function l(t){var n=e.min(e.map(t.nodes(),function(e){return t.node(e).rank}));e.forEach(t.nodes(),function(r){var i=t.node(r);e.has(i,`rank`)&&(i.rank-=n)})}function u(t){var n=e.min(e.map(t.nodes(),function(e){return t.node(e).rank})),r=[];e.forEach(t.nodes(),function(e){var i=t.node(e).rank-n;r[i]||(r[i]=[]),r[i].push(e)});var i=0,a=t.graph().nodeRankFactor;e.forEach(r,function(n,r){e.isUndefined(n)&&r%a!==0?--i:i&&e.forEach(n,function(e){t.node(e).rank+=i})})}function d(e,t,r,i){var a={width:0,height:0};return arguments.length>=4&&(a.rank=r,a.order=i),n(e,`border`,a,t)}function f(t){return e.max(e.map(t.nodes(),function(n){var r=t.node(n).rank;if(!e.isUndefined(r))return r}))}function p(t,n){var r={lhs:[],rhs:[]};return e.forEach(t,function(e){n(e)?r.lhs.push(e):r.rhs.push(e)}),r}function m(t,n){var r=e.now();try{return n()}finally{console.log(t+` time: `+(e.now()-r)+`ms`)}}function h(e,t){return t()}return FG}var RG,zG;function BG(){if(zG)return RG;zG=1;var e=TG(),t=LG();RG={run:n,undo:i};function n(t){t.graph().dummyChains=[],e.forEach(t.edges(),function(e){r(t,e)})}function r(e,n){var r=n.v,i=e.node(r).rank,a=n.w,o=e.node(a).rank,s=n.name,c=e.edge(n),l=c.labelRank;if(o!==i+1){e.removeEdge(n);var u,d,f;for(f=0,++i;i<o;++f,++i)c.points=[],d={width:0,height:0,edgeLabel:c,edgeObj:n,rank:i},u=t.addDummyNode(e,`edge`,d,`_d`),i===l&&(d.width=c.width,d.height=c.height,d.dummy=`edge-label`,d.labelpos=c.labelpos),e.setEdge(r,u,{weight:c.weight},s),f===0&&e.graph().dummyChains.push(u),r=u;e.setEdge(r,a,{weight:c.weight},s)}}function i(t){e.forEach(t.graph().dummyChains,function(e){var n=t.node(e),r=n.edgeLabel,i;for(t.setEdge(n.edgeObj,r);n.dummy;)i=t.successors(e)[0],t.removeNode(e),r.points.push({x:n.x,y:n.y}),n.dummy===`edge-label`&&(r.x=n.x,r.y=n.y,r.width=n.width,r.height=n.height),e=i,n=t.node(e)})}return RG}var VG,HG;function UG(){if(HG)return VG;HG=1;var e=TG();VG={longestPath:t,slack:n};function t(t){var n={};function r(i){var a=t.node(i);if(e.has(n,i))return a.rank;n[i]=!0;var o=e.min(e.map(t.outEdges(i),function(e){return r(e.w)-t.edge(e).minlen}));return(o===1/0||o==null)&&(o=0),a.rank=o}e.forEach(t.sources(),r)}function n(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}return VG}var WG,GG;function KG(){if(GG)return WG;GG=1;var e=TG(),t=KH().Graph,n=UG().slack;WG=r;function r(e){var r=new t({directed:!1}),s=e.nodes()[0],c=e.nodeCount();r.setNode(s,{});for(var l,u;i(r,e)<c;)l=a(r,e),u=r.hasNode(l.v)?n(e,l):-n(e,l),o(r,e,u);return r}function i(t,r){function i(a){e.forEach(r.nodeEdges(a),function(e){var o=e.v,s=a===o?e.w:o;!t.hasNode(s)&&!n(r,e)&&(t.setNode(s,{}),t.setEdge(a,s,{}),i(s))})}return e.forEach(t.nodes(),i),t.nodeCount()}function a(t,r){return e.minBy(r.edges(),function(e){if(t.hasNode(e.v)!==t.hasNode(e.w))return n(r,e)})}function o(t,n,r){e.forEach(t.nodes(),function(e){n.node(e).rank+=r})}return WG}var qG,JG;function YG(){if(JG)return qG;JG=1;var e=TG(),t=KG(),n=UG().slack,r=UG().longestPath,i=KH().alg.preorder,a=KH().alg.postorder,o=LG().simplify;qG=s,s.initLowLimValues=d,s.initCutValues=c,s.calcCutValue=u,s.leaveEdge=p,s.enterEdge=m,s.exchangeEdges=h;function s(e){e=o(e),r(e);var n=t(e);d(n),c(n,e);for(var i,a;i=p(n);)a=m(n,e,i),h(n,e,i,a)}function c(t,n){var r=a(t,t.nodes());r=r.slice(0,r.length-1),e.forEach(r,function(e){l(t,n,e)})}function l(e,t,n){var r=e.node(n).parent;e.edge(n,r).cutvalue=u(e,t,n)}function u(t,n,r){var i=t.node(r).parent,a=!0,o=n.edge(r,i),s=0;return o||=(a=!1,n.edge(i,r)),s=o.weight,e.forEach(n.nodeEdges(r),function(e){var o=e.v===r,c=o?e.w:e.v;if(c!==i){var l=o===a,u=n.edge(e).weight;if(s+=l?u:-u,_(t,r,c)){var d=t.edge(r,c).cutvalue;s+=l?-d:d}}}),s}function d(e,t){arguments.length<2&&(t=e.nodes()[0]),f(e,{},1,t)}function f(t,n,r,i,a){var o=r,s=t.node(i);return n[i]=!0,e.forEach(t.neighbors(i),function(a){e.has(n,a)||(r=f(t,n,r,a,i))}),s.low=o,s.lim=r++,a?s.parent=a:delete s.parent,r}function p(t){return e.find(t.edges(),function(e){return t.edge(e).cutvalue<0})}function m(t,r,i){var a=i.v,o=i.w;r.hasEdge(a,o)||(a=i.w,o=i.v);var s=t.node(a),c=t.node(o),l=s,u=!1;s.lim>c.lim&&(l=c,u=!0);var d=e.filter(r.edges(),function(e){return u===v(t,t.node(e.v),l)&&u!==v(t,t.node(e.w),l)});return e.minBy(d,function(e){return n(r,e)})}function h(e,t,n,r){var i=n.v,a=n.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),d(e),c(e,t),g(e,t)}function g(t,n){var r=i(t,e.find(t.nodes(),function(e){return!n.node(e).parent}));r=r.slice(1),e.forEach(r,function(e){var r=t.node(e).parent,i=n.edge(e,r),a=!1;i||(i=n.edge(r,e),a=!0),n.node(e).rank=n.node(r).rank+(a?i.minlen:-i.minlen)})}function _(e,t,n){return e.hasEdge(t,n)}function v(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}return qG}var XG,ZG;function QG(){if(ZG)return XG;ZG=1;var e=UG().longestPath,t=KG(),n=YG();XG=r;function r(e){switch(e.graph().ranker){case`network-simplex`:o(e);break;case`tight-tree`:a(e);break;case`longest-path`:i(e);break;default:o(e)}}var i=e;function a(n){e(n),t(n)}function o(e){n(e)}return XG}var $G,eK;function tK(){if(eK)return $G;eK=1;var e=TG();$G=t;function t(t){var i=r(t);e.forEach(t.graph().dummyChains,function(e){for(var r=t.node(e),a=r.edgeObj,o=n(t,i,a.v,a.w),s=o.path,c=o.lca,l=0,u=s[l],d=!0;e!==a.w;){if(r=t.node(e),d){for(;(u=s[l])!==c&&t.node(u).maxRank<r.rank;)l++;u===c&&(d=!1)}if(!d){for(;l<s.length-1&&t.node(u=s[l+1]).minRank<=r.rank;)l++;u=s[l]}t.setParent(e,u),e=t.successors(e)[0]}})}function n(e,t,n,r){var i=[],a=[],o=Math.min(t[n].low,t[r].low),s=Math.max(t[n].lim,t[r].lim),c=n,l;do c=e.parent(c),i.push(c);while(c&&(t[c].low>o||s>t[c].lim));for(l=c,c=r;(c=e.parent(c))!==l;)a.push(c);return{path:i.concat(a.reverse()),lca:l}}function r(t){var n={},r=0;function i(a){var o=r;e.forEach(t.children(a),i),n[a]={low:o,lim:r++}}return e.forEach(t.children(),i),n}return $G}var nK,rK;function iK(){if(rK)return nK;rK=1;var e=TG(),t=LG();nK={run:n,cleanup:o};function n(n){var o=t.addDummyNode(n,`root`,{},`_root`),s=i(n),c=e.max(e.values(s))-1,l=2*c+1;n.graph().nestingRoot=o,e.forEach(n.edges(),function(e){n.edge(e).minlen*=l});var u=a(n)+1;e.forEach(n.children(),function(e){r(n,o,l,u,c,s,e)}),n.graph().nodeRankFactor=l}function r(n,i,a,o,s,c,l){var u=n.children(l);if(!u.length){l!==i&&n.setEdge(i,l,{weight:0,minlen:a});return}var d=t.addBorderNode(n,`_bt`),f=t.addBorderNode(n,`_bb`),p=n.node(l);n.setParent(d,l),p.borderTop=d,n.setParent(f,l),p.borderBottom=f,e.forEach(u,function(e){r(n,i,a,o,s,c,e);var t=n.node(e),u=t.borderTop?t.borderTop:e,p=t.borderBottom?t.borderBottom:e,m=t.borderTop?o:2*o,h=u===p?s-c[l]+1:1;n.setEdge(d,u,{weight:m,minlen:h,nestingEdge:!0}),n.setEdge(p,f,{weight:m,minlen:h,nestingEdge:!0})}),n.parent(l)||n.setEdge(i,d,{weight:0,minlen:s+c[l]})}function i(t){var n={};function r(i,a){var o=t.children(i);o&&o.length&&e.forEach(o,function(e){r(e,a+1)}),n[i]=a}return e.forEach(t.children(),function(e){r(e,1)}),n}function a(t){return e.reduce(t.edges(),function(e,n){return e+t.edge(n).weight},0)}function o(t){var n=t.graph();t.removeNode(n.nestingRoot),delete n.nestingRoot,e.forEach(t.edges(),function(e){t.edge(e).nestingEdge&&t.removeEdge(e)})}return nK}var aK,oK;function sK(){if(oK)return aK;oK=1;var e=TG(),t=LG();aK=n;function n(t){function n(i){var a=t.children(i),o=t.node(i);if(a.length&&e.forEach(a,n),e.has(o,`minRank`)){o.borderLeft=[],o.borderRight=[];for(var s=o.minRank,c=o.maxRank+1;s<c;++s)r(t,`borderLeft`,`_bl`,i,o,s),r(t,`borderRight`,`_br`,i,o,s)}}e.forEach(t.children(),n)}function r(e,n,r,i,a,o){var s={width:0,height:0,rank:o,borderType:n},c=a[n][o-1],l=t.addDummyNode(e,`border`,s,r);a[n][o]=l,e.setParent(l,i),c&&e.setEdge(c,l,{weight:1})}return aK}var cK,lK;function uK(){if(lK)return cK;lK=1;var e=TG();cK={adjust:t,undo:n};function t(e){var t=e.graph().rankdir.toLowerCase();(t===`lr`||t===`rl`)&&r(e)}function n(e){var t=e.graph().rankdir.toLowerCase();(t===`bt`||t===`rl`)&&a(e),(t===`lr`||t===`rl`)&&(s(e),r(e))}function r(t){e.forEach(t.nodes(),function(e){i(t.node(e))}),e.forEach(t.edges(),function(e){i(t.edge(e))})}function i(e){var t=e.width;e.width=e.height,e.height=t}function a(t){e.forEach(t.nodes(),function(e){o(t.node(e))}),e.forEach(t.edges(),function(n){var r=t.edge(n);e.forEach(r.points,o),e.has(r,`y`)&&o(r)})}function o(e){e.y=-e.y}function s(t){e.forEach(t.nodes(),function(e){c(t.node(e))}),e.forEach(t.edges(),function(n){var r=t.edge(n);e.forEach(r.points,c),e.has(r,`x`)&&c(r)})}function c(e){var t=e.x;e.x=e.y,e.y=t}return cK}var dK,fK;function pK(){if(fK)return dK;fK=1;var e=TG();dK=t;function t(t){var n={},r=e.filter(t.nodes(),function(e){return!t.children(e).length}),i=e.max(e.map(r,function(e){return t.node(e).rank})),a=e.map(e.range(i+1),function(){return[]});function o(r){e.has(n,r)||(n[r]=!0,a[t.node(r).rank].push(r),e.forEach(t.successors(r),o))}var s=e.sortBy(r,function(e){return t.node(e).rank});return e.forEach(s,o),a}return dK}var mK,hK;function gK(){if(hK)return mK;hK=1;var e=TG();mK=t;function t(e,t){for(var r=0,i=1;i<t.length;++i)r+=n(e,t[i-1],t[i]);return r}function n(t,n,r){for(var i=e.zipObject(r,e.map(r,function(e,t){return t})),a=e.flatten(e.map(n,function(n){return e.sortBy(e.map(t.outEdges(n),function(e){return{pos:i[e.w],weight:t.edge(e).weight}}),`pos`)}),!0),o=1;o<r.length;)o<<=1;var s=2*o-1;--o;var c=e.map(Array(s),function(){return 0}),l=0;return e.forEach(a.forEach(function(e){var t=e.pos+o;c[t]+=e.weight;for(var n=0;t>0;)t%2&&(n+=c[t+1]),t=t-1>>1,c[t]+=e.weight;l+=e.weight*n})),l}return mK}var _K,vK;function yK(){if(vK)return _K;vK=1;var e=TG();_K=t;function t(t,n){return e.map(n,function(n){var r=t.inEdges(n);if(r.length){var i=e.reduce(r,function(e,n){var r=t.edge(n),i=t.node(n.v);return{sum:e.sum+r.weight*i.order,weight:e.weight+r.weight}},{sum:0,weight:0});return{v:n,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:n}})}return _K}var bK,xK;function SK(){if(xK)return bK;xK=1;var e=TG();bK=t;function t(t,r){var i={};return e.forEach(t,function(t,n){var r=i[t.v]={indegree:0,in:[],out:[],vs:[t.v],i:n};e.isUndefined(t.barycenter)||(r.barycenter=t.barycenter,r.weight=t.weight)}),e.forEach(r.edges(),function(t){var n=i[t.v],r=i[t.w];!e.isUndefined(n)&&!e.isUndefined(r)&&(r.indegree++,n.out.push(i[t.w]))}),n(e.filter(i,function(e){return!e.indegree}))}function n(t){var n=[];function i(t){return function(n){n.merged||(e.isUndefined(n.barycenter)||e.isUndefined(t.barycenter)||n.barycenter>=t.barycenter)&&r(t,n)}}function a(e){return function(n){n.in.push(e),--n.indegree===0&&t.push(n)}}for(;t.length;){var o=t.pop();n.push(o),e.forEach(o.in.reverse(),i(o)),e.forEach(o.out,a(o))}return e.map(e.filter(n,function(e){return!e.merged}),function(t){return e.pick(t,[`vs`,`i`,`barycenter`,`weight`])})}function r(e,t){var n=0,r=0;e.weight&&(n+=e.barycenter*e.weight,r+=e.weight),t.weight&&(n+=t.barycenter*t.weight,r+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=n/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0}return bK}var CK,wK;function TK(){if(wK)return CK;wK=1;var e=TG(),t=LG();CK=n;function n(n,a){var o=t.partition(n,function(t){return e.has(t,`barycenter`)}),s=o.lhs,c=e.sortBy(o.rhs,function(e){return-e.i}),l=[],u=0,d=0,f=0;s.sort(i(!!a)),f=r(l,c,f),e.forEach(s,function(e){f+=e.vs.length,l.push(e.vs),u+=e.barycenter*e.weight,d+=e.weight,f=r(l,c,f)});var p={vs:e.flatten(l,!0)};return d&&(p.barycenter=u/d,p.weight=d),p}function r(t,n,r){for(var i;n.length&&(i=e.last(n)).i<=r;)n.pop(),t.push(i.vs),r++;return r}function i(e){return function(t,n){return t.barycenter<n.barycenter?-1:t.barycenter>n.barycenter?1:e?n.i-t.i:t.i-n.i}}return CK}var EK,DK;function OK(){if(DK)return EK;DK=1;var e=TG(),t=yK(),n=SK(),r=TK();EK=i;function i(s,c,l,u){var d=s.children(c),f=s.node(c),p=f?f.borderLeft:void 0,m=f?f.borderRight:void 0,h={};p&&(d=e.filter(d,function(e){return e!==p&&e!==m}));var g=t(s,d);e.forEach(g,function(t){if(s.children(t.v).length){var n=i(s,t.v,l,u);h[t.v]=n,e.has(n,`barycenter`)&&o(t,n)}});var _=n(g,l);a(_,h);var v=r(_,u);if(p&&(v.vs=e.flatten([p,v.vs,m],!0),s.predecessors(p).length)){var y=s.node(s.predecessors(p)[0]),b=s.node(s.predecessors(m)[0]);e.has(v,`barycenter`)||(v.barycenter=0,v.weight=0),v.barycenter=(v.barycenter*v.weight+y.order+b.order)/(v.weight+2),v.weight+=2}return v}function a(t,n){e.forEach(t,function(t){t.vs=e.flatten(t.vs.map(function(e){return n[e]?n[e].vs:e}),!0)})}function o(t,n){e.isUndefined(t.barycenter)?(t.barycenter=n.barycenter,t.weight=n.weight):(t.barycenter=(t.barycenter*t.weight+n.barycenter*n.weight)/(t.weight+n.weight),t.weight+=n.weight)}return EK}var kK,AK;function jK(){if(AK)return kK;AK=1;var e=TG(),t=KH().Graph;kK=n;function n(n,i,a){var o=r(n),s=new t({compound:!0}).setGraph({root:o}).setDefaultNodeLabel(function(e){return n.node(e)});return e.forEach(n.nodes(),function(t){var r=n.node(t),c=n.parent(t);(r.rank===i||r.minRank<=i&&i<=r.maxRank)&&(s.setNode(t),s.setParent(t,c||o),e.forEach(n[a](t),function(r){var i=r.v===t?r.w:r.v,a=s.edge(i,t),o=e.isUndefined(a)?0:a.weight;s.setEdge(i,t,{weight:n.edge(r).weight+o})}),e.has(r,`minRank`)&&s.setNode(t,{borderLeft:r.borderLeft[i],borderRight:r.borderRight[i]}))}),s}function r(t){for(var n;t.hasNode(n=e.uniqueId(`_root`)););return n}return kK}var MK,NK;function PK(){if(NK)return MK;NK=1;var e=TG();MK=t;function t(t,n,r){var i={},a;e.forEach(r,function(e){for(var r=t.parent(e),o,s;r;){if(o=t.parent(r),o?(s=i[o],i[o]=r):(s=a,a=r),s&&s!==r){n.setEdge(s,r);return}r=o}})}return MK}var FK,IK;function LK(){if(IK)return FK;IK=1;var e=TG(),t=pK(),n=gK(),r=OK(),i=jK(),a=PK(),o=KH().Graph,s=LG();FK=c;function c(r){var i=s.maxRank(r),a=l(r,e.range(1,i+1),`inEdges`),o=l(r,e.range(i-1,-1,-1),`outEdges`),c=t(r);d(r,c);for(var f=1/0,p,m=0,h=0;h<4;++m,++h){u(m%2?a:o,m%4>=2),c=s.buildLayerMatrix(r);var g=n(r,c);g<f&&(h=0,p=e.cloneDeep(c),f=g)}d(r,p)}function l(t,n,r){return e.map(n,function(e){return i(t,e,r)})}function u(t,n){var i=new o;e.forEach(t,function(t){var o=t.graph().root,s=r(t,o,i,n);e.forEach(s.vs,function(e,n){t.node(e).order=n}),a(t,i,s.vs)})}function d(t,n){e.forEach(n,function(n){e.forEach(n,function(e,n){t.node(e).order=n})})}return FK}var RK,zK;function BK(){if(zK)return RK;zK=1;var e=TG(),t=KH().Graph,n=LG();RK={positionX:m,findType1Conflicts:r,findType2Conflicts:i,addConflict:o,hasConflict:s,verticalAlignment:c,horizontalCompaction:l,alignCoordinates:f,findSmallestWidthAlignment:d,balance:p};function r(t,n){var r={};function i(n,i){var s=0,c=0,l=n.length,u=e.last(i);return e.forEach(i,function(n,d){var f=a(t,n),p=f?t.node(f).order:l;(f||n===u)&&(e.forEach(i.slice(c,d+1),function(n){e.forEach(t.predecessors(n),function(e){var i=t.node(e),a=i.order;(a<s||p<a)&&!(i.dummy&&t.node(n).dummy)&&o(r,e,n)})}),c=d+1,s=p)}),i}return e.reduce(n,i),r}function i(t,n){var r={};function i(n,i,a,s,c){var l;e.forEach(e.range(i,a),function(i){l=n[i],t.node(l).dummy&&e.forEach(t.predecessors(l),function(e){var n=t.node(e);n.dummy&&(n.order<s||n.order>c)&&o(r,e,l)})})}function a(n,r){var a=-1,o,s=0;return e.forEach(r,function(e,c){if(t.node(e).dummy===`border`){var l=t.predecessors(e);l.length&&(o=t.node(l[0]).order,i(r,s,c,a,o),s=c,a=o)}i(r,s,r.length,o,n.length)}),r}return e.reduce(n,a),r}function a(t,n){if(t.node(n).dummy)return e.find(t.predecessors(n),function(e){return t.node(e).dummy})}function o(e,t,n){if(t>n){var r=t;t=n,n=r}var i=e[t];i||(e[t]=i={}),i[n]=!0}function s(t,n,r){if(n>r){var i=n;n=r,r=i}return e.has(t[n],r)}function c(t,n,r,i){var a={},o={},c={};return e.forEach(n,function(t){e.forEach(t,function(e,t){a[e]=e,o[e]=e,c[e]=t})}),e.forEach(n,function(t){var n=-1;e.forEach(t,function(t){var l=i(t);if(l.length){l=e.sortBy(l,function(e){return c[e]});for(var u=(l.length-1)/2,d=Math.floor(u),f=Math.ceil(u);d<=f;++d){var p=l[d];o[t]===t&&n<c[p]&&!s(r,t,p)&&(o[p]=t,o[t]=a[t]=a[p],n=c[p])}}})}),{root:a,align:o}}function l(t,n,r,i,a){var o={},s=u(t,n,r,a),c=a?`borderLeft`:`borderRight`;function l(e,t){for(var n=s.nodes(),r=n.pop(),i={};r;)i[r]?e(r):(i[r]=!0,n.push(r),n=n.concat(t(r))),r=n.pop()}function d(e){o[e]=s.inEdges(e).reduce(function(e,t){return Math.max(e,o[t.v]+s.edge(t))},0)}function f(e){var n=s.outEdges(e).reduce(function(e,t){return Math.min(e,o[t.w]-s.edge(t))},1/0),r=t.node(e);n!==1/0&&r.borderType!==c&&(o[e]=Math.max(o[e],n))}return l(d,s.predecessors.bind(s)),l(f,s.successors.bind(s)),e.forEach(i,function(e){o[e]=o[r[e]]}),o}function u(n,r,i,a){var o=new t,s=n.graph(),c=h(s.nodesep,s.edgesep,a);return e.forEach(r,function(t){var r;e.forEach(t,function(e){var t=i[e];if(o.setNode(t),r){var a=i[r],s=o.edge(a,t);o.setEdge(a,t,Math.max(c(n,e,r),s||0))}r=e})}),o}function d(t,n){return e.minBy(e.values(n),function(n){var r=-1/0,i=1/0;return e.forIn(n,function(e,n){var a=g(t,n)/2;r=Math.max(e+a,r),i=Math.min(e-a,i)}),r-i})}function f(t,n){var r=e.values(n),i=e.min(r),a=e.max(r);e.forEach([`u`,`d`],function(r){e.forEach([`l`,`r`],function(o){var s=r+o,c=t[s],l;if(c!==n){var u=e.values(c);l=o===`l`?i-e.min(u):a-e.max(u),l&&(t[s]=e.mapValues(c,function(e){return e+l}))}})})}function p(t,n){return e.mapValues(t.ul,function(r,i){if(n)return t[n.toLowerCase()][i];var a=e.sortBy(e.map(t,i));return(a[1]+a[2])/2})}function m(t){var a=n.buildLayerMatrix(t),o=e.merge(r(t,a),i(t,a)),s={},u;return e.forEach([`u`,`d`],function(n){u=n===`u`?a:e.values(a).reverse(),e.forEach([`l`,`r`],function(r){r===`r`&&(u=e.map(u,function(t){return e.values(t).reverse()}));var i=(n===`u`?t.predecessors:t.successors).bind(t),a=c(t,u,o,i),d=l(t,u,a.root,a.align,r===`r`);r===`r`&&(d=e.mapValues(d,function(e){return-e})),s[n+r]=d})}),f(s,d(t,s)),p(s,t.graph().align)}function h(t,n,r){return function(i,a,o){var s=i.node(a),c=i.node(o),l=0,u;if(l+=s.width/2,e.has(s,`labelpos`))switch(s.labelpos.toLowerCase()){case`l`:u=-s.width/2;break;case`r`:u=s.width/2;break}if(u&&(l+=r?u:-u),u=0,l+=(s.dummy?n:t)/2,l+=(c.dummy?n:t)/2,l+=c.width/2,e.has(c,`labelpos`))switch(c.labelpos.toLowerCase()){case`l`:u=c.width/2;break;case`r`:u=-c.width/2;break}return u&&(l+=r?u:-u),u=0,l}}function g(e,t){return e.node(t).width}return RK}var VK,HK;function UK(){if(HK)return VK;HK=1;var e=TG(),t=LG(),n=BK().positionX;VK=r;function r(r){r=t.asNonCompoundGraph(r),i(r),e.forEach(n(r),function(e,t){r.node(t).x=e})}function i(n){var r=t.buildLayerMatrix(n),i=n.graph().ranksep,a=0;e.forEach(r,function(t){var r=e.max(e.map(t,function(e){return n.node(e).height}));e.forEach(t,function(e){n.node(e).y=a+r/2}),a+=r+i})}return VK}var WK,GK;function KK(){if(GK)return WK;GK=1;var e=TG(),t=PG(),n=BG(),r=QG(),i=LG().normalizeRanks,a=tK(),o=LG().removeEmptyRanks,s=iK(),c=sK(),l=uK(),u=LK(),d=UK(),f=LG(),p=KH().Graph;WK=m;function m(e,t){var n=t&&t.debugTiming?f.time:f.notime;n(`layout`,function(){var t=n(` buildLayoutGraph`,function(){return T(e)});n(` runLayout`,function(){h(t,n)}),n(` updateInputGraph`,function(){g(e,t)})})}function h(e,p){p(` makeSpaceForEdgeLabels`,function(){E(e)}),p(` removeSelfEdges`,function(){ne(e)}),p(` acyclic`,function(){t.run(e)}),p(` nestingGraph.run`,function(){s.run(e)}),p(` rank`,function(){r(f.asNonCompoundGraph(e))}),p(` injectEdgeLabelProxies`,function(){D(e)}),p(` removeEmptyRanks`,function(){o(e)}),p(` nestingGraph.cleanup`,function(){s.cleanup(e)}),p(` normalizeRanks`,function(){i(e)}),p(` assignRankMinMax`,function(){O(e)}),p(` removeEdgeLabelProxies`,function(){k(e)}),p(` normalize.run`,function(){n.run(e)}),p(` parentDummyChains`,function(){a(e)}),p(` addBorderSegments`,function(){c(e)}),p(` order`,function(){u(e)}),p(` insertSelfEdges`,function(){re(e)}),p(` adjustCoordinateSystem`,function(){l.adjust(e)}),p(` position`,function(){d(e)}),p(` positionSelfEdges`,function(){ie(e)}),p(` removeBorderNodes`,function(){M(e)}),p(` normalize.undo`,function(){n.undo(e)}),p(` fixupEdgeLabelCoords`,function(){ee(e)}),p(` undoCoordinateSystem`,function(){l.undo(e)}),p(` translateGraph`,function(){A(e)}),p(` assignNodeIntersects`,function(){j(e)}),p(` reversePoints`,function(){te(e)}),p(` acyclic.undo`,function(){t.undo(e)})}function g(t,n){e.forEach(t.nodes(),function(e){var r=t.node(e),i=n.node(e);r&&(r.x=i.x,r.y=i.y,n.children(e).length&&(r.width=i.width,r.height=i.height))}),e.forEach(t.edges(),function(r){var i=t.edge(r),a=n.edge(r);i.points=a.points,e.has(a,`x`)&&(i.x=a.x,i.y=a.y)}),t.graph().width=n.graph().width,t.graph().height=n.graph().height}var _=[`nodesep`,`edgesep`,`ranksep`,`marginx`,`marginy`],v={ranksep:50,edgesep:20,nodesep:50,rankdir:`tb`},y=[`acyclicer`,`ranker`,`rankdir`,`align`],b=[`width`,`height`],x={width:0,height:0},S=[`minlen`,`weight`,`width`,`height`,`labeloffset`],C={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:`r`},w=[`labelpos`];function T(t){var n=new p({multigraph:!0,compound:!0}),r=P(t.graph());return n.setGraph(e.merge({},v,N(r,_),e.pick(r,y))),e.forEach(t.nodes(),function(r){var i=P(t.node(r));n.setNode(r,e.defaults(N(i,b),x)),n.setParent(r,t.parent(r))}),e.forEach(t.edges(),function(r){var i=P(t.edge(r));n.setEdge(r,e.merge({},C,N(i,S),e.pick(i,w)))}),n}function E(t){var n=t.graph();n.ranksep/=2,e.forEach(t.edges(),function(e){var r=t.edge(e);r.minlen*=2,r.labelpos.toLowerCase()!==`c`&&(n.rankdir===`TB`||n.rankdir===`BT`?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function D(t){e.forEach(t.edges(),function(e){var n=t.edge(e);if(n.width&&n.height){var r=t.node(e.v),i={rank:(t.node(e.w).rank-r.rank)/2+r.rank,e};f.addDummyNode(t,`edge-proxy`,i,`_ep`)}})}function O(t){var n=0;e.forEach(t.nodes(),function(r){var i=t.node(r);i.borderTop&&(i.minRank=t.node(i.borderTop).rank,i.maxRank=t.node(i.borderBottom).rank,n=e.max(n,i.maxRank))}),t.graph().maxRank=n}function k(t){e.forEach(t.nodes(),function(e){var n=t.node(e);n.dummy===`edge-proxy`&&(t.edge(n.e).labelRank=n.rank,t.removeNode(e))})}function A(t){var n=1/0,r=0,i=1/0,a=0,o=t.graph(),s=o.marginx||0,c=o.marginy||0;function l(e){var t=e.x,o=e.y,s=e.width,c=e.height;n=Math.min(n,t-s/2),r=Math.max(r,t+s/2),i=Math.min(i,o-c/2),a=Math.max(a,o+c/2)}e.forEach(t.nodes(),function(e){l(t.node(e))}),e.forEach(t.edges(),function(n){var r=t.edge(n);e.has(r,`x`)&&l(r)}),n-=s,i-=c,e.forEach(t.nodes(),function(e){var r=t.node(e);r.x-=n,r.y-=i}),e.forEach(t.edges(),function(r){var a=t.edge(r);e.forEach(a.points,function(e){e.x-=n,e.y-=i}),e.has(a,`x`)&&(a.x-=n),e.has(a,`y`)&&(a.y-=i)}),o.width=r-n+s,o.height=a-i+c}function j(t){e.forEach(t.edges(),function(e){var n=t.edge(e),r=t.node(e.v),i=t.node(e.w),a,o;n.points?(a=n.points[0],o=n.points[n.points.length-1]):(n.points=[],a=i,o=r),n.points.unshift(f.intersectRect(r,a)),n.points.push(f.intersectRect(i,o))})}function ee(t){e.forEach(t.edges(),function(n){var r=t.edge(n);if(e.has(r,`x`))switch((r.labelpos===`l`||r.labelpos===`r`)&&(r.width-=r.labeloffset),r.labelpos){case`l`:r.x-=r.width/2+r.labeloffset;break;case`r`:r.x+=r.width/2+r.labeloffset;break}})}function te(t){e.forEach(t.edges(),function(e){var n=t.edge(e);n.reversed&&n.points.reverse()})}function M(t){e.forEach(t.nodes(),function(n){if(t.children(n).length){var r=t.node(n),i=t.node(r.borderTop),a=t.node(r.borderBottom),o=t.node(e.last(r.borderLeft)),s=t.node(e.last(r.borderRight));r.width=Math.abs(s.x-o.x),r.height=Math.abs(a.y-i.y),r.x=o.x+r.width/2,r.y=i.y+r.height/2}}),e.forEach(t.nodes(),function(e){t.node(e).dummy===`border`&&t.removeNode(e)})}function ne(t){e.forEach(t.edges(),function(e){if(e.v===e.w){var n=t.node(e.v);n.selfEdges||=[],n.selfEdges.push({e,label:t.edge(e)}),t.removeEdge(e)}})}function re(t){var n=f.buildLayerMatrix(t);e.forEach(n,function(n){var r=0;e.forEach(n,function(n,i){var a=t.node(n);a.order=i+r,e.forEach(a.selfEdges,function(e){f.addDummyNode(t,`selfedge`,{width:e.label.width,height:e.label.height,rank:a.rank,order:i+ ++r,e:e.e,label:e.label},`_se`)}),delete a.selfEdges})})}function ie(t){e.forEach(t.nodes(),function(e){var n=t.node(e);if(n.dummy===`selfedge`){var r=t.node(n.e.v),i=r.x+r.width/2,a=r.y,o=n.x-i,s=r.height/2;t.setEdge(n.e,n.label),t.removeNode(e),n.label.points=[{x:i+2*o/3,y:a-s},{x:i+5*o/6,y:a-s},{x:i+o,y:a},{x:i+5*o/6,y:a+s},{x:i+2*o/3,y:a+s}],n.label.x=n.x,n.label.y=n.y}})}function N(t,n){return e.mapValues(e.pick(t,n),Number)}function P(t){var n={};return e.forEach(t,function(e,t){n[t.toLowerCase()]=e}),n}return WK}var qK,JK;function YK(){if(JK)return qK;JK=1;var e=TG(),t=LG(),n=KH().Graph;qK={debugOrdering:r};function r(r){var i=t.buildLayerMatrix(r),a=new n({compound:!0,multigraph:!0}).setGraph({});return e.forEach(r.nodes(),function(e){a.setNode(e,{label:e}),a.setParent(e,`layer`+r.node(e).rank)}),e.forEach(r.edges(),function(e){a.setEdge(e.v,e.w,{},e.name)}),e.forEach(i,function(t,n){var r=`layer`+n;a.setNode(r,{rank:`same`}),e.reduce(t,function(e,t){return a.setEdge(e,t,{style:`invis`}),t})}),a}return qK}var XK,ZK;function QK(){return ZK?XK:(ZK=1,XK=`0.8.5`,XK)}var $K,eq;function tq(){return eq?$K:(eq=1,$K={graphlib:KH(),layout:KK(),debug:YK(),util:{time:LG().time,notime:LG().notime},version:QK()},$K)}var nq=tq(),rq=qA(nq),iq=function(e){return hk(e,`Boolean`)};function aq(e,t){if(e){var n;if(mE(e))for(var r=0,i=e.length;r<i&&(n=t(e[r],r),n!==!1);r++);else if(YD(e)){for(var a in e)if(e.hasOwnProperty(a)&&(n=t(e[a],a),n===!1))break}}}var oq=Object.prototype.hasOwnProperty,sq=(function(e,t){if(e===null||!gk(e))return{};var n={};return aq(t,function(t){oq.call(e,t)&&(n[t]=e[t])}),n}),cq=class extends tT{constructor(){super(...arguments),this.id=`dagre`,this.isCompoundGraph=null,this.config={graphAttributes:[`rankdir`,`align`,`nodesep`,`edgesep`,`ranksep`,`marginx`,`marginy`,`acyclicer`,`ranker`],nodeAttributes:[`width`,`height`],edgeAttributes:[`minlen`,`weight`,`width`,`height`,`labelpos`,`labeloffset`]}}getDefaultOptions(){return{directed:!0,multigraph:!0,rankdir:`TB`,align:void 0,nodesep:50,edgesep:10,ranksep:50,marginx:0,marginy:0,acyclicer:void 0,ranker:`network-simplex`,nodeSize:[0,0],edgeMinLen:1,edgeWeight:1,edgeLabelSize:[0,0],edgeLabelPos:`r`,edgeLabelOffset:10}}layout(){return RC(this,void 0,void 0,function*(){let e=new nq.graphlib.Graph({directed:!!this.options.directed,multigraph:!!this.options.multigraph,compound:this.isCompound()});e.setGraph(sq(this.options,this.config.graphAttributes)),e.setDefaultEdgeLabel(()=>({}));let t=gw(this.options.nodeSize,0);this.model.forEachNode(n=>{let r=n._original,[i,a]=lw(t(r)),o={width:i,height:a};if(e.setNode(String(n.id),o),this.isCompound()){if(dw(n.parentId))return;e.setParent(String(n.id),String(n.parentId))}});let{edgeLabelSize:n,edgeLabelOffset:r,edgeLabelPos:i,edgeMinLen:a,edgeWeight:o}=this.options,s=gw(n,0,`edge`),c=hw(r,10,`edge`),l=typeof i==`string`?()=>i:mw(i,[`edge`]),u=hw(a,1,`edge`),d=hw(o,1,`edge`);this.model.forEachEdge(t=>{let n=t._original,[r,i]=lw(s(n)),a={width:r,height:i,labelpos:l(n),labeloffset:c(n),minlen:u(n),weight:d(n)};e.setEdge(String(t.source),String(t.target),a,String(t.id))}),rq.layout(e),this.model.forEachNode(t=>{let n=e.node(String(t.id));n&&(t.x=n.x,t.y=n.y,t.size=[n.width,n.height])}),this.model.forEachEdge(t=>{let n=e.edge(String(t.source),String(t.target),String(t.id));if(!n)return;let{width:r,height:i,weight:a,minlen:o,labelpos:s,labeloffset:c,points:l}=n;t.labelSize=[r,i],t.weight=a,t.minLen=o,t.labelPos=s,t.labelOffset=c,t.points=l.map(vw)})})}isCompound(){return this.isCompoundGraph===null?iq(this.options.compound)?this.isCompoundGraph=this.options.compound:(this.isCompoundGraph=this.model.nodes().some(e=>!dw(e.parentId)),this.isCompoundGraph):this.isCompoundGraph}};function lq(e=2){let t=!1;function n(t,n){t.forEachEdge(r=>{let{source:i,target:a}=r,o=t.node(i),s=t.node(a);if(!o||!s)return;let c=s.x-o.x,l=s.y-o.y,u=e===3?(s.z??0)-(o.z??0):0;!c&&!l&&(c=.01,l=.01,e===3&&!u&&(u=.01));let d=Math.sqrt(c*c+l*l+u*u);if(d<Number(o.size)+Number(s.size))return;let f=c/d,p=l/d,m=u/d,{linkDistance:h=200,edgeStrength:g=200}=r,_=(h-d)*g,v=o.mass||1,y=s.mass||1,b=1/v,x=1/y,S=f*_,C=p*_,w=m*_;n[i].x-=S*b,n[i].y-=C*b,n[i].z-=w*b,n[a].x+=S*x,n[a].y+=C*x,n[a].z+=w*x})}return n.dimensions=function(t){return arguments.length?(e=t,n):e},n.preventOverlap=function(e){return arguments.length?(t=e,n):t},n}function uq(e){let t,n=800,r=600;function i(e,i){if(!t)return;let{leaf:a,single:o,others:s,center:c}=t,l=e.nodes(),u=e.edges(),d=l.map(e=>Object.assign(Object.assign({},e),{data:e.data||{}})),f=u.map(e=>Object.assign(Object.assign({},e),{data:e.data||{}}));e.forEachNode(t=>{let{id:l,mass:u,x:p,y:m,z:h=0,data:g}=t,_=e.degree(l,`in`),v=e.degree(l,`out`),y=e.degree(l,`both`),b=Object.assign(Object.assign({},t),{data:g||{}}),{x,y:S,z:C,centerStrength:w}=c?.(b,d,f,n,r)||{x:0,y:0,z:0,centerStrength:0};if(!cw(x)||!cw(S))return;let T=(p-x)/u,E=(m-S)/u,D=(h-(C||0))/u;if(w&&(i[l].x-=w*T,i[l].y-=w*E,i[l].z-=w*D),y===0){let e=o(b);if(!e)return;i[l].x-=e*T,i[l].y-=e*E,i[l].z-=e*D;return}if(_===0||v===0){let e=a(b,d,f);if(!e)return;i[l].x-=e*T,i[l].y-=e*E,i[l].z-=e*D;return}let O=s(b);O&&(i[l].x-=O*T,i[l].y-=O*E,i[l].z-=O*D)})}return i.options=function(e){return arguments.length?(t=e,i):t},i.width=function(e){return arguments.length?(n=e,i):n},i.height=function(e){return arguments.length?(r=e,i):r},i}var dq=1e-6,fq=500;function pq(e=2){let t=1;function n(n,r){let i=n.nodes();if(i.length<2||t<=0)return;if(e===2){let e=i.map((e,t)=>({id:e.id,index:t,x:e.x,y:e.y,r:Number(e.size)/2,mass:e.mass||1,fx:e.fx,fy:e.fy})),t=ek(e,e=>e.x,e=>e.y).visitAfter(mq);for(let n of e)t.visit((e,t,i,o,s)=>{let c=e.r||0,l=n.r+c;if(t>n.x+l||o<n.x-l||i>n.y+l||s<n.y-l)return!0;if(!e.data)return!1;let u=e;do{let e=u.data;e&&e.index>n.index&&a(n,e,r),u=u.next}while(u);return!1});return}let s=i.map((e,t)=>({id:e.id,index:t,x:e.x,y:e.y,z:e.z??0,r:Number(e.size)/2,mass:e.mass||1,fx:e.fx,fy:e.fy,fz:e.fz}));for(let e=0;e<s.length;e++)for(let t=e+1;t<s.length;t++)o(s[e],s[t],r)}function r(e){return cw(e.fx)&&cw(e.fy)?0:1/(e.mass||1)}function i(e){return cw(e.fx)&&cw(e.fy)&&cw(e.fz)?0:1/(e.mass||1)}function a(e,n,i){let a=e.x-n.x,o=e.y-n.y,s=Math.hypot(a,o),c=e.r+n.r;if(s>=c)return;s<dq&&(a=e.index<n.index?dq:-dq,o=0,s=Math.abs(a));let l=c-s,u=a/s,d=o/s,f=l*t*fq,p=r(e),m=r(n);p&&(i[e.id].x+=u*f*p,i[e.id].y+=d*f*p),m&&(i[n.id].x-=u*f*m,i[n.id].y-=d*f*m)}function o(e,n,r){let a=e.x-n.x,o=e.y-n.y,s=e.z-n.z,c=Math.sqrt(a*a+o*o+s*s),l=e.r+n.r;if(c>=l)return;c<dq&&(a=e.index<n.index?dq:-dq,o=0,s=0,c=Math.abs(a));let u=l-c,d=a/c,f=o/c,p=s/c,m=u*t*fq,h=i(e),g=i(n);h&&(r[e.id].x+=d*m*h,r[e.id].y+=f*m*h,r[e.id].z+=p*m*h),g&&(r[n.id].x-=d*m*g,r[n.id].y-=f*m*g,r[n.id].z-=p*m*g)}return n.dimensions=function(t){return arguments.length?(e=t,n):e},n.strength=function(e){return arguments.length?(t=e,n):t},n}function mq(e){let t=0;if(e.length)for(let n=0;n<e.length;n++){let r=e[n];r&&r.r>t&&(t=r.r)}else if(e.data){t=e.data.r||0;let n=e.next;for(;n;)t=Math.max(t,n.data?.r||0),n=n.next}e.r=t}function hq(e=[0,0,0],t=10){let n;function r(r,i){r.nodes()&&r.forEachNode(a=>{let{id:o,mass:s,x:c,y:l,z:u=0}=a,d=0,f=0,p=0,m=t,h=r.degree(o),g=n?.(a,h);if(g){let[e,t,n]=g;d=c-e,f=l-t,m=n}else d=c-e[0],f=l-e[1],p=u-(e[2]||0);m&&(i[o].x-=m*d/s,i[o].y-=m*f/s,i[o].z-=m*p/s)})}return r.center=function(t){return arguments.length?(e=t,r):e},r.gravity=function(e){return arguments.length?(t=e,r):t},r.getCenter=function(e){return arguments.length?(n=e,r):n},r}function gq(e=1,t=.005,n=2){function r(r,i){let a=t*t;yq(r,e,a,i,n)}return r.factor=function(t){return arguments.length?(e=t,r):e},r.coulombDisScale=function(e){return arguments.length?(t=e,r):t},r.dimensions=function(e){return arguments.length?(n=e,r):n},r}var _q=.81,vq=.1;function yq(e,t,n,r,i=2){let a=t/n,o=e.nodes().map((e,t)=>{let{nodeStrength:n,x:r,y:i,z:o,size:s,mass:c}=e;return{x:r,y:i,z:o,size:s,index:t,id:e.id,vx:0,vy:0,vz:0,weight:a*n,mass:c||1}}),s=(i===2?ek(o,e=>e.x,e=>e.y):bA(o,e=>e.x,e=>e.y,e=>e.z)).visitAfter(bq),c=new Map;return o.forEach(e=>{c.set(e.id,e),Sq(e,s,i)}),o.map(e=>{let t=e.id;r[t]={x:e.vx/e.mass,y:e.vy/e.mass,z:e.vz/e.mass}}),r}function bq(e){let t=0,n=0,r=0,i=0,a=0,o=e.length;if(o){for(let s=0;s<o;s++){let o=e[s];o&&o.weight&&(t+=o.weight,n+=o.x*o.weight,r+=o.y*o.weight,i+=o.z*o.weight,a+=o.size*o.weight)}e.x=n/t,e.y=r/t,e.z=i/t,e.size=a/t,e.weight=t}else{let t=e;e.x=t.data.x,e.y=t.data.y,e.z=t.data.z,e.size=t.data.size,e.weight=t.data.weight}}var xq=(e,t,n,r,i,a,o,s,c)=>{if(e.data?.id===s.id)return;let l=c===2?r:c===3?a:n,u=s.x-e.x||vq,d=s.y-e.y||vq,f=s.z-e.z||vq,p=[u,d,f],m=l-t,h=0;for(let e=0;e<c;e++)h+=p[e]*p[e];let g=Math.sqrt(h)*h;if(m*m*_q<h){let t=e.weight/g;return s.vx+=u*t,s.vy+=d*t,s.vz+=f*t,!0}if(e.length)return!1;if(e.data!==s){let t=e.data.weight/g;s.vx+=u*t,s.vy+=d*t,s.vz+=f*t}};function Sq(e,t,n){t.visit((t,r,i,a,o,s,c)=>xq(t,r,i,a,o,s,c,e,n))}var Cq=`*`,wq=function(){function e(){this._events={}}return e.prototype.on=function(e,t,n){return this._events[e]||(this._events[e]=[]),this._events[e].push({callback:t,once:!!n}),this},e.prototype.once=function(e,t){return this.on(e,t,!0)},e.prototype.emit=function(e){for(var t=this,n=[],r=1;r<arguments.length;r++)n[r-1]=arguments[r];var i=this._events[e]||[],a=this._events[Cq]||[],o=function(r){for(var i=r.length,a=0;a<i;a++)if(r[a]){var o=r[a],s=o.callback;o.once&&(r.splice(a,1),r.length===0&&delete t._events[e],i--,a--),s.apply(t,n)}};o(i),o(a)},e.prototype.off=function(e,t){if(!e)this._events={};else if(!t)delete this._events[e];else{for(var n=this._events[e]||[],r=n.length,i=0;i<r;i++)n[i].callback===t&&(n.splice(i,1),r--,i--);n.length===0&&delete this._events[e]}return this},e.prototype.getEvents=function(){return this._events},e}(),Tq=class extends wq{constructor(){super(...arguments),this.iteration=0,this.judgingDistance=1/0,this.running=!1,this.tickCallback=null,this.endCallback=null,this.timer=0}initialize(e){this.options=e,this.iteration=0,this.judgingDistance=1/0}on(e,t){return e===`tick`&&(this.tickCallback=t),e===`end`&&(this.endCallback=t),this}tick(e=1){var t;for(let n=0;n<e;n++){let e=this.runOneStep();this.judgingDistance=e,this.iteration++,(t=this.tickCallback)==null||t.call(this)}return this}restart(){if(this.running)return this;let{maxIteration:e=500,minMovement:t=0,animate:n=!0}=this.options;if(!n||typeof window>`u`){for(;this.iteration<e&&(this.judgingDistance>t||this.iteration<1);)this.tick(1);return Promise.resolve().then(()=>{var e;(e=this.endCallback)==null||e.call(this)}),this}return this.running=!0,this.timer=window.setInterval(()=>{var n;this.tick(1),(this.iteration>=e||this.judgingDistance<t)&&(this.stop(),(n=this.endCallback)==null||n.call(this))},0),this}stop(){return this.running=!1,this.timer&&=(clearInterval(this.timer),0),this}},Eq=class extends Tq{constructor(){super(...arguments),this.forces=new Map,this.velMap={}}data(e){return this.model=e,e.forEachNode(e=>{this.velMap[e.id]={x:0,y:0,z:0}}),this}force(e,t){return arguments.length===1?this.forces.get(e)||null:(t===null?this.forces.delete(e):t&&this.forces.set(e,t),t||null)}runOneStep(){let e={},t=this.model.nodes();if(!t.length)return 0;t.forEach(t=>{e[t.id]={x:0,y:0,z:0}}),this.forces.forEach(t=>{t(this.model,e)}),this.updateVelocity(e);let n=this.updatePosition();return this.monitor(e,t),n}setFixedPosition(e,t){let n=this.model.node(e);if(!n)return;let r=[`fx`,`fy`,`fz`];if(t===null){r.forEach(e=>delete n[e]);return}t.forEach((e,t)=>{t<r.length&&(typeof e==`number`||e===null)&&(n[r[t]]=e)});let i=this.velMap[e];i&&(i.x=0,i.y=0,i.z=0)}updateVelocity(e){let{damping:t=.9,maxSpeed:n=100,interval:r=.02,dimensions:i=2}=this.options;this.model.nodes().forEach(a=>{let o=a.id,s=(this.velMap[o].x+e[o].x*r)*t,c=(this.velMap[o].y+e[o].y*r)*t,l=i===3?(this.velMap[o].z+e[o].z*r)*t:0,u=Math.sqrt(s*s+c*c+l*l);if(u>n){let e=n/u;s*=e,c*=e,l*=e}this.velMap[o]={x:s,y:c,z:l}})}updatePosition(){let{distanceThresholdMode:e=`mean`,interval:t=.02,dimensions:n=2}=this.options,r=this.model.nodes(),i=0,a=e===`max`?-1/0:e===`min`?1/0:0;return r.forEach(r=>{let o=r.id;if(cw(r.fx)&&cw(r.fy)){r.x=r.fx,r.y=r.fy,n===3&&cw(r.fz)&&(r.z=r.fz);return}let s=this.velMap[o].x*t,c=this.velMap[o].y*t,l=n===3?this.velMap[o].z*t:0;r.x+=s,r.y+=c,n===3&&(r.z=(r.z||0)+l);let u=Math.sqrt(s*s+c*c+l*l);e===`max`?a=Math.max(a,u):e===`min`?a=Math.min(a,u):i+=u}),e===`mean`?i/r.length:a}monitor(e,t){let{monitor:n,dimensions:r=2}=this.options;if(!n)return;let i=0;t.forEach(t=>{let n=e[t.id],a=n.x*n.x+n.y*n.y+(r===3?n.z*n.z:0);i+=(t.mass||1)*a*.5}),n({energy:i,nodes:t,edges:this.model.edges(),iterations:this.iteration})}},Dq=function(e){return e!==null&&typeof e!=`function`&&isFinite(e.length)},Oq={}.toString,kq=function(e){return Oq.call(e).replace(/^\[object /,``).replace(/]$/,``)},Aq=Object.prototype,jq=function(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||Aq)},Mq=Object.prototype.hasOwnProperty;function Nq(e){if(dw(e))return!0;if(Dq(e))return!e.length;var t=kq(e);if(t===`Map`||t===`Set`)return!e.size;if(jq(e))return!Object.keys(e).length;for(var n in e)if(Mq.call(e,n))return!1;return!0}var Pq={nodeSize:30,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,collideStrength:1,preventOverlap:!0,distanceThresholdMode:`mean`},Fq=class extends nT{constructor(){super(...arguments),this.id=`force`,this.simulation=null}getDefaultOptions(){return Pq}layout(){return RC(this,void 0,void 0,function*(){let e=this.parseOptions(this.options),{width:t,height:n,dimensions:r}=e;if(this.initializePhysicsData(this.model,e),ww(this.model,t,n,r),!this.model.nodes()?.length)return;let i=this.setSimulation(e);return i.data(this.model),i.initialize(e),i.restart(),new Promise(e=>{i.on(`end`,()=>e())})})}initializePhysicsData(e,t){let{nodeSize:n,getMass:r,nodeStrength:i,edgeStrength:a,linkDistance:o}=t;e.forEachNode(e=>{let t=e._original;e.size=n(t),e.mass=r(t),e.nodeStrength=i(t)}),e.forEachEdge(t=>{let n=t._original;t.edgeStrength=a(n),t.linkDistance=o(n,e.originalNode(t.source),e.originalNode(t.target))})}setSimulation(e){let t=this.simulation||new Eq;return this.simulation||=t.on(`tick`,()=>{var t;(t=e.onTick)==null||t.call(e,this)}),this.setupRepulsiveForce(t,e),this.setupAttractiveForce(t,e),this.setupCollideForce(t,e),this.setupGravityForce(t,e),this.setupCentripetalForce(t,e),t}setupRepulsiveForce(e,t){let{factor:n,coulombDisScale:r,dimensions:i}=t,a=e.force(`repulsive`);a||(a=gq(n,r,i),e.force(`repulsive`,a)),a.factor&&a.factor(n),a.coulombDisScale&&a.coulombDisScale(r),a.dimensions&&a.dimensions(i)}setupAttractiveForce(e,t){let{dimensions:n,preventOverlap:r}=t;if((this.model.edges()||[]).length>0){let t=e.force(`attractive`);t||(t=lq(n),e.force(`attractive`,t)),t.dimensions&&t.dimensions(n),t.preventOverlap&&t.preventOverlap(r)}else e.force(`attractive`,null)}setupGravityForce(e,t){let{center:n,gravity:r,getCenter:i}=t;if(r){let t=e.force(`gravity`);t||(t=hq(n,r),e.force(`gravity`,t)),t.center&&t.center(n),t.gravity&&t.gravity(r),t.getCenter&&t.getCenter(i)}else e.force(`gravity`,null)}setupCollideForce(e,t){let{preventOverlap:n,collideStrength:r=1,dimensions:i}=t;if(n&&r){let t=e.force(`collide`);t||(t=pq(i),e.force(`collide`,t)),t.strength&&t.strength(r),t.dimensions&&t.dimensions(i)}else e.force(`collide`,null)}setupCentripetalForce(e,t){let{centripetalOptions:n,width:r,height:i}=t;if(n){let t=e.force(`centripetal`);t||(t=uq(),e.force(`centripetal`,t)),t.options&&t.options(n),t.width&&t.width(r),t.height&&t.height(i)}else e.force(`centripetal`,null)}parseOptions(e){let t=Object.assign(Object.assign({},e),WD(e));t.nodeClusterBy&&=mw(t.nodeClusterBy,[`node`]),e.getMass?t.getMass=hw(e.getMass,1):t.getMass=e=>{if(!e)return 1;let t=this.model.degree(e.id,`both`);return!t||t<5?1:t*5*1},e.getCenter&&(t.getCenter=mw(e.getCenter,[`node`,`degree`]));let n=_w(e.nodeSize,e.nodeSpacing);return t.nodeSize=e=>{if(!e)return 0;let[t,r,i]=n(e);return Math.max(t,r,i)},t.linkDistance=e.linkDistance?mw(e.linkDistance,[`edge`,`source`,`target`]):(e,t,n)=>1+e.nodeSize(t)+e.nodeSize(n),t.nodeStrength=hw(e.nodeStrength,1),t.edgeStrength=hw(e.edgeStrength,1,`edge`),t.clusterNodeStrength=hw(e.clusterNodeStrength,1),this.formatCentripetal(t),t}formatCentripetal(e){let{dimensions:t,centripetalOptions:n,center:r,leafCluster:i,clustering:a,nodeClusterBy:o}=e,s=mw(n?.leaf,[`node`,`nodes`,`edges`]),c=hw(n?.single,2),l=hw(n?.others,1),u=mw(n?.center??(e=>({x:r[0],y:r[1],z:t===3?r[2]:void 0})),[`node`,`nodes`,`edges`,`width`,`height`]),d=Object.assign(Object.assign({},n),{leaf:s,single:c,others:l,center:u});n&&(e.centripetalOptions=d);let f,p;if(i&&o&&(f=this.getSameTypeLeafMap(o),p=Array.from(new Set(this.model.nodes()?.map(e=>o(e._original))))||[],e.centripetalOptions=Object.assign({},d,{single:()=>100,leaf:t=>{let{siblingLeaves:n,sameTypeLeaves:r}=f[t.id]||{};return r?.length===n?.length||p?.length===1?1:e.clusterNodeStrength(t)},others:()=>1,center:e=>{let t=this.model.degree(e.id,`both`);if(!t)return{x:100,y:100,z:0};let n;if(t===1){let{sameTypeLeaves:t=[]}=f[e.id]||{};t.length===1?n=void 0:t.length>1&&(n=this.getAvgNodePosition(t))}else n=void 0;return{x:n?.x,y:n?.y,z:n?.z}}})),a&&o){f||=this.getSameTypeLeafMap(o);let t=[];Nq(t)&&this.model.forEachNode(e=>{let n=o(e._original);n&&!t.includes(n)&&t.push(n)});let n={};t.forEach(e=>{let t=this.model.nodes().filter(t=>o(t._original)===e);n[e]=this.getAvgNodePosition(t)}),e.centripetalOptions=Object.assign(d,{single:t=>e.clusterNodeStrength(t),leaf:t=>e.clusterNodeStrength(t),others:t=>e.clusterNodeStrength(t),center:e=>{let t=n[o(e._original)];return{x:t?.x,y:t?.y,z:t?.z}}})}}getSameTypeLeafMap(e){let t={};return this.model.forEachNode(n=>{this.model.degree(n.id,`both`)===1&&(t[n.id]=this.getCoreNodeAndSiblingLeaves(n,e))}),t}getCoreNodeAndSiblingLeaves(e,t){let n=this.model.degree(e.id,`in`),r=this.model.degree(e.id,`out`),i=e,a=[];if(n===0){let t=this.model.successors(e.id);i=this.model.node(t[0]),a=this.model.neighbors(i.id).map(e=>this.model.node(e))}else if(r===0){let t=this.model.predecessors(e.id);i=this.model.node(t[0]),a=this.model.neighbors(i.id).map(e=>this.model.node(e))}a=a.filter(e=>this.model.degree(e.id,`in`)===0||this.model.degree(e.id,`out`)===0);let o=t(e._original)||``,s=a.filter(e=>t(e._original)===o&&(this.model.degree(e.id,`in`)===0||this.model.degree(e.id,`out`)===0));return{coreNode:i,siblingLeaves:a,sameTypeLeaves:s}}getAvgNodePosition(e){let t={x:0,y:0};e.forEach(e=>{t.x+=e.x||0,t.y+=e.y||0});let n=e.length||1;return{x:t.x/n,y:t.y/n}}tick(e=1){return this.simulation&&this.simulation.tick(e),this}stop(){return this.simulation&&this.simulation.stop(),this}restart(){return this.simulation&&this.simulation.restart(),this}setFixedPosition(e,t){return this.simulation&&this.simulation.setFixedPosition(e,t),this}},Iq=class e{constructor(e){this.id=e.id||0,this.rx=e.rx,this.ry=e.ry,this.fx=0,this.fy=0,this.mass=e.mass,this.degree=e.degree,this.g=e.g||0}distanceTo(e){let t=this.rx-e.rx,n=this.ry-e.ry;return Math.hypot(t,n)}setPos(e,t){this.rx=e,this.ry=t}resetForce(){this.fx=0,this.fy=0}addForce(e){let t=e.rx-this.rx,n=e.ry-this.ry,r=Math.hypot(t,n);r=r<1e-4?1e-4:r;let i=this.g*(this.degree+1)*(e.degree+1)/r;this.fx+=i*t/r,this.fy+=i*n/r}in(e){return e.contains(this.rx,this.ry)}add(t){let n=this.mass+t.mass;return new e({rx:(this.rx*this.mass+t.rx*t.mass)/n,ry:(this.ry*this.mass+t.ry*t.mass)/n,mass:n,degree:this.degree+t.degree})}},Lq=class e{constructor(e){this.xmid=e.xmid,this.ymid=e.ymid,this.length=e.length,this.massCenter=e.massCenter||[0,0],this.mass=e.mass||1}getLength(){return this.length}contains(e,t){let n=this.length/2;return e<=this.xmid+n&&e>=this.xmid-n&&t<=this.ymid+n&&t>=this.ymid-n}NW(){return new e({xmid:this.xmid-this.length/4,ymid:this.ymid+this.length/4,length:this.length/2})}NE(){return new e({xmid:this.xmid+this.length/4,ymid:this.ymid+this.length/4,length:this.length/2})}SW(){return new e({xmid:this.xmid-this.length/4,ymid:this.ymid-this.length/4,length:this.length/2})}SE(){return new e({xmid:this.xmid+this.length/4,ymid:this.ymid-this.length/4,length:this.length/2})}},Rq=class e{constructor(e){this.body=null,this.quad=null,this.NW=null,this.NE=null,this.SW=null,this.SE=null,this.theta=.5,e!=null&&(this.quad=e)}insert(t){if(this.body==null){this.body=t;return}this._isExternal()?(this.quad&&(this.NW=new e(this.quad.NW()),this.NE=new e(this.quad.NE()),this.SW=new e(this.quad.SW()),this.SE=new e(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(e){this.quad&&(e.in(this.quad.NW())&&this.NW?this.NW.insert(e):e.in(this.quad.NE())&&this.NE?this.NE.insert(e):e.in(this.quad.SW())&&this.SW?this.SW.insert(e):e.in(this.quad.SE())&&this.SE&&this.SE.insert(e))}_isExternal(){return this.NW==null&&this.NE==null&&this.SW==null&&this.SE==null}updateForce(e){this.body==null||e===this.body||(this._isExternal()||(this.quad?this.quad.getLength():0)/this.body.distanceTo(e)<this.theta?e.addForce(this.body):(this.NW&&this.NW.updateForce(e),this.NE&&this.NE.updateForce(e),this.SW&&this.SW.updateForce(e),this.SE&&this.SE.updateForce(e)))}},zq=class extends Tq{constructor(){super(...arguments),this.sg=0,this.forces={},this.preForces={},this.bodies={},this.sizes={},this.maxIteration=0}data(e,t){return this.model=e,this.sizes=t,this}initialize(e){super.initialize(e),this.maxIteration=e.maxIteration,this.sg=0,this.initForces()}initForces(){let{model:e,options:t}=this,{kr:n,barnesHut:r}=t,i=e.nodes();this.forces={},this.preForces={},this.bodies={};for(let t=0;t<i.length;t+=1){let a=i[t];if(this.forces[a.id]=[0,0],this.preForces[a.id]=[0,0],r){let r={id:t,rx:a.x,ry:a.y,mass:1,g:n,degree:e.degree(a.id)};this.bodies[a.id]=new Iq(r)}}}setFixedPosition(e,t){let n=this.model.node(e);if(!n)return;let r=[`fx`,`fy`,`fz`];if(t===null){r.forEach(e=>{delete n[e]});return}t.forEach((e,t)=>{t<r.length&&(typeof e==`number`||e===null)&&(n[r[t]]=e)})}isNodeFixed(e){return cw(e.fx)&&cw(e.fy)}syncFixedPositions(){this.model.forEachNode(e=>{this.isNodeFixed(e)&&(e.x=e.fx,e.y=e.fy)})}runOneStep(){let{model:e,options:t}=this,{preventOverlap:n,barnesHut:r}=t,i=this.maxIteration-this.iteration,a=e.nodes();for(let e=0;e<a.length;e+=1){let{id:t}=a[e];this.preForces[t]=[...this.forces[t]||[0,0]],this.forces[t]=[0,0]}return this.syncFixedPositions(),this.calculateAttractive(i),r&&!n?this.calculateOptRepulsiveGravity():this.calculateRepulsiveGravity(i,100),this.updatePositions()}calculateAttractive(e){let{model:t,options:n}=this,{preventOverlap:r,dissuadeHubs:i,mode:a,prune:o}=n,s=t.edges();for(let e=0;e<s.length;e+=1){let{source:n,target:c}=s[e],l=t.node(n),u=t.node(c),d=t.degree(n),f=t.degree(c);if(o&&(d<=1||f<=1))continue;let p=u.x-l.x,m=u.y-l.y,h=Math.hypot(p,m);h=h<1e-4?1e-4:h;let g=p/h,_=m/h,v=h;r&&(v=Math.max(0,h-this.sizes[n]-this.sizes[c]));let y=v,b=v;a===`linlog`&&(y=Math.log(1+v),b=y),i&&(y=v/d,b=v/f),this.forces[n][0]+=y*g,this.forces[n][1]+=y*_,this.forces[c][0]-=b*g,this.forces[c][1]-=b*_}}calculateOptRepulsiveGravity(){let{model:e,options:t}=this,{kg:n,center:r,prune:i,kr:a}=t,o=e.nodes(),s=o.length,c=1/0,l=-1/0,u=1/0,d=-1/0;for(let t=0;t<s;t+=1){let{id:n,x:r,y:a}=o[t];if(i&&e.degree(n)<=1)continue;let s=this.bodies[n];s&&(s.setPos(r,a),r<c&&(c=r),r>l&&(l=r),a<u&&(u=a),a>d&&(d=a))}let f=Math.max(l-c,d-u);(!isFinite(f)||f<=0)&&(f=1);let p=new Lq({xmid:(l+c)/2,ymid:(d+u)/2,length:f,massCenter:r,mass:s}),m=new Rq(p);for(let t=0;t<s;t+=1){let{id:n}=o[t];if(i&&e.degree(n)<=1)continue;let r=this.bodies[n];r&&r.in(p)&&m.insert(r)}for(let t=0;t<s;t+=1){let{id:a,x:s,y:c}=o[t],l=e.degree(a);if(i&&l<=1)continue;let u=this.bodies[a];if(!u)continue;u.resetForce(),m.updateForce(u),this.forces[a][0]-=u.fx,this.forces[a][1]-=u.fy;let d=s-r[0],f=c-r[1],p=Math.hypot(d,f);p=p<1e-4?1e-4:p;let h=d/p,g=f/p,_=n*(l+1);this.forces[a][0]-=_*h,this.forces[a][1]-=_*g}}calculateRepulsiveGravity(e,t){let{model:n,options:r}=this,{preventOverlap:i,kr:a,kg:o,center:s,prune:c}=r,l=n.nodes(),u=l.length;for(let e=0;e<u;e+=1){let r=l[e],d=n.degree(r.id);for(let o=e+1;o<u;o+=1){let e=l[o],s=n.degree(e.id);if(c&&(d<=1||s<=1))continue;let u=e.x-r.x,f=e.y-r.y,p=Math.hypot(u,f);p=p<1e-4?1e-4:p;let m=u/p,h=f/p,g=p,_;if(i){let n=p-this.sizes[r.id]-this.sizes[e.id];n<0?_=t*(d+1)*(s+1):n===0?_=0:(g=n,_=a*(d+1)*(s+1)/g)}else _=a*(d+1)*(s+1)/g;this.forces[r.id][0]-=_*m,this.forces[r.id][1]-=_*h,this.forces[e.id][0]+=_*m,this.forces[e.id][1]+=_*h}let f=r.x-s[0],p=r.y-s[1],m=Math.hypot(f,p);m=m<1e-4?1e-4:m;let h=f/m,g=p/m,_=o*(d+1);this.forces[r.id][0]-=_*h,this.forces[r.id][1]-=_*g}}updatePositions(){let{model:e,options:t}=this,{ks:n,tao:r,prune:i,ksmax:a,distanceThresholdMode:o=`max`}=t,s=e.nodes(),c=s.length,l={},u={},d=0,f=0;for(let t=0;t<c;t+=1){let{id:n}=s[t],r=e.degree(n);if(i&&r<=1)continue;let a=this.preForces[n]||[0,0],o=this.forces[n]||[0,0],c=o[0]-a[0],p=o[1]-a[1],m=Math.hypot(c,p),h=o[0]+a[0],g=o[1]+a[1],_=Math.hypot(h,g);l[n]=m,u[n]=_/2,d+=(r+1)*l[n],f+=(r+1)*u[n]}let p=this.sg,m=this.sg;d<=0?p=m>0?m:1:(p=r*f/d,m!==0&&(p=p>1.5*m?1.5*m:p)),this.sg=p;let h=0,g=1/0,_=0,v=0;for(let t=0;t<c;t+=1){let r=s[t],o=r.id,c=e.degree(o);if(i&&c<=1||this.isNodeFixed(r))continue;let u=l[o]||0,d=n*p/(1+p*Math.sqrt(u)),f=Math.hypot(this.forces[o][0],this.forces[o][1]);f=f<1e-4?1e-4:f;let m=a/f;d>m&&(d=m);let y=d*this.forces[o][0],b=d*this.forces[o][1];r.x+=y,r.y+=b;let x=Math.hypot(y,b);x>0&&(v++,_+=x,x>h&&(h=x),x<g&&(g=x))}switch(o){case`min`:return g;case`mean`:return v>0?_/v:0;default:return h}}destroy(){this.stop(),this.forces={},this.preForces={},this.bodies={},this.sizes={},this.off()}},Bq={nodeSize:10,nodeSpacing:0,width:300,height:300,kr:5,kg:1,mode:`normal`,preventOverlap:!1,dissuadeHubs:!1,maxIteration:0,ks:.1,ksmax:10,tao:.1},Vq=class extends nT{constructor(){super(...arguments),this.id=`force-atlas2`,this.simulation=null}getDefaultOptions(){return Bq}layout(e){return RC(this,void 0,void 0,function*(){let t=this.parseOptions(e),{width:n,height:r,prune:i,center:a}=t,o=this.model.nodeCount();if(!o||o===1)return RD(this.model,a);ww(this.model,n,r);let s=this.getSizes(t.nodeSize,t.nodeSpacing),c=this.setSimulation();c.data(this.model,s),c.initialize(t),c.restart();let l=()=>new Promise(e=>{c.on(`end`,e)});if(!i)return l();if(yield l(),i){let e=this.model.edges();for(let t=0;t<e.length;t+=1){let{source:n,target:r}=e[t],i=this.model.degree(n),a=this.model.degree(r),o=this.model.node(n),s=this.model.node(r);i<=1?(o.x=s.x,o.y=s.y):a<=1&&(s.x=o.x,s.y=o.y)}c.initialize(Object.assign(Object.assign({},t),{prune:!1,barnesHut:!1})),c.tick(100)}})}getSizes(e,t){let n={},r=_w(e,t,Bq.nodeSize,Bq.nodeSpacing);return this.model.forEachNode(e=>{n[e.id]=Math.max(...r(e._original))}),n}setSimulation(){let e=this.simulation||new zq;return this.simulation||=e.on(`tick`,()=>{var e;return(e=this.options).onTick?.call(e,this)}),this.simulation}parseOptions(e={}){let{barnesHut:t,prune:n,maxIteration:r,kr:i,kg:a}=e,o={},s=this.model.nodeCount();return t===void 0&&s>250&&(o.barnesHut=!0),n===void 0&&s>100&&(o.prune=!0),r===0&&!n?(o.maxIteration=250,s<=200&&s>100?o.maxIteration=1e3:s>200&&(o.maxIteration=1200)):r===0&&n&&(o.maxIteration=100,s<=200&&s>100?o.maxIteration=500:s>200&&(o.maxIteration=950)),i||(o.kr=50,s>100&&s<=500?o.kr=20:s>500&&(o.kr=1)),a||(o.kg=20,s>100&&s<=500?o.kg=10:s>500&&(o.kg=1)),Object.assign(Object.assign(Object.assign({},e),o),WD(e))}stop(){var e;(e=this.simulation)==null||e.stop()}tick(e=1){var t;(t=this.simulation)==null||t.tick(e)}restart(){var e;(e=this.simulation)==null||e.restart()}setFixedPosition(e,t){var n;(n=this.simulation)==null||n.setFixedPosition(e,t)}destroy(){var e;super.destroy(),this.stop(),(e=this.simulation)==null||e.destroy(),this.simulation=null}},Hq=800,Uq=class extends Tq{constructor(){super(...arguments),this.displacements=null,this.clusterMap=null}data(e){return this.model=e,this}initialize(e){super.initialize(e),this.recomputeConstants(),this.displacements=null,this.clusterMap=null,this.initDisplacements()}recomputeConstants(){let{model:e,options:t}=this,{width:n,height:r}=WD(t),i=n*r;this.k2=i/(e.nodeCount()+1),this.k=Math.sqrt(this.k2),this.maxDisplace=Math.sqrt(i)/10}runOneStep(){return this.syncFixedPositions(),this.initDisplacements(),this.calculateRepulsive(),this.calculateAttractive(),this.applyClusterGravity(),this.applyGlobalGravity(),this.updatePositions()}setFixedPosition(e,t){let n=this.model.node(e);if(!n)return;let r=[`fx`,`fy`,`fz`];if(t===null){r.forEach(e=>{delete n[e]});return}t.forEach((e,t)=>{t<r.length&&(typeof e==`number`||e===null)&&(n[r[t]]=e)})}isNodeFixed(e){return!dw(e.fx)&&!dw(e.fy)}syncFixedPositions(){let{model:e,options:t}=this,n=t.dimensions===3;e.forEachNode(e=>{this.isNodeFixed(e)&&(e.x=e.fx,e.y=e.fy,n&&e.fz!==void 0&&(e.z=e.fz))})}initDisplacements(){this.displacements||(this.displacements=new Map,this.model.forEachNode(e=>{this.displacements.set(e.id,{x:0,y:0,z:0})})),this.displacements.forEach(e=>{e.x=0,e.y=0,e.z=0})}calculateRepulsive(){let{model:e,options:t}=this,n=t.dimensions===3,r=e.nodes();for(let e=0;e<r.length;e++){let t=r[e],i=this.displacements.get(t.id),a=this.isNodeFixed(t);for(let o=e+1;o<r.length;o++){let e=r[o],s=this.displacements.get(e.id),c=this.isNodeFixed(e),l=t.x-e.x,u=t.y-e.y,d=n?t.z-e.z:0,f=l*l+u*u+d*d;f===0&&(f=1,l=.01,u=.01,d=.01);let p=this.k2/f,m=l*p,h=u*p,g=d*p;!a&&!c?(i.x+=m,i.y+=h,s.x-=m,s.y-=h,n&&(i.z+=g,s.z-=g)):a&&!c?(s.x-=m*2,s.y-=h*2,n&&(s.z-=g*2)):!a&&c&&(i.x+=m*2,i.y+=h*2,n&&(i.z+=g*2))}}}calculateAttractive(){let{model:e,options:t}=this,n=t.dimensions===3;e.forEachEdge(t=>{let{source:r,target:i}=t;if(!r||!i||r===i)return;let a=e.node(r),o=e.node(i),s=this.displacements.get(r),c=this.displacements.get(i),l=this.isNodeFixed(a),u=this.isNodeFixed(o),d=o.x-a.x,f=o.y-a.y,p=n?o.z-a.z:0,m=Math.sqrt(d*d+f*f+p*p);if(m===0)return;let h=m/this.k,g=d*h,_=f*h,v=p*h;!l&&!u?(s.x+=g,s.y+=_,c.x-=g,c.y-=_,n&&(s.z+=v,c.z-=v)):l&&!u?(c.x-=g*2,c.y-=_*2,n&&(c.z-=v*2)):!l&&u&&(s.x+=g*2,s.y+=_*2,n&&(s.z+=v*2))})}applyClusterGravity(){let{model:e,options:t}=this,{nodeClusterBy:n,clusterGravity:r,dimensions:i,clustering:a}=t;if(!a||(this.clusterMap||(this.clusterMap=new Map,e.forEachNode(t=>{let r=n(e.originalNode(t.id));this.clusterMap.has(r)||this.clusterMap.set(r,{name:r,cx:0,cy:0,cz:0,count:0})})),this.clusterMap.size===0))return;let o=i===3;this.clusterMap.forEach(e=>{e.cx=0,e.cy=0,e.cz=0,e.count=0}),e.forEachNode(t=>{let r=n(e.originalNode(t.id)),i=this.clusterMap.get(r);i&&(i.cx+=t.x,i.cy+=t.y,o&&(i.cz+=t.z),i.count++)}),this.clusterMap.forEach(e=>{e.count>0&&(e.cx/=e.count,e.cy/=e.count,e.cz/=e.count)}),e.forEachNode(t=>{let{id:i}=t;if(this.isNodeFixed(t))return;let a=n(e.originalNode(i)),s=this.clusterMap.get(a);if(!s)return;let c=this.displacements.get(i),l=t.x-s.cx,u=t.y-s.cy,d=o?t.z-s.cz:0,f=Math.sqrt(l*l+u*u+d*d);if(f===0)return;let p=this.k*r;c.x-=p*l/f,c.y-=p*u/f,o&&(c.z-=p*d/f)})}applyGlobalGravity(){let{model:e,options:t}=this,{gravity:n,center:r,dimensions:i}=t,a=i===3,o=.01*this.k*n;e.forEachNode(e=>{let{id:t}=e;if(this.isNodeFixed(e))return;let n=this.displacements.get(t);n.x-=o*(e.x-r[0]),n.y-=o*(e.y-r[1]),a&&(n.z-=o*(e.z-(r[2]||0)))})}updatePositions(){let{model:e,options:t}=this,{speed:n,dimensions:r,distanceThresholdMode:i=`max`}=t,a=r===3,o=0,s=1/0,c=0,l=0;if(e.forEachNode(e=>{let{id:t}=e;if(this.isNodeFixed(e))return;let r=this.displacements.get(t),i=Math.sqrt(r.x*r.x+r.y*r.y+(a?r.z*r.z:0));if(i===0)return;let u=Math.min(this.maxDisplace*(n/Hq),i),d=u/i;e.x+=r.x*d,e.y+=r.y*d,a&&(e.z+=r.z*d),o=Math.max(o,u),s=Math.min(s,u),c+=u,l++}),l===0)return 0;switch(i){case`min`:return s===1/0?0:s;case`mean`:return c/l;default:return o}}destroy(){var e,t;this.stop(),(e=this.displacements)==null||e.clear(),(t=this.clusterMap)==null||t.clear()}},Wq={maxIteration:1e3,gravity:10,speed:5,clustering:!1,clusterGravity:10,width:300,height:300,nodeClusterBy:`node.cluster`,dimensions:2},Gq=class extends nT{constructor(){super(...arguments),this.id=`fruchterman`,this.simulation=null}getDefaultOptions(){return Wq}parseOptions(e={}){let{clustering:t,nodeClusterBy:n}=this.options,r=t&&!!n;return Object.assign(e,WD(e),{clustering:r,nodeClusterBy:mw(n,[`node`])}),e}layout(){return RC(this,void 0,void 0,function*(){let e=this.parseOptions(this.options),{dimensions:t,center:n,width:r,height:i}=e,a=this.model.nodeCount();if(!a||a===1){RD(this.model,n,t);return}ww(this.model,r,i,t);let o=this.setSimulation();return o.data(this.model),o.initialize(e),o.restart(),new Promise(e=>{o.on(`end`,()=>e())})})}setSimulation(){let e=this.simulation||new Uq;return this.simulation||=e.on(`tick`,()=>{var e;return(e=this.options).onTick?.call(e,this)}),this.simulation}restart(){var e;(e=this.simulation)==null||e.restart()}stop(){var e;(e=this.simulation)==null||e.stop()}tick(e=1){var t;(t=this.simulation)==null||t.tick(e)}setFixedPosition(e,t){var n;(n=this.simulation)==null||n.setFixedPosition(e,t)}destroy(){var e;super.destroy(),this.stop(),(e=this.simulation)==null||e.destroy(),this.simulation=null}},Kq={begin:[0,0],preventOverlap:!0,condense:!1,rows:void 0,cols:void 0,position:void 0,sortBy:`degree`,nodeSize:30,nodeSpacing:10,width:300,height:300},qq=class extends tT{constructor(){super(...arguments),this.id=`grid`}getDefaultOptions(){return Kq}parseOptions(e={},t){let{rows:n,cols:r,position:i,sortBy:a}=e,{width:o,height:s,center:c}=WD(e),l=e.rows,u=e.cols,d=t.nodeCount();if(n!=null&&r!=null)l=n,u=r;else if(n!=null&&r==null)l=n,u=Math.ceil(d/l);else if(n==null&&r!=null)u=r,l=Math.ceil(d/u);else{let e=Math.sqrt(d*s/o);l=Math.round(e),u=Math.round(o/s*e)}l=Math.max(l,1),u=Math.max(u,1);let f={rows:l,cols:u};if(f.cols*f.rows>d){let e=Jq(f),t=Yq(f);(e-1)*t>=d?Jq(f,e-1):(t-1)*e>=d&&Yq(f,t-1)}else for(;f.cols*f.rows<d;){let e=Jq(f),t=Yq(f);(t+1)*e>=d?Yq(f,t+1):Jq(f,e+1)}let p=a?a===`degree`||a===`id`?a:mw(a,[`nodeA`,`nodeB`]):Kq.sortBy;return Object.assign(Object.assign({},e),{sortBy:p,rcs:f,center:c,width:o,height:s,position:mw(i,[`node`])})}layout(){return RC(this,void 0,void 0,function*(){let{begin:e,rcs:t,sortBy:n,width:r,height:i,condense:a,preventOverlap:o,nodeSpacing:s,nodeSize:c,position:l}=this.parseOptions(this.options,this.model),u=this.model.nodeCount();if(!u||u===1){RD(this.model,e);return}n===`degree`?BD(this.model):n===`id`?VD(this.model):HD(this.model,n);let d=a?0:r/t.cols,f=a?0:i/t.rows;if(o){let e=_w(c,s,Kq.nodeSize,Kq.nodeSpacing);this.model.forEachNode(t=>{let[n,r]=e(t._original);d=Math.max(d,n),f=Math.max(f,r)})}let p={},m={row:0,col:0},h={};this.model.forEachNode(n=>{let r=n._original,i;if(l&&(i=l(r)),i&&(i.row!==void 0||i.col!==void 0)){let e={row:i.row,col:i.col};if(e.col===void 0)for(e.col=0;Xq(p,e);)e.col++;else if(e.row===void 0)for(e.row=0;Xq(p,e);)e.row++;h[n.id]=e,Zq(p,e)}$q(n,e,d,f,h,t,m,p)})})}},Jq=(e,t)=>{let n,r=e.rows||5,i=e.cols||5;return t==null?n=Math.min(r,i):Math.min(r,i)===e.rows?e.rows=t:e.cols=t,n},Yq=(e,t)=>{let n,r=e.rows||5,i=e.cols||5;return t==null?n=Math.max(r,i):Math.max(r,i)===e.rows?e.rows=t:e.cols=t,n},Xq=(e,t)=>e[`c-${t.row}-${t.col}`]||!1,Zq=(e,t)=>e[`c-${t.row}-${t.col}`]=!0,Qq=(e,t)=>{let n=e.cols||5;t.col++,t.col>=n&&(t.col=0,t.row++)},$q=(e,t,n,r,i,a,o,s)=>{let c,l,u=i[e.id];if(u)c=u.col*n+n/2+t[0],l=u.row*r+r/2+t[1];else{for(;Xq(s,o);)Qq(a,o);c=o.col*n+n/2+t[0],l=o.row*r+r/2+t[1],Zq(s,o),Qq(a,o)}e.x=c,e.y=l},eJ={},tJ=n({isAnyArray:()=>rJ}),nJ=Object.prototype.toString;function rJ(e){let t=nJ.call(e);return t.endsWith(`Array]`)&&!t.includes(`Big`)}var iJ=JA(tJ);function aJ(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!rJ(e))throw TypeError(`input must be an array`);if(e.length===0)throw TypeError(`input must not be empty`);var n=t.fromIndex,r=n===void 0?0:n,i=t.toIndex,a=i===void 0?e.length:i;if(r<0||r>=e.length||!Number.isInteger(r))throw Error(`fromIndex must be a positive integer smaller than length`);if(a<=r||a>e.length||!Number.isInteger(a))throw Error(`toIndex must be an integer greater than fromIndex and at most equal to length`);for(var o=e[r],s=r+1;s<a;s++)e[s]>o&&(o=e[s]);return o}function oJ(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!rJ(e))throw TypeError(`input must be an array`);if(e.length===0)throw TypeError(`input must not be empty`);var n=t.fromIndex,r=n===void 0?0:n,i=t.toIndex,a=i===void 0?e.length:i;if(r<0||r>=e.length||!Number.isInteger(r))throw Error(`fromIndex must be a positive integer smaller than length`);if(a<=r||a>e.length||!Number.isInteger(a))throw Error(`toIndex must be an integer greater than fromIndex and at most equal to length`);for(var o=e[r],s=r+1;s<a;s++)e[s]<o&&(o=e[s]);return o}var sJ=n({default:()=>cJ});function cJ(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!rJ(e))throw TypeError(`input must be an array`);if(e.length===0)throw TypeError(`input must not be empty`);var n;if(t.output!==void 0){if(!rJ(t.output))throw TypeError(`output option must be an array if specified`);n=t.output}else n=Array(e.length);var r=oJ(e),i=aJ(e);if(r===i)throw RangeError(`minimum and maximum input values are equal. Cannot rescale a constant array`);var a=t.min,o=a===void 0?t.autoMinMax?r:0:a,s=t.max,c=s===void 0?t.autoMinMax?i:1:s;if(o>=c)throw RangeError(`min option must be smaller than max option`);for(var l=(c-o)/(i-r),u=0;u<e.length;u++)n[u]=(e[u]-r)*l+o;return n}var lJ=JA(sJ),uJ;function dJ(){if(uJ)return eJ;uJ=1,Object.defineProperty(eJ,`__esModule`,{value:!0});var e=iJ,t=lJ;let n=` `.repeat(2),r=` `.repeat(4);function i(){return a(this)}function a(e,t={}){let{maxRows:i=15,maxColumns:a=10,maxNumSize:s=8,padMinus:c=`auto`}=t;return`${e.constructor.name} {
11
+ ${n}[
12
+ ${r}${o(e,i,a,s,c)}
13
+ ${n}]
14
+ ${n}rows: ${e.rows}
15
+ ${n}columns: ${e.columns}
16
+ }`}function o(e,t,n,i,a){let{rows:o,columns:c}=e,l=Math.min(o,t),u=Math.min(c,n),d=[];if(a===`auto`){a=!1;loop:for(let t=0;t<l;t++)for(let n=0;n<u;n++)if(e.get(t,n)<0){a=!0;break loop}}for(let t=0;t<l;t++){let n=[];for(let r=0;r<u;r++)n.push(s(e.get(t,r),i,a));d.push(`${n.join(` `)}`)}return u!==c&&(d[d.length-1]+=` ... ${c-n} more columns`),l!==o&&d.push(`... ${o-t} more rows`),d.join(`\n${r}`)}function s(e,t,n){return(e>=0&&n?` ${c(e,t-1)}`:c(e,t)).padEnd(t)}function c(e,t){let n=e.toString();if(n.length<=t)return n;let r=e.toFixed(t);if(r.length>t&&(r=e.toFixed(Math.max(0,t-(r.length-t)))),r.length<=t&&!r.startsWith(`0.000`)&&!r.startsWith(`-0.000`))return r;let i=e.toExponential(t);return i.length>t&&(i=e.toExponential(Math.max(0,t-(i.length-t)))),i.slice(0)}function l(e,t){e.prototype.add=function(e){return typeof e==`number`?this.addS(e):this.addM(e)},e.prototype.addS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)+e);return this},e.prototype.addM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)+e.get(t,n));return this},e.add=function(e,n){return new t(e).add(n)},e.prototype.sub=function(e){return typeof e==`number`?this.subS(e):this.subM(e)},e.prototype.subS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)-e);return this},e.prototype.subM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)-e.get(t,n));return this},e.sub=function(e,n){return new t(e).sub(n)},e.prototype.subtract=e.prototype.sub,e.prototype.subtractS=e.prototype.subS,e.prototype.subtractM=e.prototype.subM,e.subtract=e.sub,e.prototype.mul=function(e){return typeof e==`number`?this.mulS(e):this.mulM(e)},e.prototype.mulS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)*e);return this},e.prototype.mulM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)*e.get(t,n));return this},e.mul=function(e,n){return new t(e).mul(n)},e.prototype.multiply=e.prototype.mul,e.prototype.multiplyS=e.prototype.mulS,e.prototype.multiplyM=e.prototype.mulM,e.multiply=e.mul,e.prototype.div=function(e){return typeof e==`number`?this.divS(e):this.divM(e)},e.prototype.divS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)/e);return this},e.prototype.divM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)/e.get(t,n));return this},e.div=function(e,n){return new t(e).div(n)},e.prototype.divide=e.prototype.div,e.prototype.divideS=e.prototype.divS,e.prototype.divideM=e.prototype.divM,e.divide=e.div,e.prototype.mod=function(e){return typeof e==`number`?this.modS(e):this.modM(e)},e.prototype.modS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)%e);return this},e.prototype.modM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)%e.get(t,n));return this},e.mod=function(e,n){return new t(e).mod(n)},e.prototype.modulus=e.prototype.mod,e.prototype.modulusS=e.prototype.modS,e.prototype.modulusM=e.prototype.modM,e.modulus=e.mod,e.prototype.and=function(e){return typeof e==`number`?this.andS(e):this.andM(e)},e.prototype.andS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)&e);return this},e.prototype.andM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)&e.get(t,n));return this},e.and=function(e,n){return new t(e).and(n)},e.prototype.or=function(e){return typeof e==`number`?this.orS(e):this.orM(e)},e.prototype.orS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)|e);return this},e.prototype.orM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)|e.get(t,n));return this},e.or=function(e,n){return new t(e).or(n)},e.prototype.xor=function(e){return typeof e==`number`?this.xorS(e):this.xorM(e)},e.prototype.xorS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)^e);return this},e.prototype.xorM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)^e.get(t,n));return this},e.xor=function(e,n){return new t(e).xor(n)},e.prototype.leftShift=function(e){return typeof e==`number`?this.leftShiftS(e):this.leftShiftM(e)},e.prototype.leftShiftS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)<<e);return this},e.prototype.leftShiftM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)<<e.get(t,n));return this},e.leftShift=function(e,n){return new t(e).leftShift(n)},e.prototype.signPropagatingRightShift=function(e){return typeof e==`number`?this.signPropagatingRightShiftS(e):this.signPropagatingRightShiftM(e)},e.prototype.signPropagatingRightShiftS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)>>e);return this},e.prototype.signPropagatingRightShiftM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)>>e.get(t,n));return this},e.signPropagatingRightShift=function(e,n){return new t(e).signPropagatingRightShift(n)},e.prototype.rightShift=function(e){return typeof e==`number`?this.rightShiftS(e):this.rightShiftM(e)},e.prototype.rightShiftS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)>>>e);return this},e.prototype.rightShiftM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)>>>e.get(t,n));return this},e.rightShift=function(e,n){return new t(e).rightShift(n)},e.prototype.zeroFillRightShift=e.prototype.rightShift,e.prototype.zeroFillRightShiftS=e.prototype.rightShiftS,e.prototype.zeroFillRightShiftM=e.prototype.rightShiftM,e.zeroFillRightShift=e.rightShift,e.prototype.not=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,~this.get(e,t));return this},e.not=function(e){return new t(e).not()},e.prototype.abs=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.abs(this.get(e,t)));return this},e.abs=function(e){return new t(e).abs()},e.prototype.acos=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.acos(this.get(e,t)));return this},e.acos=function(e){return new t(e).acos()},e.prototype.acosh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.acosh(this.get(e,t)));return this},e.acosh=function(e){return new t(e).acosh()},e.prototype.asin=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.asin(this.get(e,t)));return this},e.asin=function(e){return new t(e).asin()},e.prototype.asinh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.asinh(this.get(e,t)));return this},e.asinh=function(e){return new t(e).asinh()},e.prototype.atan=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.atan(this.get(e,t)));return this},e.atan=function(e){return new t(e).atan()},e.prototype.atanh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.atanh(this.get(e,t)));return this},e.atanh=function(e){return new t(e).atanh()},e.prototype.cbrt=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.cbrt(this.get(e,t)));return this},e.cbrt=function(e){return new t(e).cbrt()},e.prototype.ceil=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.ceil(this.get(e,t)));return this},e.ceil=function(e){return new t(e).ceil()},e.prototype.clz32=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.clz32(this.get(e,t)));return this},e.clz32=function(e){return new t(e).clz32()},e.prototype.cos=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.cos(this.get(e,t)));return this},e.cos=function(e){return new t(e).cos()},e.prototype.cosh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.cosh(this.get(e,t)));return this},e.cosh=function(e){return new t(e).cosh()},e.prototype.exp=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.exp(this.get(e,t)));return this},e.exp=function(e){return new t(e).exp()},e.prototype.expm1=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.expm1(this.get(e,t)));return this},e.expm1=function(e){return new t(e).expm1()},e.prototype.floor=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.floor(this.get(e,t)));return this},e.floor=function(e){return new t(e).floor()},e.prototype.fround=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.fround(this.get(e,t)));return this},e.fround=function(e){return new t(e).fround()},e.prototype.log=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.log(this.get(e,t)));return this},e.log=function(e){return new t(e).log()},e.prototype.log1p=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.log1p(this.get(e,t)));return this},e.log1p=function(e){return new t(e).log1p()},e.prototype.log10=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.log10(this.get(e,t)));return this},e.log10=function(e){return new t(e).log10()},e.prototype.log2=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.log2(this.get(e,t)));return this},e.log2=function(e){return new t(e).log2()},e.prototype.round=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.round(this.get(e,t)));return this},e.round=function(e){return new t(e).round()},e.prototype.sign=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.sign(this.get(e,t)));return this},e.sign=function(e){return new t(e).sign()},e.prototype.sin=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.sin(this.get(e,t)));return this},e.sin=function(e){return new t(e).sin()},e.prototype.sinh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.sinh(this.get(e,t)));return this},e.sinh=function(e){return new t(e).sinh()},e.prototype.sqrt=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.sqrt(this.get(e,t)));return this},e.sqrt=function(e){return new t(e).sqrt()},e.prototype.tan=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.tan(this.get(e,t)));return this},e.tan=function(e){return new t(e).tan()},e.prototype.tanh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.tanh(this.get(e,t)));return this},e.tanh=function(e){return new t(e).tanh()},e.prototype.trunc=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.trunc(this.get(e,t)));return this},e.trunc=function(e){return new t(e).trunc()},e.pow=function(e,n){return new t(e).pow(n)},e.prototype.pow=function(e){return typeof e==`number`?this.powS(e):this.powM(e)},e.prototype.powS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)**e);return this},e.prototype.powM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)**e.get(t,n));return this}}function u(e,t,n){let r=n?e.rows:e.rows-1;if(t<0||t>r)throw RangeError(`Row index out of range`)}function d(e,t,n){let r=n?e.columns:e.columns-1;if(t<0||t>r)throw RangeError(`Column index out of range`)}function f(e,t){if(t.to1DArray&&(t=t.to1DArray()),t.length!==e.columns)throw RangeError(`vector size must be the same as the number of columns`);return t}function p(e,t){if(t.to1DArray&&(t=t.to1DArray()),t.length!==e.rows)throw RangeError(`vector size must be the same as the number of rows`);return t}function m(t,n){if(!e.isAnyArray(n))throw TypeError(`row indices must be an array`);for(let e=0;e<n.length;e++)if(n[e]<0||n[e]>=t.rows)throw RangeError(`row indices are out of range`)}function h(t,n){if(!e.isAnyArray(n))throw TypeError(`column indices must be an array`);for(let e=0;e<n.length;e++)if(n[e]<0||n[e]>=t.columns)throw RangeError(`column indices are out of range`)}function g(e,t,n,r,i){if(arguments.length!==5)throw RangeError(`expected 4 arguments`);if(v(`startRow`,t),v(`endRow`,n),v(`startColumn`,r),v(`endColumn`,i),t>n||r>i||t<0||t>=e.rows||n<0||n>=e.rows||r<0||r>=e.columns||i<0||i>=e.columns)throw RangeError(`Submatrix indices are out of range`)}function _(e,t=0){let n=[];for(let r=0;r<e;r++)n.push(t);return n}function v(e,t){if(typeof t!=`number`)throw TypeError(`${e} must be a number`)}function y(e){if(e.isEmpty())throw Error(`Empty matrix has no elements to index`)}function b(e){let t=_(e.rows);for(let n=0;n<e.rows;++n)for(let r=0;r<e.columns;++r)t[n]+=e.get(n,r);return t}function x(e){let t=_(e.columns);for(let n=0;n<e.rows;++n)for(let r=0;r<e.columns;++r)t[r]+=e.get(n,r);return t}function S(e){let t=0;for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)t+=e.get(n,r);return t}function C(e){let t=_(e.rows,1);for(let n=0;n<e.rows;++n)for(let r=0;r<e.columns;++r)t[n]*=e.get(n,r);return t}function w(e){let t=_(e.columns,1);for(let n=0;n<e.rows;++n)for(let r=0;r<e.columns;++r)t[r]*=e.get(n,r);return t}function T(e){let t=1;for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)t*=e.get(n,r);return t}function E(e,t,n){let r=e.rows,i=e.columns,a=[];for(let o=0;o<r;o++){let r=0,s=0,c=0;for(let t=0;t<i;t++)c=e.get(o,t)-n[o],r+=c,s+=c*c;t?a.push((s-r*r/i)/(i-1)):a.push((s-r*r/i)/i)}return a}function D(e,t,n){let r=e.rows,i=e.columns,a=[];for(let o=0;o<i;o++){let i=0,s=0,c=0;for(let t=0;t<r;t++)c=e.get(t,o)-n[o],i+=c,s+=c*c;t?a.push((s-i*i/r)/(r-1)):a.push((s-i*i/r)/r)}return a}function O(e,t,n){let r=e.rows,i=e.columns,a=r*i,o=0,s=0,c=0;for(let t=0;t<r;t++)for(let r=0;r<i;r++)c=e.get(t,r)-n,o+=c,s+=c*c;return t?(s-o*o/a)/(a-1):(s-o*o/a)/a}function k(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)-t[n])}function A(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)-t[r])}function j(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)-t)}function ee(e){let t=[];for(let n=0;n<e.rows;n++){let r=0;for(let t=0;t<e.columns;t++)r+=e.get(n,t)**2/(e.columns-1);t.push(Math.sqrt(r))}return t}function te(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)/t[n])}function M(e){let t=[];for(let n=0;n<e.columns;n++){let r=0;for(let t=0;t<e.rows;t++)r+=e.get(t,n)**2/(e.rows-1);t.push(Math.sqrt(r))}return t}function ne(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)/t[r])}function re(e){let t=e.size-1,n=0;for(let r=0;r<e.columns;r++)for(let i=0;i<e.rows;i++)n+=e.get(i,r)**2/t;return Math.sqrt(n)}function ie(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)/t)}class N{static from1DArray(e,t,n){if(e*t!==n.length)throw RangeError(`data length does not match given dimensions`);let r=new F(e,t);for(let i=0;i<e;i++)for(let e=0;e<t;e++)r.set(i,e,n[i*t+e]);return r}static rowVector(e){let t=new F(1,e.length);for(let n=0;n<e.length;n++)t.set(0,n,e[n]);return t}static columnVector(e){let t=new F(e.length,1);for(let n=0;n<e.length;n++)t.set(n,0,e[n]);return t}static zeros(e,t){return new F(e,t)}static ones(e,t){return new F(e,t).fill(1)}static rand(e,t,n={}){if(typeof n!=`object`)throw TypeError(`options must be an object`);let{random:r=Math.random}=n,i=new F(e,t);for(let n=0;n<e;n++)for(let e=0;e<t;e++)i.set(n,e,r());return i}static randInt(e,t,n={}){if(typeof n!=`object`)throw TypeError(`options must be an object`);let{min:r=0,max:i=1e3,random:a=Math.random}=n;if(!Number.isInteger(r))throw TypeError(`min must be an integer`);if(!Number.isInteger(i))throw TypeError(`max must be an integer`);if(r>=i)throw RangeError(`min must be smaller than max`);let o=i-r,s=new F(e,t);for(let n=0;n<e;n++)for(let e=0;e<t;e++){let t=r+Math.round(a()*o);s.set(n,e,t)}return s}static eye(e,t,n){t===void 0&&(t=e),n===void 0&&(n=1);let r=Math.min(e,t),i=this.zeros(e,t);for(let e=0;e<r;e++)i.set(e,e,n);return i}static diag(e,t,n){let r=e.length;t===void 0&&(t=r),n===void 0&&(n=t);let i=Math.min(r,t,n),a=this.zeros(t,n);for(let t=0;t<i;t++)a.set(t,t,e[t]);return a}static min(e,t){e=this.checkMatrix(e),t=this.checkMatrix(t);let n=e.rows,r=e.columns,i=new F(n,r);for(let a=0;a<n;a++)for(let n=0;n<r;n++)i.set(a,n,Math.min(e.get(a,n),t.get(a,n)));return i}static max(e,t){e=this.checkMatrix(e),t=this.checkMatrix(t);let n=e.rows,r=e.columns,i=new this(n,r);for(let a=0;a<n;a++)for(let n=0;n<r;n++)i.set(a,n,Math.max(e.get(a,n),t.get(a,n)));return i}static checkMatrix(e){return N.isMatrix(e)?e:new F(e)}static isMatrix(e){return e!=null&&e.klass===`Matrix`}get size(){return this.rows*this.columns}apply(e){if(typeof e!=`function`)throw TypeError(`callback must be a function`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)e.call(this,t,n);return this}to1DArray(){let e=[];for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)e.push(this.get(t,n));return e}to2DArray(){let e=[];for(let t=0;t<this.rows;t++){e.push([]);for(let n=0;n<this.columns;n++)e[t].push(this.get(t,n))}return e}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 e=0;e<this.rows;e++)for(let t=0;t<=e;t++)if(this.get(e,t)!==this.get(t,e))return!1;return!0}return!1}isDistance(){if(!this.isSymmetric())return!1;for(let e=0;e<this.rows;e++)if(this.get(e,e)!==0)return!1;return!0}isEchelonForm(){let e=0,t=0,n=-1,r=!0,i=!1;for(;e<this.rows&&r;){for(t=0,i=!1;t<this.columns&&i===!1;)this.get(e,t)===0?t++:this.get(e,t)===1&&t>n?(i=!0,n=t):(r=!1,i=!0);e++}return r}isReducedEchelonForm(){let e=0,t=0,n=-1,r=!0,i=!1;for(;e<this.rows&&r;){for(t=0,i=!1;t<this.columns&&i===!1;)this.get(e,t)===0?t++:this.get(e,t)===1&&t>n?(i=!0,n=t):(r=!1,i=!0);for(let n=t+1;n<this.rows;n++)this.get(e,n)!==0&&(r=!1);e++}return r}echelonForm(){let e=this.clone(),t=0,n=0;for(;t<e.rows&&n<e.columns;){let r=t;for(let i=t;i<e.rows;i++)e.get(i,n)>e.get(r,n)&&(r=i);if(e.get(r,n)===0)n++;else{e.swapRows(t,r);let i=e.get(t,n);for(let r=n;r<e.columns;r++)e.set(t,r,e.get(t,r)/i);for(let r=t+1;r<e.rows;r++){let i=e.get(r,n)/e.get(t,n);e.set(r,n,0);for(let a=n+1;a<e.columns;a++)e.set(r,a,e.get(r,a)-e.get(t,a)*i)}t++,n++}}return e}reducedEchelonForm(){let e=this.echelonForm(),t=e.columns,n=e.rows,r=n-1;for(;r>=0;)if(e.maxRow(r)===0)r--;else{let i=0,a=!1;for(;i<n&&a===!1;)e.get(r,i)===1?a=!0:i++;for(let n=0;n<r;n++){let a=e.get(n,i);for(let o=i;o<t;o++){let t=e.get(n,o)-a*e.get(r,o);e.set(n,o,t)}}r--}return e}set(){throw Error(`set method is unimplemented`)}get(){throw Error(`get method is unimplemented`)}repeat(e={}){if(typeof e!=`object`)throw TypeError(`options must be an object`);let{rows:t=1,columns:n=1}=e;if(!Number.isInteger(t)||t<=0)throw TypeError(`rows must be a positive integer`);if(!Number.isInteger(n)||n<=0)throw TypeError(`columns must be a positive integer`);let r=new F(this.rows*t,this.columns*n);for(let e=0;e<t;e++)for(let t=0;t<n;t++)r.setSubMatrix(this,this.rows*e,this.columns*t);return r}fill(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,e);return this}neg(){return this.mulS(-1)}getRow(e){u(this,e);let t=[];for(let n=0;n<this.columns;n++)t.push(this.get(e,n));return t}getRowVector(e){return F.rowVector(this.getRow(e))}setRow(e,t){u(this,e),t=f(this,t);for(let n=0;n<this.columns;n++)this.set(e,n,t[n]);return this}swapRows(e,t){u(this,e),u(this,t);for(let n=0;n<this.columns;n++){let r=this.get(e,n);this.set(e,n,this.get(t,n)),this.set(t,n,r)}return this}getColumn(e){d(this,e);let t=[];for(let n=0;n<this.rows;n++)t.push(this.get(n,e));return t}getColumnVector(e){return F.columnVector(this.getColumn(e))}setColumn(e,t){d(this,e),t=p(this,t);for(let n=0;n<this.rows;n++)this.set(n,e,t[n]);return this}swapColumns(e,t){d(this,e),d(this,t);for(let n=0;n<this.rows;n++){let r=this.get(n,e);this.set(n,e,this.get(n,t)),this.set(n,t,r)}return this}addRowVector(e){e=f(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)+e[n]);return this}subRowVector(e){e=f(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)-e[n]);return this}mulRowVector(e){e=f(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)*e[n]);return this}divRowVector(e){e=f(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)/e[n]);return this}addColumnVector(e){e=p(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)+e[t]);return this}subColumnVector(e){e=p(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)-e[t]);return this}mulColumnVector(e){e=p(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)*e[t]);return this}divColumnVector(e){e=p(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)/e[t]);return this}mulRow(e,t){u(this,e);for(let n=0;n<this.columns;n++)this.set(e,n,this.get(e,n)*t);return this}mulColumn(e,t){d(this,e);for(let n=0;n<this.rows;n++)this.set(n,e,this.get(n,e)*t);return this}max(e){if(this.isEmpty())return NaN;switch(e){case`row`:{let e=Array(this.rows).fill(-1/0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)>e[t]&&(e[t]=this.get(t,n));return e}case`column`:{let e=Array(this.columns).fill(-1/0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)>e[n]&&(e[n]=this.get(t,n));return e}case void 0:{let e=this.get(0,0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)>e&&(e=this.get(t,n));return e}default:throw Error(`invalid option: ${e}`)}}maxIndex(){y(this);let e=this.get(0,0),t=[0,0];for(let n=0;n<this.rows;n++)for(let r=0;r<this.columns;r++)this.get(n,r)>e&&(e=this.get(n,r),t[0]=n,t[1]=r);return t}min(e){if(this.isEmpty())return NaN;switch(e){case`row`:{let e=Array(this.rows).fill(1/0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)<e[t]&&(e[t]=this.get(t,n));return e}case`column`:{let e=Array(this.columns).fill(1/0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)<e[n]&&(e[n]=this.get(t,n));return e}case void 0:{let e=this.get(0,0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)<e&&(e=this.get(t,n));return e}default:throw Error(`invalid option: ${e}`)}}minIndex(){y(this);let e=this.get(0,0),t=[0,0];for(let n=0;n<this.rows;n++)for(let r=0;r<this.columns;r++)this.get(n,r)<e&&(e=this.get(n,r),t[0]=n,t[1]=r);return t}maxRow(e){if(u(this,e),this.isEmpty())return NaN;let t=this.get(e,0);for(let n=1;n<this.columns;n++)this.get(e,n)>t&&(t=this.get(e,n));return t}maxRowIndex(e){u(this,e),y(this);let t=this.get(e,0),n=[e,0];for(let r=1;r<this.columns;r++)this.get(e,r)>t&&(t=this.get(e,r),n[1]=r);return n}minRow(e){if(u(this,e),this.isEmpty())return NaN;let t=this.get(e,0);for(let n=1;n<this.columns;n++)this.get(e,n)<t&&(t=this.get(e,n));return t}minRowIndex(e){u(this,e),y(this);let t=this.get(e,0),n=[e,0];for(let r=1;r<this.columns;r++)this.get(e,r)<t&&(t=this.get(e,r),n[1]=r);return n}maxColumn(e){if(d(this,e),this.isEmpty())return NaN;let t=this.get(0,e);for(let n=1;n<this.rows;n++)this.get(n,e)>t&&(t=this.get(n,e));return t}maxColumnIndex(e){d(this,e),y(this);let t=this.get(0,e),n=[0,e];for(let r=1;r<this.rows;r++)this.get(r,e)>t&&(t=this.get(r,e),n[0]=r);return n}minColumn(e){if(d(this,e),this.isEmpty())return NaN;let t=this.get(0,e);for(let n=1;n<this.rows;n++)this.get(n,e)<t&&(t=this.get(n,e));return t}minColumnIndex(e){d(this,e),y(this);let t=this.get(0,e),n=[0,e];for(let r=1;r<this.rows;r++)this.get(r,e)<t&&(t=this.get(r,e),n[0]=r);return n}diag(){let e=Math.min(this.rows,this.columns),t=[];for(let n=0;n<e;n++)t.push(this.get(n,n));return t}norm(e=`frobenius`){switch(e){case`max`:return this.max();case`frobenius`:return Math.sqrt(this.dot(this));default:throw RangeError(`unknown norm type: ${e}`)}}cumulativeSum(){let e=0;for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)e+=this.get(t,n),this.set(t,n,e);return this}dot(e){N.isMatrix(e)&&(e=e.to1DArray());let t=this.to1DArray();if(t.length!==e.length)throw RangeError(`vectors do not have the same size`);let n=0;for(let r=0;r<t.length;r++)n+=t[r]*e[r];return n}mmul(e){e=F.checkMatrix(e);let t=this.rows,n=this.columns,r=e.columns,i=new F(t,r),a=new Float64Array(n);for(let o=0;o<r;o++){for(let t=0;t<n;t++)a[t]=e.get(t,o);for(let e=0;e<t;e++){let t=0;for(let r=0;r<n;r++)t+=this.get(e,r)*a[r];i.set(e,o,t)}}return i}mpow(e){if(!this.isSquare())throw RangeError(`Matrix must be square`);if(!Number.isInteger(e)||e<0)throw RangeError(`Exponent must be a non-negative integer`);let t=F.eye(this.rows),n=this;for(let r=e;r>=1;r/=2)r&1&&(t=t.mmul(n)),n=n.mmul(n);return t}strassen2x2(e){e=F.checkMatrix(e);let t=new F(2,2),n=this.get(0,0),r=e.get(0,0),i=this.get(0,1),a=e.get(0,1),o=this.get(1,0),s=e.get(1,0),c=this.get(1,1),l=e.get(1,1),u=(n+c)*(r+l),d=(o+c)*r,f=n*(a-l),p=c*(s-r),m=(n+i)*l,h=(o-n)*(r+a),g=(i-c)*(s+l),_=u+p-m+g,v=f+m,y=d+p,b=u-d+f+h;return t.set(0,0,_),t.set(0,1,v),t.set(1,0,y),t.set(1,1,b),t}strassen3x3(e){e=F.checkMatrix(e);let t=new F(3,3),n=this.get(0,0),r=this.get(0,1),i=this.get(0,2),a=this.get(1,0),o=this.get(1,1),s=this.get(1,2),c=this.get(2,0),l=this.get(2,1),u=this.get(2,2),d=e.get(0,0),f=e.get(0,1),p=e.get(0,2),m=e.get(1,0),h=e.get(1,1),g=e.get(1,2),_=e.get(2,0),v=e.get(2,1),y=e.get(2,2),b=(n+r+i-a-o-l-u)*h,x=(n-a)*(-f+h),S=o*(-d+f+m-h-g-_+y),C=(-n+a+o)*(d-f+h),w=(a+o)*(-d+f),T=n*d,E=(-n+c+l)*(d-p+g),D=(-n+c)*(p-g),O=(c+l)*(-d+p),k=(n+r+i-o-s-c-l)*g,A=l*(-d+p+m-h-g-_+v),j=(-i+l+u)*(h+_-v),ee=(i-u)*(h-v),te=i*_,M=(l+u)*(-_+v),ne=(-i+o+s)*(g+_-y),re=(i-s)*(g-y),ie=(o+s)*(-_+y),N=r*m,P=s*v,ae=a*p,oe=c*f,se=u*y,ce=T+te+N,le=b+C+w+T+j+te+M,ue=T+E+O+k+te+ne+ie,de=x+S+C+T+te+ne+re,fe=x+C+w+T+P,pe=te+ne+re+ie+ae,me=T+E+D+A+j+ee+te,I=j+ee+te+M+oe,he=T+E+D+O+se;return t.set(0,0,ce),t.set(0,1,le),t.set(0,2,ue),t.set(1,0,de),t.set(1,1,fe),t.set(1,2,pe),t.set(2,0,me),t.set(2,1,I),t.set(2,2,he),t}mmulStrassen(e){e=F.checkMatrix(e);let t=this.clone(),n=t.rows,r=t.columns,i=e.rows,a=e.columns;r!==i&&console.warn(`Multiplying ${n} x ${r} and ${i} x ${a} matrix: dimensions do not match.`);function o(e,t,n){let r=e.rows,i=e.columns;if(r===t&&i===n)return e;{let r=N.zeros(t,n);return r=r.setSubMatrix(e,0,0),r}}let s=Math.max(n,i),c=Math.max(r,a);t=o(t,s,c),e=o(e,s,c);function l(e,t,n,r){if(n<=512||r<=512)return e.mmul(t);n%2==1&&r%2==1?(e=o(e,n+1,r+1),t=o(t,n+1,r+1)):n%2==1?(e=o(e,n+1,r),t=o(t,n+1,r)):r%2==1&&(e=o(e,n,r+1),t=o(t,n,r+1));let i=parseInt(e.rows/2,10),a=parseInt(e.columns/2,10),s=e.subMatrix(0,i-1,0,a-1),c=t.subMatrix(0,i-1,0,a-1),u=e.subMatrix(0,i-1,a,e.columns-1),d=t.subMatrix(0,i-1,a,t.columns-1),f=e.subMatrix(i,e.rows-1,0,a-1),p=t.subMatrix(i,t.rows-1,0,a-1),m=e.subMatrix(i,e.rows-1,a,e.columns-1),h=t.subMatrix(i,t.rows-1,a,t.columns-1),g=l(N.add(s,m),N.add(c,h),i,a),_=l(N.add(f,m),c,i,a),v=l(s,N.sub(d,h),i,a),y=l(m,N.sub(p,c),i,a),b=l(N.add(s,u),h,i,a),x=l(N.sub(f,s),N.add(c,d),i,a),S=l(N.sub(u,m),N.add(p,h),i,a),C=N.add(g,y);C.sub(b),C.add(S);let w=N.add(v,b),T=N.add(_,y),E=N.sub(g,_);E.add(v),E.add(x);let D=N.zeros(2*C.rows,2*C.columns);return D=D.setSubMatrix(C,0,0),D=D.setSubMatrix(w,C.rows,0),D=D.setSubMatrix(T,0,C.columns),D=D.setSubMatrix(E,C.rows,C.columns),D.subMatrix(0,n-1,0,r-1)}return l(t,e,s,c)}scaleRows(e={}){if(typeof e!=`object`)throw TypeError(`options must be an object`);let{min:n=0,max:r=1}=e;if(!Number.isFinite(n))throw TypeError(`min must be a number`);if(!Number.isFinite(r))throw TypeError(`max must be a number`);if(n>=r)throw RangeError(`min must be smaller than max`);let i=new F(this.rows,this.columns);for(let e=0;e<this.rows;e++){let a=this.getRow(e);a.length>0&&t(a,{min:n,max:r,output:a}),i.setRow(e,a)}return i}scaleColumns(e={}){if(typeof e!=`object`)throw TypeError(`options must be an object`);let{min:n=0,max:r=1}=e;if(!Number.isFinite(n))throw TypeError(`min must be a number`);if(!Number.isFinite(r))throw TypeError(`max must be a number`);if(n>=r)throw RangeError(`min must be smaller than max`);let i=new F(this.rows,this.columns);for(let e=0;e<this.columns;e++){let a=this.getColumn(e);a.length&&t(a,{min:n,max:r,output:a}),i.setColumn(e,a)}return i}flipRows(){let e=Math.ceil(this.columns/2);for(let t=0;t<this.rows;t++)for(let n=0;n<e;n++){let e=this.get(t,n),r=this.get(t,this.columns-1-n);this.set(t,n,r),this.set(t,this.columns-1-n,e)}return this}flipColumns(){let e=Math.ceil(this.rows/2);for(let t=0;t<this.columns;t++)for(let n=0;n<e;n++){let e=this.get(n,t),r=this.get(this.rows-1-n,t);this.set(n,t,r),this.set(this.rows-1-n,t,e)}return this}kroneckerProduct(e){e=F.checkMatrix(e);let t=this.rows,n=this.columns,r=e.rows,i=e.columns,a=new F(t*r,n*i);for(let o=0;o<t;o++)for(let t=0;t<n;t++)for(let n=0;n<r;n++)for(let s=0;s<i;s++)a.set(r*o+n,i*t+s,this.get(o,t)*e.get(n,s));return a}kroneckerSum(e){if(e=F.checkMatrix(e),!this.isSquare()||!e.isSquare())throw Error(`Kronecker Sum needs two Square Matrices`);let t=this.rows,n=e.rows,r=this.kroneckerProduct(F.eye(n,n)),i=F.eye(t,t).kroneckerProduct(e);return r.add(i)}transpose(){let e=new F(this.columns,this.rows);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)e.set(n,t,this.get(t,n));return e}sortRows(e=P){for(let t=0;t<this.rows;t++)this.setRow(t,this.getRow(t).sort(e));return this}sortColumns(e=P){for(let t=0;t<this.columns;t++)this.setColumn(t,this.getColumn(t).sort(e));return this}subMatrix(e,t,n,r){g(this,e,t,n,r);let i=new F(t-e+1,r-n+1);for(let a=e;a<=t;a++)for(let t=n;t<=r;t++)i.set(a-e,t-n,this.get(a,t));return i}subMatrixRow(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=this.columns-1),t>n||t<0||t>=this.columns||n<0||n>=this.columns)throw RangeError(`Argument out of range`);let r=new F(e.length,n-t+1);for(let i=0;i<e.length;i++)for(let a=t;a<=n;a++){if(e[i]<0||e[i]>=this.rows)throw RangeError(`Row index out of range: ${e[i]}`);r.set(i,a-t,this.get(e[i],a))}return r}subMatrixColumn(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=this.rows-1),t>n||t<0||t>=this.rows||n<0||n>=this.rows)throw RangeError(`Argument out of range`);let r=new F(n-t+1,e.length);for(let i=0;i<e.length;i++)for(let a=t;a<=n;a++){if(e[i]<0||e[i]>=this.columns)throw RangeError(`Column index out of range: ${e[i]}`);r.set(a-t,i,this.get(a,e[i]))}return r}setSubMatrix(e,t,n){if(e=F.checkMatrix(e),e.isEmpty())return this;let r=t+e.rows-1,i=n+e.columns-1;g(this,t,r,n,i);for(let r=0;r<e.rows;r++)for(let i=0;i<e.columns;i++)this.set(t+r,n+i,e.get(r,i));return this}selection(e,t){m(this,e),h(this,t);let n=new F(e.length,t.length);for(let r=0;r<e.length;r++){let i=e[r];for(let e=0;e<t.length;e++){let a=t[e];n.set(r,e,this.get(i,a))}}return n}trace(){let e=Math.min(this.rows,this.columns),t=0;for(let n=0;n<e;n++)t+=this.get(n,n);return t}clone(){return this.constructor.copy(this,new F(this.rows,this.columns))}static copy(e,t){for(let[n,r,i]of e.entries())t.set(n,r,i);return t}sum(e){switch(e){case`row`:return b(this);case`column`:return x(this);case void 0:return S(this);default:throw Error(`invalid option: ${e}`)}}product(e){switch(e){case`row`:return C(this);case`column`:return w(this);case void 0:return T(this);default:throw Error(`invalid option: ${e}`)}}mean(e){let t=this.sum(e);switch(e){case`row`:for(let e=0;e<this.rows;e++)t[e]/=this.columns;return t;case`column`:for(let e=0;e<this.columns;e++)t[e]/=this.rows;return t;case void 0:return t/this.size;default:throw Error(`invalid option: ${e}`)}}variance(t,n={}){if(typeof t==`object`&&(n=t,t=void 0),typeof n!=`object`)throw TypeError(`options must be an object`);let{unbiased:r=!0,mean:i=this.mean(t)}=n;if(typeof r!=`boolean`)throw TypeError(`unbiased must be a boolean`);switch(t){case`row`:if(!e.isAnyArray(i))throw TypeError(`mean must be an array`);return E(this,r,i);case`column`:if(!e.isAnyArray(i))throw TypeError(`mean must be an array`);return D(this,r,i);case void 0:if(typeof i!=`number`)throw TypeError(`mean must be a number`);return O(this,r,i);default:throw Error(`invalid option: ${t}`)}}standardDeviation(e,t){typeof e==`object`&&(t=e,e=void 0);let n=this.variance(e,t);if(e===void 0)return Math.sqrt(n);for(let e=0;e<n.length;e++)n[e]=Math.sqrt(n[e]);return n}center(t,n={}){if(typeof t==`object`&&(n=t,t=void 0),typeof n!=`object`)throw TypeError(`options must be an object`);let{center:r=this.mean(t)}=n;switch(t){case`row`:if(!e.isAnyArray(r))throw TypeError(`center must be an array`);return k(this,r),this;case`column`:if(!e.isAnyArray(r))throw TypeError(`center must be an array`);return A(this,r),this;case void 0:if(typeof r!=`number`)throw TypeError(`center must be a number`);return j(this,r),this;default:throw Error(`invalid option: ${t}`)}}scale(t,n={}){if(typeof t==`object`&&(n=t,t=void 0),typeof n!=`object`)throw TypeError(`options must be an object`);let r=n.scale;switch(t){case`row`:if(r===void 0)r=ee(this);else if(!e.isAnyArray(r))throw TypeError(`scale must be an array`);return te(this,r),this;case`column`:if(r===void 0)r=M(this);else if(!e.isAnyArray(r))throw TypeError(`scale must be an array`);return ne(this,r),this;case void 0:if(r===void 0)r=re(this);else if(typeof r!=`number`)throw TypeError(`scale must be a number`);return ie(this,r),this;default:throw Error(`invalid option: ${t}`)}}toString(e){return a(this,e)}[Symbol.iterator](){return this.entries()}*entries(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)yield[e,t,this.get(e,t)]}*values(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)yield this.get(e,t)}}N.prototype.klass=`Matrix`,typeof Symbol<`u`&&(N.prototype[Symbol.for(`nodejs.util.inspect.custom`)]=i);function P(e,t){return e-t}function ae(e){return e.every(e=>typeof e==`number`)}N.random=N.rand,N.randomInt=N.randInt,N.diagonal=N.diag,N.prototype.diagonal=N.prototype.diag,N.identity=N.eye,N.prototype.negate=N.prototype.neg,N.prototype.tensorProduct=N.prototype.kroneckerProduct;class F extends N{data;#e(e,t){if(this.data=[],Number.isInteger(t)&&t>=0)for(let n=0;n<e;n++)this.data.push(new Float64Array(t));else throw TypeError(`nColumns must be a positive integer`);this.rows=e,this.columns=t}constructor(t,n){if(super(),F.isMatrix(t))this.#e(t.rows,t.columns),F.copy(t,this);else if(Number.isInteger(t)&&t>=0)this.#e(t,n);else if(e.isAnyArray(t)){let e=t;if(t=e.length,n=t?e[0].length:0,typeof n!=`number`)throw TypeError(`Data must be a 2D array with at least one element`);this.data=[];for(let r=0;r<t;r++){if(e[r].length!==n)throw RangeError(`Inconsistent array dimensions`);if(!ae(e[r]))throw TypeError(`Input data contains non-numeric values`);this.data.push(Float64Array.from(e[r]))}this.rows=t,this.columns=n}else throw TypeError(`First argument must be a positive number or an array`)}set(e,t,n){return this.data[e][t]=n,this}get(e,t){return this.data[e][t]}removeRow(e){return u(this,e),this.data.splice(e,1),--this.rows,this}addRow(e,t){return t===void 0&&(t=e,e=this.rows),u(this,e,!0),t=Float64Array.from(f(this,t)),this.data.splice(e,0,t),this.rows+=1,this}removeColumn(e){d(this,e);for(let t=0;t<this.rows;t++){let n=new Float64Array(this.columns-1);for(let r=0;r<e;r++)n[r]=this.data[t][r];for(let r=e+1;r<this.columns;r++)n[r-1]=this.data[t][r];this.data[t]=n}return--this.columns,this}addColumn(e,t){t===void 0&&(t=e,e=this.columns),d(this,e,!0),t=p(this,t);for(let n=0;n<this.rows;n++){let r=new Float64Array(this.columns+1),i=0;for(;i<e;i++)r[i]=this.data[n][i];for(r[i++]=t[n];i<this.columns+1;i++)r[i]=this.data[n][i-1];this.data[n]=r}return this.columns+=1,this}}l(N,F);class oe extends N{#e;get size(){return this.#e.size}get rows(){return this.#e.rows}get columns(){return this.#e.columns}get diagonalSize(){return this.rows}static isSymmetricMatrix(e){return F.isMatrix(e)&&e.klassType===`SymmetricMatrix`}static zeros(e){return new this(e)}static ones(e){return new this(e).fill(1)}constructor(e){if(super(),F.isMatrix(e)){if(!e.isSymmetric())throw TypeError(`not symmetric data`);this.#e=F.copy(e,new F(e.rows,e.rows))}else if(Number.isInteger(e)&&e>=0)this.#e=new F(e,e);else if(this.#e=new F(e),!this.isSymmetric())throw TypeError(`not symmetric data`)}clone(){let e=new oe(this.diagonalSize);for(let[t,n,r]of this.upperRightEntries())e.set(t,n,r);return e}toMatrix(){return new F(this)}get(e,t){return this.#e.get(e,t)}set(e,t,n){return this.#e.set(e,t,n),this.#e.set(t,e,n),this}removeCross(e){return this.#e.removeRow(e),this.#e.removeColumn(e),this}addCross(e,t){t===void 0&&(t=e,e=this.diagonalSize);let n=t.slice();return n.splice(e,1),this.#e.addRow(e,n),this.#e.addColumn(e,t),this}applyMask(e){if(e.length!==this.diagonalSize)throw RangeError(`Mask size do not match with matrix size`);let t=[];for(let[n,r]of e.entries())r||t.push(n);t.reverse();for(let e of t)this.removeCross(e);return this}toCompact(){let{diagonalSize:e}=this,t=Array(e*(e+1)/2);for(let n=0,r=0,i=0;i<t.length;i++)t[i]=this.get(r,n),++n>=e&&(n=++r);return t}static fromCompact(e){let t=e.length,n=(Math.sqrt(8*t+1)-1)/2;if(!Number.isInteger(n))throw TypeError(`This array is not a compact representation of a Symmetric Matrix, ${JSON.stringify(e)}`);let r=new oe(n);for(let i=0,a=0,o=0;o<t;o++)r.set(i,a,e[o]),++i>=n&&(i=++a);return r}*upperRightEntries(){for(let e=0,t=0;e<this.diagonalSize;){let n=this.get(e,t);yield[e,t,n],++t>=this.diagonalSize&&(t=++e)}}*upperRightValues(){for(let e=0,t=0;e<this.diagonalSize;)yield this.get(e,t),++t>=this.diagonalSize&&(t=++e)}}oe.prototype.klassType=`SymmetricMatrix`;class se extends oe{static isDistanceMatrix(e){return oe.isSymmetricMatrix(e)&&e.klassSubType===`DistanceMatrix`}constructor(e){if(super(e),!this.isDistance())throw TypeError(`Provided arguments do no produce a distance matrix`)}set(e,t,n){return e===t&&(n=0),super.set(e,t,n)}addCross(e,t){return t===void 0&&(t=e,e=this.diagonalSize),t=t.slice(),t[e]=0,super.addCross(e,t)}toSymmetricMatrix(){return new oe(this)}clone(){let e=new se(this.diagonalSize);for(let[t,n,r]of this.upperRightEntries())t!==n&&e.set(t,n,r);return e}toCompact(){let{diagonalSize:e}=this,t=(e-1)*e/2,n=Array(t);for(let t=1,r=0,i=0;i<n.length;i++)n[i]=this.get(r,t),++t>=e&&(t=++r+1);return n}static fromCompact(e){let t=e.length;if(t===0)return new this(0);let n=(Math.sqrt(8*t+1)+1)/2;if(!Number.isInteger(n))throw TypeError(`This array is not a compact representation of a DistanceMatrix, ${JSON.stringify(e)}`);let r=new this(n);for(let i=1,a=0,o=0;o<t;o++)r.set(i,a,e[o]),++i>=n&&(i=++a+1);return r}}se.prototype.klassSubType=`DistanceMatrix`;class ce extends N{constructor(e,t,n){super(),this.matrix=e,this.rows=t,this.columns=n}}class le extends ce{constructor(e,t){d(e,t),super(e,e.rows,1),this.column=t}set(e,t,n){return this.matrix.set(e,this.column,n),this}get(e){return this.matrix.get(e,this.column)}}class ue extends ce{constructor(e,t){h(e,t),super(e,e.rows,t.length),this.columnIndices=t}set(e,t,n){return this.matrix.set(e,this.columnIndices[t],n),this}get(e,t){return this.matrix.get(e,this.columnIndices[t])}}class de extends ce{constructor(e){super(e,e.rows,e.columns)}set(e,t,n){return this.matrix.set(e,this.columns-t-1,n),this}get(e,t){return this.matrix.get(e,this.columns-t-1)}}class fe extends ce{constructor(e){super(e,e.rows,e.columns)}set(e,t,n){return this.matrix.set(this.rows-e-1,t,n),this}get(e,t){return this.matrix.get(this.rows-e-1,t)}}class pe extends ce{constructor(e,t){u(e,t),super(e,1,e.columns),this.row=t}set(e,t,n){return this.matrix.set(this.row,t,n),this}get(e,t){return this.matrix.get(this.row,t)}}class me extends ce{constructor(e,t){m(e,t),super(e,t.length,e.columns),this.rowIndices=t}set(e,t,n){return this.matrix.set(this.rowIndices[e],t,n),this}get(e,t){return this.matrix.get(this.rowIndices[e],t)}}class I extends ce{constructor(e,t,n){m(e,t),h(e,n),super(e,t.length,n.length),this.rowIndices=t,this.columnIndices=n}set(e,t,n){return this.matrix.set(this.rowIndices[e],this.columnIndices[t],n),this}get(e,t){return this.matrix.get(this.rowIndices[e],this.columnIndices[t])}}class he extends ce{constructor(e,t,n,r,i){g(e,t,n,r,i),super(e,n-t+1,i-r+1),this.startRow=t,this.startColumn=r}set(e,t,n){return this.matrix.set(this.startRow+e,this.startColumn+t,n),this}get(e,t){return this.matrix.get(this.startRow+e,this.startColumn+t)}}class ge extends ce{constructor(e){super(e,e.columns,e.rows)}set(e,t,n){return this.matrix.set(t,e,n),this}get(e,t){return this.matrix.get(t,e)}}class _e extends N{constructor(e,t={}){let{rows:n=1}=t;if(e.length%n!==0)throw Error(`the data length is not divisible by the number of rows`);super(),this.rows=n,this.columns=e.length/n,this.data=e}set(e,t,n){let r=this._calculateIndex(e,t);return this.data[r]=n,this}get(e,t){let n=this._calculateIndex(e,t);return this.data[n]}_calculateIndex(e,t){return e*this.columns+t}}class ve extends N{constructor(e){super(),this.data=e,this.rows=e.length,this.columns=e[0].length}set(e,t,n){return this.data[e][t]=n,this}get(e,t){return this.data[e][t]}}function ye(t,n){if(e.isAnyArray(t))return t[0]&&e.isAnyArray(t[0])?new ve(t):new _e(t,n);throw Error(`the argument is not an array`)}class be{constructor(e){e=ve.checkMatrix(e);let t=e.clone(),n=t.rows,r=t.columns,i=new Float64Array(n),a=1,o,s,c,l,u,d,f,p,m;for(o=0;o<n;o++)i[o]=o;for(p=new Float64Array(n),s=0;s<r;s++){for(o=0;o<n;o++)p[o]=t.get(o,s);for(o=0;o<n;o++){for(m=Math.min(o,s),u=0,c=0;c<m;c++)u+=t.get(o,c)*p[c];p[o]-=u,t.set(o,s,p[o])}for(l=s,o=s+1;o<n;o++)Math.abs(p[o])>Math.abs(p[l])&&(l=o);if(l!==s){for(c=0;c<r;c++)d=t.get(l,c),t.set(l,c,t.get(s,c)),t.set(s,c,d);f=i[l],i[l]=i[s],i[s]=f,a=-a}if(s<n&&t.get(s,s)!==0)for(o=s+1;o<n;o++)t.set(o,s,t.get(o,s)/t.get(s,s))}this.LU=t,this.pivotVector=i,this.pivotSign=a}isSingular(){let e=this.LU,t=e.columns;for(let n=0;n<t;n++)if(e.get(n,n)===0)return!0;return!1}solve(e){e=F.checkMatrix(e);let t=this.LU;if(t.rows!==e.rows)throw Error(`Invalid matrix dimensions`);if(this.isSingular())throw Error(`LU matrix is singular`);let n=e.columns,r=e.subMatrixRow(this.pivotVector,0,n-1),i=t.columns,a,o,s;for(s=0;s<i;s++)for(a=s+1;a<i;a++)for(o=0;o<n;o++)r.set(a,o,r.get(a,o)-r.get(s,o)*t.get(a,s));for(s=i-1;s>=0;s--){for(o=0;o<n;o++)r.set(s,o,r.get(s,o)/t.get(s,s));for(a=0;a<s;a++)for(o=0;o<n;o++)r.set(a,o,r.get(a,o)-r.get(s,o)*t.get(a,s))}return r}get determinant(){let e=this.LU;if(!e.isSquare())throw Error(`Matrix must be square`);let t=this.pivotSign,n=e.columns;for(let r=0;r<n;r++)t*=e.get(r,r);return t}get lowerTriangularMatrix(){let e=this.LU,t=e.rows,n=e.columns,r=new F(t,n);for(let i=0;i<t;i++)for(let t=0;t<n;t++)i>t?r.set(i,t,e.get(i,t)):i===t?r.set(i,t,1):r.set(i,t,0);return r}get upperTriangularMatrix(){let e=this.LU,t=e.rows,n=e.columns,r=new F(t,n);for(let i=0;i<t;i++)for(let t=0;t<n;t++)i<=t?r.set(i,t,e.get(i,t)):r.set(i,t,0);return r}get pivotPermutationVector(){return Array.from(this.pivotVector)}}function xe(e,t){let n=0;return Math.abs(e)>Math.abs(t)?(n=t/e,Math.abs(e)*Math.sqrt(1+n*n)):t===0?0:(n=e/t,Math.abs(t)*Math.sqrt(1+n*n))}class Se{constructor(e){e=ve.checkMatrix(e);let t=e.clone(),n=e.rows,r=e.columns,i=new Float64Array(r),a,o,s,c;for(s=0;s<r;s++){let e=0;for(a=s;a<n;a++)e=xe(e,t.get(a,s));if(e!==0){for(t.get(s,s)<0&&(e=-e),a=s;a<n;a++)t.set(a,s,t.get(a,s)/e);for(t.set(s,s,t.get(s,s)+1),o=s+1;o<r;o++){for(c=0,a=s;a<n;a++)c+=t.get(a,s)*t.get(a,o);for(c=-c/t.get(s,s),a=s;a<n;a++)t.set(a,o,t.get(a,o)+c*t.get(a,s))}}i[s]=-e}this.QR=t,this.Rdiag=i}solve(e){e=F.checkMatrix(e);let t=this.QR,n=t.rows;if(e.rows!==n)throw Error(`Matrix row dimensions must agree`);if(!this.isFullRank())throw Error(`Matrix is rank deficient`);let r=e.columns,i=e.clone(),a=t.columns,o,s,c,l;for(c=0;c<a;c++)for(s=0;s<r;s++){for(l=0,o=c;o<n;o++)l+=t.get(o,c)*i.get(o,s);for(l=-l/t.get(c,c),o=c;o<n;o++)i.set(o,s,i.get(o,s)+l*t.get(o,c))}for(c=a-1;c>=0;c--){for(s=0;s<r;s++)i.set(c,s,i.get(c,s)/this.Rdiag[c]);for(o=0;o<c;o++)for(s=0;s<r;s++)i.set(o,s,i.get(o,s)-i.get(c,s)*t.get(o,c))}return i.subMatrix(0,a-1,0,r-1)}isFullRank(){let e=this.QR.columns;for(let t=0;t<e;t++)if(this.Rdiag[t]===0)return!1;return!0}get upperTriangularMatrix(){let e=this.QR,t=e.columns,n=new F(t,t),r,i;for(r=0;r<t;r++)for(i=0;i<t;i++)r<i?n.set(r,i,e.get(r,i)):r===i?n.set(r,i,this.Rdiag[r]):n.set(r,i,0);return n}get orthogonalMatrix(){let e=this.QR,t=e.rows,n=e.columns,r=new F(t,n),i,a,o,s;for(o=n-1;o>=0;o--){for(i=0;i<t;i++)r.set(i,o,0);for(r.set(o,o,1),a=o;a<n;a++)if(e.get(o,o)!==0){for(s=0,i=o;i<t;i++)s+=e.get(i,o)*r.get(i,a);for(s=-s/e.get(o,o),i=o;i<t;i++)r.set(i,a,r.get(i,a)+s*e.get(i,o))}}return r}}class Ce{constructor(e,t={}){if(e=ve.checkMatrix(e),e.isEmpty())throw Error(`Matrix must be non-empty`);let n=e.rows,r=e.columns,{computeLeftSingularVectors:i=!0,computeRightSingularVectors:a=!0,autoTranspose:o=!1}=t,s=!!i,c=!!a,l=!1,u;if(n<r)if(!o)u=e.clone(),console.warn(`Computing SVD on a matrix with more columns than rows. Consider enabling autoTranspose`);else{u=e.transpose(),n=u.rows,r=u.columns,l=!0;let t=s;s=c,c=t}else u=e.clone();let d=Math.min(n,r),f=Math.min(n+1,r),p=new Float64Array(f),m=new F(n,d),h=new F(r,r),g=new Float64Array(r),_=new Float64Array(n),v=new Float64Array(f);for(let e=0;e<f;e++)v[e]=e;let y=Math.min(n-1,r),b=Math.max(0,Math.min(r-2,n)),x=Math.max(y,b);for(let e=0;e<x;e++){if(e<y){p[e]=0;for(let t=e;t<n;t++)p[e]=xe(p[e],u.get(t,e));if(p[e]!==0){u.get(e,e)<0&&(p[e]=-p[e]);for(let t=e;t<n;t++)u.set(t,e,u.get(t,e)/p[e]);u.set(e,e,u.get(e,e)+1)}p[e]=-p[e]}for(let t=e+1;t<r;t++){if(e<y&&p[e]!==0){let r=0;for(let i=e;i<n;i++)r+=u.get(i,e)*u.get(i,t);r=-r/u.get(e,e);for(let i=e;i<n;i++)u.set(i,t,u.get(i,t)+r*u.get(i,e))}g[t]=u.get(e,t)}if(s&&e<y)for(let t=e;t<n;t++)m.set(t,e,u.get(t,e));if(e<b){g[e]=0;for(let t=e+1;t<r;t++)g[e]=xe(g[e],g[t]);if(g[e]!==0){g[e+1]<0&&(g[e]=0-g[e]);for(let t=e+1;t<r;t++)g[t]/=g[e];g[e+1]+=1}if(g[e]=-g[e],e+1<n&&g[e]!==0){for(let t=e+1;t<n;t++)_[t]=0;for(let t=e+1;t<n;t++)for(let n=e+1;n<r;n++)_[t]+=g[n]*u.get(t,n);for(let t=e+1;t<r;t++){let r=-g[t]/g[e+1];for(let i=e+1;i<n;i++)u.set(i,t,u.get(i,t)+r*_[i])}}if(c)for(let t=e+1;t<r;t++)h.set(t,e,g[t])}}let S=Math.min(r,n+1);if(y<r&&(p[y]=u.get(y,y)),n<S&&(p[S-1]=0),b+1<S&&(g[b]=u.get(b,S-1)),g[S-1]=0,s){for(let e=y;e<d;e++){for(let t=0;t<n;t++)m.set(t,e,0);m.set(e,e,1)}for(let e=y-1;e>=0;e--)if(p[e]!==0){for(let t=e+1;t<d;t++){let r=0;for(let i=e;i<n;i++)r+=m.get(i,e)*m.get(i,t);r=-r/m.get(e,e);for(let i=e;i<n;i++)m.set(i,t,m.get(i,t)+r*m.get(i,e))}for(let t=e;t<n;t++)m.set(t,e,-m.get(t,e));m.set(e,e,1+m.get(e,e));for(let t=0;t<e-1;t++)m.set(t,e,0)}else{for(let t=0;t<n;t++)m.set(t,e,0);m.set(e,e,1)}}if(c)for(let e=r-1;e>=0;e--){if(e<b&&g[e]!==0)for(let t=e+1;t<r;t++){let n=0;for(let i=e+1;i<r;i++)n+=h.get(i,e)*h.get(i,t);n=-n/h.get(e+1,e);for(let i=e+1;i<r;i++)h.set(i,t,h.get(i,t)+n*h.get(i,e))}for(let t=0;t<r;t++)h.set(t,e,0);h.set(e,e,1)}let C=S-1,w=2**-52;for(;S>0;){let e,t;for(e=S-2;e>=-1&&e!==-1;e--){let t=Number.MIN_VALUE+w*Math.abs(p[e]+Math.abs(p[e+1]));if(Math.abs(g[e])<=t||Number.isNaN(g[e])){g[e]=0;break}}if(e===S-2)t=4;else{let n;for(n=S-1;n>=e&&n!==e;n--){let t=(n===S?0:Math.abs(g[n]))+(n===e+1?0:Math.abs(g[n-1]));if(Math.abs(p[n])<=w*t){p[n]=0;break}}n===e?t=3:n===S-1?t=1:(t=2,e=n)}switch(e++,t){case 1:{let t=g[S-2];g[S-2]=0;for(let n=S-2;n>=e;n--){let i=xe(p[n],t),a=p[n]/i,o=t/i;if(p[n]=i,n!==e&&(t=-o*g[n-1],g[n-1]=a*g[n-1]),c)for(let e=0;e<r;e++)i=a*h.get(e,n)+o*h.get(e,S-1),h.set(e,S-1,-o*h.get(e,n)+a*h.get(e,S-1)),h.set(e,n,i)}break}case 2:{let t=g[e-1];g[e-1]=0;for(let r=e;r<S;r++){let i=xe(p[r],t),a=p[r]/i,o=t/i;if(p[r]=i,t=-o*g[r],g[r]=a*g[r],s)for(let t=0;t<n;t++)i=a*m.get(t,r)+o*m.get(t,e-1),m.set(t,e-1,-o*m.get(t,r)+a*m.get(t,e-1)),m.set(t,r,i)}break}case 3:{let t=Math.max(Math.abs(p[S-1]),Math.abs(p[S-2]),Math.abs(g[S-2]),Math.abs(p[e]),Math.abs(g[e])),i=p[S-1]/t,a=p[S-2]/t,o=g[S-2]/t,l=p[e]/t,u=g[e]/t,d=((a+i)*(a-i)+o*o)/2,f=i*o*(i*o),_=0;(d!==0||f!==0)&&(_=d<0?0-Math.sqrt(d*d+f):Math.sqrt(d*d+f),_=f/(d+_));let v=(l+i)*(l-i)+_,y=l*u;for(let t=e;t<S-1;t++){let i=xe(v,y);i===0&&(i=Number.MIN_VALUE);let a=v/i,o=y/i;if(t!==e&&(g[t-1]=i),v=a*p[t]+o*g[t],g[t]=a*g[t]-o*p[t],y=o*p[t+1],p[t+1]=a*p[t+1],c)for(let e=0;e<r;e++)i=a*h.get(e,t)+o*h.get(e,t+1),h.set(e,t+1,-o*h.get(e,t)+a*h.get(e,t+1)),h.set(e,t,i);if(i=xe(v,y),i===0&&(i=Number.MIN_VALUE),a=v/i,o=y/i,p[t]=i,v=a*g[t]+o*p[t+1],p[t+1]=-o*g[t]+a*p[t+1],y=o*g[t+1],g[t+1]=a*g[t+1],s&&t<n-1)for(let e=0;e<n;e++)i=a*m.get(e,t)+o*m.get(e,t+1),m.set(e,t+1,-o*m.get(e,t)+a*m.get(e,t+1)),m.set(e,t,i)}g[S-2]=v;break}case 4:if(p[e]<=0&&(p[e]=p[e]<0?-p[e]:0,c))for(let t=0;t<=C;t++)h.set(t,e,-h.get(t,e));for(;e<C&&!(p[e]>=p[e+1]);){let t=p[e];if(p[e]=p[e+1],p[e+1]=t,c&&e<r-1)for(let n=0;n<r;n++)t=h.get(n,e+1),h.set(n,e+1,h.get(n,e)),h.set(n,e,t);if(s&&e<n-1)for(let r=0;r<n;r++)t=m.get(r,e+1),m.set(r,e+1,m.get(r,e)),m.set(r,e,t);e++}S--;break}}if(l){let e=h;h=m,m=e}this.m=n,this.n=r,this.s=p,this.U=m,this.V=h}solve(e){let t=e,n=this.threshold,r=this.s.length,i=F.zeros(r,r);for(let e=0;e<r;e++)Math.abs(this.s[e])<=n?i.set(e,e,0):i.set(e,e,1/this.s[e]);let a=this.U,o=this.rightSingularVectors,s=o.mmul(i),c=o.rows,l=a.rows,u=F.zeros(c,l);for(let e=0;e<c;e++)for(let t=0;t<l;t++){let n=0;for(let i=0;i<r;i++)n+=s.get(e,i)*a.get(t,i);u.set(e,t,n)}return u.mmul(t)}solveForDiagonal(e){return this.solve(F.diag(e))}inverse(){let e=this.V,t=this.threshold,n=e.rows,r=e.columns,i=new F(n,this.s.length);for(let a=0;a<n;a++)for(let n=0;n<r;n++)Math.abs(this.s[n])>t&&i.set(a,n,e.get(a,n)/this.s[n]);let a=this.U,o=a.rows,s=a.columns,c=new F(n,o);for(let e=0;e<n;e++)for(let t=0;t<o;t++){let n=0;for(let r=0;r<s;r++)n+=i.get(e,r)*a.get(t,r);c.set(e,t,n)}return c}get condition(){return this.s[0]/this.s[Math.min(this.m,this.n)-1]}get norm2(){return this.s[0]}get rank(){let e=Math.max(this.m,this.n)*this.s[0]*2**-52,t=0,n=this.s;for(let r=0,i=n.length;r<i;r++)n[r]>e&&t++;return t}get diagonal(){return Array.from(this.s)}get threshold(){return 2**-52/2*Math.max(this.m,this.n)*this.s[0]}get leftSingularVectors(){return this.U}get rightSingularVectors(){return this.V}get diagonalMatrix(){return F.diag(this.s)}}function we(e,t=!1){return e=ve.checkMatrix(e),t?new Ce(e).inverse():Te(e,F.eye(e.rows))}function Te(e,t,n=!1){return e=ve.checkMatrix(e),t=ve.checkMatrix(t),n?new Ce(e).solve(t):e.isSquare()?new be(e).solve(t):new Se(e).solve(t)}function Ee(e){if(e=F.checkMatrix(e),e.isSquare()){if(e.columns===0)return 1;let t,n,r,i;if(e.columns===2)return t=e.get(0,0),n=e.get(0,1),r=e.get(1,0),i=e.get(1,1),t*i-n*r;if(e.columns===3){let i,a,o;return i=new I(e,[1,2],[1,2]),a=new I(e,[1,2],[0,2]),o=new I(e,[1,2],[0,1]),t=e.get(0,0),n=e.get(0,1),r=e.get(0,2),t*Ee(i)-n*Ee(a)+r*Ee(o)}else return new be(e).determinant}else throw Error(`determinant can only be calculated for a square matrix`)}function De(e,t){let n=[];for(let r=0;r<e;r++)r!==t&&n.push(r);return n}function Oe(e,t,n,r=1e-9,i=1e-9){if(e>i)return Array(t.rows+1).fill(0);{let e=t.addRow(n,[0]);for(let t=0;t<e.rows;t++)Math.abs(e.get(t,0))<r&&e.set(t,0,0);return e.to1DArray()}}function ke(e,t={}){let{thresholdValue:n=1e-9,thresholdError:r=1e-9}=t;e=F.checkMatrix(e);let i=e.rows,a=new F(i,i);for(let t=0;t<i;t++){let o=F.columnVector(e.getRow(t)),s=e.subMatrixRow(De(i,t)).transpose(),c=new Ce(s).solve(o),l=F.sub(o,s.mmul(c)).abs().max();a.setRow(t,Oe(l,c,t,n,r))}return a}function Ae(e,t=2**-52){if(e=F.checkMatrix(e),e.isEmpty())return e.transpose();let n=new Ce(e,{autoTranspose:!0}),r=n.leftSingularVectors,i=n.rightSingularVectors,a=n.diagonal;for(let e=0;e<a.length;e++)Math.abs(a[e])>t?a[e]=1/a[e]:a[e]=0;return i.mmul(F.diag(a).mmul(r.transpose()))}function je(t,n=t,r={}){t=new F(t);let i=!1;if(typeof n==`object`&&!F.isMatrix(n)&&!e.isAnyArray(n)?(r=n,n=t,i=!0):n=new F(n),t.rows!==n.rows)throw TypeError(`Both matrices must have the same number of rows`);let{center:a=!0}=r;a&&(t=t.center(`column`),i||(n=n.center(`column`)));let o=t.transpose().mmul(n);for(let e=0;e<o.rows;e++)for(let n=0;n<o.columns;n++)o.set(e,n,o.get(e,n)*(1/(t.rows-1)));return o}function Me(t,n=t,r={}){t=new F(t);let i=!1;if(typeof n==`object`&&!F.isMatrix(n)&&!e.isAnyArray(n)?(r=n,n=t,i=!0):n=new F(n),t.rows!==n.rows)throw TypeError(`Both matrices must have the same number of rows`);let{center:a=!0,scale:o=!0}=r;a&&(t.center(`column`),i||n.center(`column`)),o&&(t.scale(`column`),i||n.scale(`column`));let s=t.standardDeviation(`column`,{unbiased:!0}),c=i?s:n.standardDeviation(`column`,{unbiased:!0}),l=t.transpose().mmul(n);for(let e=0;e<l.rows;e++)for(let n=0;n<l.columns;n++)l.set(e,n,l.get(e,n)*(1/(s[e]*c[n]))*(1/(t.rows-1)));return l}class Ne{constructor(e,t={}){let{assumeSymmetric:n=!1}=t;if(e=ve.checkMatrix(e),!e.isSquare())throw Error(`Matrix is not a square matrix`);if(e.isEmpty())throw Error(`Matrix must be non-empty`);let r=e.columns,i=new F(r,r),a=new Float64Array(r),o=new Float64Array(r),s=e,c,l,u=!1;if(u=n?!0:e.isSymmetric(),u){for(c=0;c<r;c++)for(l=0;l<r;l++)i.set(c,l,s.get(c,l));Pe(r,o,a,i),Fe(r,o,a,i)}else{let e=new F(r,r),t=new Float64Array(r);for(l=0;l<r;l++)for(c=0;c<r;c++)e.set(c,l,s.get(c,l));Ie(r,e,t,i),Le(r,o,a,i,e)}this.n=r,this.e=o,this.d=a,this.V=i}get realEigenvalues(){return Array.from(this.d)}get imaginaryEigenvalues(){return Array.from(this.e)}get eigenvectorMatrix(){return this.V}get diagonalMatrix(){let e=this.n,t=this.e,n=this.d,r=new F(e,e),i,a;for(i=0;i<e;i++){for(a=0;a<e;a++)r.set(i,a,0);r.set(i,i,n[i]),t[i]>0?r.set(i,i+1,t[i]):t[i]<0&&r.set(i,i-1,t[i])}return r}}function Pe(e,t,n,r){let i,a,o,s,c,l,u,d;for(c=0;c<e;c++)n[c]=r.get(e-1,c);for(s=e-1;s>0;s--){for(d=0,o=0,l=0;l<s;l++)d+=Math.abs(n[l]);if(d===0)for(t[s]=n[s-1],c=0;c<s;c++)n[c]=r.get(s-1,c),r.set(s,c,0),r.set(c,s,0);else{for(l=0;l<s;l++)n[l]/=d,o+=n[l]*n[l];for(i=n[s-1],a=Math.sqrt(o),i>0&&(a=-a),t[s]=d*a,o-=i*a,n[s-1]=i-a,c=0;c<s;c++)t[c]=0;for(c=0;c<s;c++){for(i=n[c],r.set(c,s,i),a=t[c]+r.get(c,c)*i,l=c+1;l<=s-1;l++)a+=r.get(l,c)*n[l],t[l]+=r.get(l,c)*i;t[c]=a}for(i=0,c=0;c<s;c++)t[c]/=o,i+=t[c]*n[c];for(u=i/(o+o),c=0;c<s;c++)t[c]-=u*n[c];for(c=0;c<s;c++){for(i=n[c],a=t[c],l=c;l<=s-1;l++)r.set(l,c,r.get(l,c)-(i*t[l]+a*n[l]));n[c]=r.get(s-1,c),r.set(s,c,0)}}n[s]=o}for(s=0;s<e-1;s++){if(r.set(e-1,s,r.get(s,s)),r.set(s,s,1),o=n[s+1],o!==0){for(l=0;l<=s;l++)n[l]=r.get(l,s+1)/o;for(c=0;c<=s;c++){for(a=0,l=0;l<=s;l++)a+=r.get(l,s+1)*r.get(l,c);for(l=0;l<=s;l++)r.set(l,c,r.get(l,c)-a*n[l])}}for(l=0;l<=s;l++)r.set(l,s+1,0)}for(c=0;c<e;c++)n[c]=r.get(e-1,c),r.set(e-1,c,0);r.set(e-1,e-1,1),t[0]=0}function Fe(e,t,n,r){let i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y;for(o=1;o<e;o++)t[o-1]=t[o];t[e-1]=0;let b=0,x=0,S=2**-52;for(l=0;l<e;l++){for(x=Math.max(x,Math.abs(n[l])+Math.abs(t[l])),u=l;u<e&&!(Math.abs(t[u])<=S*x);)u++;if(u>l)do{for(i=n[l],d=(n[l+1]-i)/(2*t[l]),f=xe(d,1),d<0&&(f=-f),n[l]=t[l]/(d+f),n[l+1]=t[l]*(d+f),p=n[l+1],a=i-n[l],o=l+2;o<e;o++)n[o]-=a;for(b+=a,d=n[u],m=1,h=m,g=m,_=t[l+1],v=0,y=0,o=u-1;o>=l;o--)for(g=h,h=m,y=v,i=m*t[o],a=m*d,f=xe(d,t[o]),t[o+1]=v*f,v=t[o]/f,m=d/f,d=m*n[o]-v*i,n[o+1]=a+v*(m*i+v*n[o]),c=0;c<e;c++)a=r.get(c,o+1),r.set(c,o+1,v*r.get(c,o)+m*a),r.set(c,o,m*r.get(c,o)-v*a);d=-v*y*g*_*t[l]/p,t[l]=v*d,n[l]=m*d}while(Math.abs(t[l])>S*x);n[l]=n[l]+b,t[l]=0}for(o=0;o<e-1;o++){for(c=o,d=n[o],s=o+1;s<e;s++)n[s]<d&&(c=s,d=n[s]);if(c!==o)for(n[c]=n[o],n[o]=d,s=0;s<e;s++)d=r.get(s,o),r.set(s,o,r.get(s,c)),r.set(s,c,d)}}function Ie(e,t,n,r){let i=e-1,a,o,s,c,l,u,d;for(u=1;u<=i-1;u++){for(d=0,c=u;c<=i;c++)d+=Math.abs(t.get(c,u-1));if(d!==0){for(s=0,c=i;c>=u;c--)n[c]=t.get(c,u-1)/d,s+=n[c]*n[c];for(o=Math.sqrt(s),n[u]>0&&(o=-o),s-=n[u]*o,n[u]=n[u]-o,l=u;l<e;l++){for(a=0,c=i;c>=u;c--)a+=n[c]*t.get(c,l);for(a/=s,c=u;c<=i;c++)t.set(c,l,t.get(c,l)-a*n[c])}for(c=0;c<=i;c++){for(a=0,l=i;l>=u;l--)a+=n[l]*t.get(c,l);for(a/=s,l=u;l<=i;l++)t.set(c,l,t.get(c,l)-a*n[l])}n[u]=d*n[u],t.set(u,u-1,d*o)}}for(c=0;c<e;c++)for(l=0;l<e;l++)r.set(c,l,+(c===l));for(u=i-1;u>=1;u--)if(t.get(u,u-1)!==0){for(c=u+1;c<=i;c++)n[c]=t.get(c,u-1);for(l=u;l<=i;l++){for(o=0,c=u;c<=i;c++)o+=n[c]*r.get(c,l);for(o=o/n[u]/t.get(u,u-1),c=u;c<=i;c++)r.set(c,l,r.get(c,l)+o*n[c])}}}function Le(e,t,n,r,i){let a=e-1,o=e-1,s=2**-52,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=0,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A;for(g=0;g<e;g++)for((g<0||g>o)&&(n[g]=i.get(g,g),t[g]=0),_=Math.max(g-1,0);_<e;_++)l+=Math.abs(i.get(g,_));for(;a>=0;){for(y=a;y>0&&(p=Math.abs(i.get(y-1,y-1))+Math.abs(i.get(y,y)),p===0&&(p=l),!(Math.abs(i.get(y,y-1))<s*p));)y--;if(y===a)i.set(a,a,i.get(a,a)+c),n[a]=i.get(a,a),t[a]=0,a--,h=0;else if(y===a-1){if(S=i.get(a,a-1)*i.get(a-1,a),u=(i.get(a-1,a-1)-i.get(a,a))/2,d=u*u+S,m=Math.sqrt(Math.abs(d)),i.set(a,a,i.get(a,a)+c),i.set(a-1,a-1,i.get(a-1,a-1)+c),C=i.get(a,a),d>=0){for(m=u>=0?u+m:u-m,n[a-1]=C+m,n[a]=n[a-1],m!==0&&(n[a]=C-S/m),t[a-1]=0,t[a]=0,C=i.get(a,a-1),p=Math.abs(C)+Math.abs(m),u=C/p,d=m/p,f=Math.sqrt(u*u+d*d),u/=f,d/=f,_=a-1;_<e;_++)m=i.get(a-1,_),i.set(a-1,_,d*m+u*i.get(a,_)),i.set(a,_,d*i.get(a,_)-u*m);for(g=0;g<=a;g++)m=i.get(g,a-1),i.set(g,a-1,d*m+u*i.get(g,a)),i.set(g,a,d*i.get(g,a)-u*m);for(g=0;g<=o;g++)m=r.get(g,a-1),r.set(g,a-1,d*m+u*r.get(g,a)),r.set(g,a,d*r.get(g,a)-u*m)}else n[a-1]=C+u,n[a]=C+u,t[a-1]=m,t[a]=-m;a-=2,h=0}else{if(C=i.get(a,a),w=0,S=0,y<a&&(w=i.get(a-1,a-1),S=i.get(a,a-1)*i.get(a-1,a)),h===10){for(c+=C,g=0;g<=a;g++)i.set(g,g,i.get(g,g)-C);p=Math.abs(i.get(a,a-1))+Math.abs(i.get(a-1,a-2)),C=w=.75*p,S=-.4375*p*p}if(h===30&&(p=(w-C)/2,p=p*p+S,p>0)){for(p=Math.sqrt(p),w<C&&(p=-p),p=C-S/((w-C)/2+p),g=0;g<=a;g++)i.set(g,g,i.get(g,g)-p);c+=p,C=w=S=.964}for(h+=1,b=a-2;b>=y&&(m=i.get(b,b),f=C-m,p=w-m,u=(f*p-S)/i.get(b+1,b)+i.get(b,b+1),d=i.get(b+1,b+1)-m-f-p,f=i.get(b+2,b+1),p=Math.abs(u)+Math.abs(d)+Math.abs(f),u/=p,d/=p,f/=p,!(b===y||Math.abs(i.get(b,b-1))*(Math.abs(d)+Math.abs(f))<s*(Math.abs(u)*(Math.abs(i.get(b-1,b-1))+Math.abs(m)+Math.abs(i.get(b+1,b+1))))));)b--;for(g=b+2;g<=a;g++)i.set(g,g-2,0),g>b+2&&i.set(g,g-3,0);for(v=b;v<=a-1&&(k=v!==a-1,v!==b&&(u=i.get(v,v-1),d=i.get(v+1,v-1),f=k?i.get(v+2,v-1):0,C=Math.abs(u)+Math.abs(d)+Math.abs(f),C!==0&&(u/=C,d/=C,f/=C)),C!==0);v++)if(p=Math.sqrt(u*u+d*d+f*f),u<0&&(p=-p),p!==0){for(v===b?y!==b&&i.set(v,v-1,-i.get(v,v-1)):i.set(v,v-1,-p*C),u+=p,C=u/p,w=d/p,m=f/p,d/=u,f/=u,_=v;_<e;_++)u=i.get(v,_)+d*i.get(v+1,_),k&&(u+=f*i.get(v+2,_),i.set(v+2,_,i.get(v+2,_)-u*m)),i.set(v,_,i.get(v,_)-u*C),i.set(v+1,_,i.get(v+1,_)-u*w);for(g=0;g<=Math.min(a,v+3);g++)u=C*i.get(g,v)+w*i.get(g,v+1),k&&(u+=m*i.get(g,v+2),i.set(g,v+2,i.get(g,v+2)-u*f)),i.set(g,v,i.get(g,v)-u),i.set(g,v+1,i.get(g,v+1)-u*d);for(g=0;g<=o;g++)u=C*r.get(g,v)+w*r.get(g,v+1),k&&(u+=m*r.get(g,v+2),r.set(g,v+2,r.get(g,v+2)-u*f)),r.set(g,v,r.get(g,v)-u),r.set(g,v+1,r.get(g,v+1)-u*d)}}}if(l!==0){for(a=e-1;a>=0;a--)if(u=n[a],d=t[a],d===0)for(y=a,i.set(a,a,1),g=a-1;g>=0;g--){for(S=i.get(g,g)-u,f=0,_=y;_<=a;_++)f+=i.get(g,_)*i.get(_,a);if(t[g]<0)m=S,p=f;else if(y=g,t[g]===0?i.set(g,a,S===0?-f/(s*l):-f/S):(C=i.get(g,g+1),w=i.get(g+1,g),d=(n[g]-u)*(n[g]-u)+t[g]*t[g],x=(C*p-m*f)/d,i.set(g,a,x),i.set(g+1,a,Math.abs(C)>Math.abs(m)?(-f-S*x)/C:(-p-w*x)/m)),x=Math.abs(i.get(g,a)),s*x*x>1)for(_=g;_<=a;_++)i.set(_,a,i.get(_,a)/x)}else if(d<0)for(y=a-1,Math.abs(i.get(a,a-1))>Math.abs(i.get(a-1,a))?(i.set(a-1,a-1,d/i.get(a,a-1)),i.set(a-1,a,-(i.get(a,a)-u)/i.get(a,a-1))):(A=Re(0,-i.get(a-1,a),i.get(a-1,a-1)-u,d),i.set(a-1,a-1,A[0]),i.set(a-1,a,A[1])),i.set(a,a-1,0),i.set(a,a,1),g=a-2;g>=0;g--){for(T=0,E=0,_=y;_<=a;_++)T+=i.get(g,_)*i.get(_,a-1),E+=i.get(g,_)*i.get(_,a);if(S=i.get(g,g)-u,t[g]<0)m=S,f=T,p=E;else if(y=g,t[g]===0?(A=Re(-T,-E,S,d),i.set(g,a-1,A[0]),i.set(g,a,A[1])):(C=i.get(g,g+1),w=i.get(g+1,g),D=(n[g]-u)*(n[g]-u)+t[g]*t[g]-d*d,O=(n[g]-u)*2*d,D===0&&O===0&&(D=s*l*(Math.abs(S)+Math.abs(d)+Math.abs(C)+Math.abs(w)+Math.abs(m))),A=Re(C*f-m*T+d*E,C*p-m*E-d*T,D,O),i.set(g,a-1,A[0]),i.set(g,a,A[1]),Math.abs(C)>Math.abs(m)+Math.abs(d)?(i.set(g+1,a-1,(-T-S*i.get(g,a-1)+d*i.get(g,a))/C),i.set(g+1,a,(-E-S*i.get(g,a)-d*i.get(g,a-1))/C)):(A=Re(-f-w*i.get(g,a-1),-p-w*i.get(g,a),m,d),i.set(g+1,a-1,A[0]),i.set(g+1,a,A[1]))),x=Math.max(Math.abs(i.get(g,a-1)),Math.abs(i.get(g,a))),s*x*x>1)for(_=g;_<=a;_++)i.set(_,a-1,i.get(_,a-1)/x),i.set(_,a,i.get(_,a)/x)}for(g=0;g<e;g++)if(g<0||g>o)for(_=g;_<e;_++)r.set(g,_,i.get(g,_));for(_=e-1;_>=0;_--)for(g=0;g<=o;g++){for(m=0,v=0;v<=Math.min(_,o);v++)m+=r.get(g,v)*i.get(v,_);r.set(g,_,m)}}}function Re(e,t,n,r){let i,a;return Math.abs(n)>Math.abs(r)?(i=r/n,a=n+i*r,[(e+i*t)/a,(t-i*e)/a]):(i=n/r,a=r+i*n,[(i*e+t)/a,(i*t-e)/a])}class ze{constructor(e){if(e=ve.checkMatrix(e),!e.isSymmetric())throw Error(`Matrix is not symmetric`);let t=e,n=t.rows,r=new F(n,n),i=!0,a,o,s;for(o=0;o<n;o++){let e=0;for(s=0;s<o;s++){let n=0;for(a=0;a<s;a++)n+=r.get(s,a)*r.get(o,a);n=(t.get(o,s)-n)/r.get(s,s),r.set(o,s,n),e+=n*n}for(e=t.get(o,o)-e,i&&=e>0,r.set(o,o,Math.sqrt(Math.max(e,0))),s=o+1;s<n;s++)r.set(o,s,0)}this.L=r,this.positiveDefinite=i}isPositiveDefinite(){return this.positiveDefinite}solve(e){e=ve.checkMatrix(e);let t=this.L,n=t.rows;if(e.rows!==n)throw Error(`Matrix dimensions do not match`);if(this.isPositiveDefinite()===!1)throw Error(`Matrix is not positive definite`);let r=e.columns,i=e.clone(),a,o,s;for(s=0;s<n;s++)for(o=0;o<r;o++){for(a=0;a<s;a++)i.set(s,o,i.get(s,o)-i.get(a,o)*t.get(s,a));i.set(s,o,i.get(s,o)/t.get(s,s))}for(s=n-1;s>=0;s--)for(o=0;o<r;o++){for(a=s+1;a<n;a++)i.set(s,o,i.get(s,o)-i.get(a,o)*t.get(a,s));i.set(s,o,i.get(s,o)/t.get(s,s))}return i}get lowerTriangularMatrix(){return this.L}}class Be{constructor(t,n={}){t=ve.checkMatrix(t);let{Y:r}=n,{scaleScores:i=!1,maxIterations:a=1e3,terminationCriteria:o=1e-10}=n,s;if(r){if(r=e.isAnyArray(r)&&typeof r[0]==`number`?F.columnVector(r):ve.checkMatrix(r),r.rows!==t.rows)throw Error(`Y should have the same number of rows as X`);s=r.getColumnVector(0)}else s=t.getColumnVector(0);let c=1,l,u,d,f;for(let e=0;e<a&&c>o;e++)d=t.transpose().mmul(s).div(s.transpose().mmul(s).get(0,0)),d=d.div(d.norm()),l=t.mmul(d).div(d.transpose().mmul(d).get(0,0)),e>0&&(c=l.clone().sub(f).pow(2).sum()),f=l.clone(),r?(u=r.transpose().mmul(l).div(l.transpose().mmul(l).get(0,0)),u=u.div(u.norm()),s=r.mmul(u).div(u.transpose().mmul(u).get(0,0))):s=l;if(r){let e=t.transpose().mmul(l).div(l.transpose().mmul(l).get(0,0));e=e.div(e.norm());let n=t.clone().sub(l.clone().mmul(e.transpose())),i=s.transpose().mmul(l).div(l.transpose().mmul(l).get(0,0)),a=r.clone().sub(l.clone().mulS(i.get(0,0)).mmul(u.transpose()));this.t=l,this.p=e.transpose(),this.w=d.transpose(),this.q=u,this.u=s,this.s=l.transpose().mmul(l),this.xResidual=n,this.yResidual=a,this.betas=i}else this.w=d.transpose(),this.s=l.transpose().mmul(l).sqrt(),i?this.t=l.clone().div(this.s.get(0,0)):this.t=l,this.xResidual=t.sub(l.mmul(d.transpose()))}}return eJ.AbstractMatrix=N,eJ.CHO=ze,eJ.CholeskyDecomposition=ze,eJ.DistanceMatrix=se,eJ.EVD=Ne,eJ.EigenvalueDecomposition=Ne,eJ.LU=be,eJ.LuDecomposition=be,eJ.Matrix=F,eJ.MatrixColumnSelectionView=ue,eJ.MatrixColumnView=le,eJ.MatrixFlipColumnView=de,eJ.MatrixFlipRowView=fe,eJ.MatrixRowSelectionView=me,eJ.MatrixRowView=pe,eJ.MatrixSelectionView=I,eJ.MatrixSubView=he,eJ.MatrixTransposeView=ge,eJ.NIPALS=Be,eJ.Nipals=Be,eJ.QR=Se,eJ.QrDecomposition=Se,eJ.SVD=Ce,eJ.SingularValueDecomposition=Ce,eJ.SymmetricMatrix=oe,eJ.WrapperMatrix1D=_e,eJ.WrapperMatrix2D=ve,eJ.correlation=Me,eJ.covariance=je,eJ.default=F,eJ.determinant=Ee,eJ.inverse=we,eJ.linearDependencies=ke,eJ.pseudoInverse=Ae,eJ.solve=Te,eJ.wrap=ye,eJ}var fJ=dJ(),pJ=qA(fJ),mJ=fJ.Matrix,hJ=fJ.SingularValueDecomposition;pJ.Matrix?pJ.Matrix:fJ.Matrix;var gJ=(e,t)=>{let n=e.nodeCount(),r=Array.from({length:n},()=>[]),i={},a=0;return e.forEachNode(e=>{i[e.id]=a++}),e.forEachEdge(e=>{let n=i[e.source],a=i[e.target];n==null||a==null||(r[n].push(a),t||r[a].push(n))}),r},_J=(e,t)=>{let n=e.length,r=Array(n);for(let i=0;i<n;i++){let n=e[i],a=n.length,o=Array(a);for(let e=0;e<a;e++)o[e]=n[e]*t;r[i]=o}return r};function vJ(e){let t=e.length;Array(t).fill(0);let n=Array.from({length:t},()=>Array(t).fill(1/0));for(let r=0;r<t;r++)n[r]=yJ(e,r);return n}function yJ(e,t){let n=e.length,r=Array(n).fill(1/0);r[t]=0;let i=new bJ;for(i.push([0,t]);!i.empty();){let[t,n]=i.pop();if(t!==r[n])continue;let a=e[n];for(let e=0;e<a.length;e++){let n=a[e],o=t+1;o<r[n]&&(r[n]=o,i.push([o,n]))}}return r}var bJ=class{constructor(){this.data=[]}push(e){this.data.push(e),this.bubbleUp(this.data.length-1)}pop(){let e=this.data[0],t=this.data.pop();return this.data.length>0&&(this.data[0]=t,this.bubbleDown(0)),e}empty(){return this.data.length===0}bubbleUp(e){let t=this.data;for(;e>0;){let n=e-1>>1;if(t[n][0]<=t[e][0])break;[t[n],t[e]]=[t[e],t[n]],e=n}}bubbleDown(e){let t=this.data,n=t.length;for(;;){let r=e*2+1,i=e*2+2,a=e;if(r<n&&t[r][0]<t[a][0]&&(a=r),i<n&&t[i][0]<t[a][0]&&(a=i),a===e)break;[t[e],t[a]]=[t[a],t[e]],e=a}}},xJ={center:[0,0],linkDistance:50},SJ=class extends tT{constructor(){super(...arguments),this.id=`mds`}getDefaultOptions(){return xJ}layout(){return RC(this,void 0,void 0,function*(){let{linkDistance:e=xJ.linkDistance}=this.options,{center:t}=WD(this.options),n=this.model.nodeCount();if(n===0||n===1){RD(this.model,t);return}let r=vJ(gJ(this.model,!1));CJ(r);let i=wJ(_J(r,e)),a=0;this.model.forEachNode(e=>{let n=i[a++];e.x=n[0]+t[0],e.y=n[1]+t[1]})})}},CJ=e=>{let t=-1/0,n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i],a=r.length;for(let e=0;e<a;e++){let a=r[e];a===1/0?n.push([i,e]):t<a&&(t=a)}}for(let r=0;r<n.length;r++){let[i,a]=n[r];e[i][a]=t}},wJ=(e,t=2,n=xJ.linkDistance)=>{try{let n=e.length,r=new mJ(n,n);for(let t=0;t<n;t++)for(let i=0;i<n;i++){let n=e[t][i];r.set(t,i,-.5*n*n)}let i=r.mean(`row`),a=r.mean(`column`),o=r.mean();r.add(o).subRowVector(i).subColumnVector(a);let s=new hJ(r),c=mJ.sqrt(s.diagonalMatrix).diagonal(),l=s.leftSingularVectors,u=c,d=[];for(let e=0;e<l.rows;e++){let n=[];for(let r=0;r<t;r++)n.push(l.get(e,r)*u[r]);d.push(n)}return d}catch{let t=[];for(let r=0;r<e.length;r++){let e=Math.random()*n,r=Math.random()*n;t.push([e,r])}return t}},TJ=800,EJ={maxIteration:10,width:10,speed:100,gravity:10,k:5},DJ=(e,t)=>{let{maxIteration:n,width:r,k:i,speed:a=EJ.speed,strictRadial:o,focusNode:s,radiiMap:c,nodeSizeFunc:l}=Object.assign(Object.assign({},EJ),t),u=i*.002,d=new Map,f=r/10;for(let t=0;t<n&&(e.forEachNode(e=>{d.set(e.id,{x:0,y:0})}),OJ(e,d,i,c,l),!(kJ(e,d,a,o,s,f,c)<u));t++);},OJ=(e,t,n,r,i)=>{let a=0;e.forEachNode(o=>{let s=0;e.forEachNode(e=>{if(s<=a){s++;return}if(o.id===e.id||r.get(o.id)!==r.get(e.id))return;let c=o.x-e.x,l=o.y-e.y,u=Math.sqrt(c*c+l*l);if(u===0){u=1;let e=a>s?1:-1;c=.01*e,l=.01*e}let d=Math.max(...i(o._original)),f=Math.max(...i(e._original));if(u<f/2+d/2){let r=n*n/u,i=t.get(o.id),a=t.get(e.id),s=c/u*r,d=l/u*r;t.set(o.id,{x:i.x+s,y:i.y+d}),t.set(e.id,{x:a.x-s,y:a.y-d})}s++}),a++})},kJ=(e,t,n,r,i,a,o)=>{r&&e.forEachNode(e=>{let n=e.x-i.x,r=e.y-i.y,a=Math.sqrt(n*n+r*r),o=r/a,s=-n/a,c=t.get(e.id),l=Math.sqrt(c.x*c.x+c.y*c.y),u=Math.acos((o*c.x+s*c.y)/l);u>Math.PI/2&&(u-=Math.PI/2,o*=-1,s*=-1);let d=Math.cos(u)*l;t.set(e.id,{x:o*d,y:s*d})});let s=0,c=0;return e.forEachNode(e=>{if(e.id===i.id)return;let l=t.get(e.id),u=Math.sqrt(l.x*l.x+l.y*l.y);if(u>0){let t=Math.min(n/TJ*a,u);if(e.x+=l.x/u*t,e.y+=l.y/u*t,r){let t=e.x-i.x,n=e.y-i.y,r=Math.sqrt(t*t+n*n);t=t/r*o.get(e.id),n=n/r*o.get(e.id),e.x=i.x+t,e.y=i.y+n}s+=t,c++}}),c>0?s/c:0},AJ={focusNode:null,linkDistance:50,maxIteration:1e3,maxPreventOverlapIteration:200,preventOverlap:!1,sortStrength:10,strictRadial:!0,unitRadius:null,nodeSize:10,nodeSpacing:0},jJ=class extends tT{constructor(){super(...arguments),this.id=`radial`}getDefaultOptions(){return AJ}layout(){return RC(this,void 0,void 0,function*(){let{width:e,height:t,center:n}=WD(this.options),r=this.model.nodeCount();if(!r||r===1)return RD(this.model,n);let{focusNode:i,linkDistance:a=AJ.linkDistance,maxIteration:o=AJ.maxIteration,maxPreventOverlapIteration:s=AJ.maxPreventOverlapIteration,nodeSize:c,nodeSpacing:l,preventOverlap:u,sortBy:d,sortStrength:f=AJ.sortStrength,strictRadial:p,unitRadius:m}=this.options,h=i&&this.model.node(i)||this.model.firstNode(),g=this.model.nodeIndexOf(h.id),_=vJ(gJ(this.model,!1));PJ(_,g,FJ(_,g)+1);let v=_[g],y=(e-n[0]>n[0]?n[0]:e-n[0])||e/2,b=(t-n[1]>n[1]?n[1]:t-n[1])||t/2,x=Math.min(y,b),S=Math.max(...v),C=[],w=new Map,T=m??x/S;v.forEach((e,t)=>{let n=e*T;C.push(n),w.set(this.model.nodeAt(t).id,n)});let E=MJ(this.model,_,a,C,T,d,f),D=wJ(E,2,a),O=D[g],k=0;if(this.model.forEachNode(e=>{let t=D[k];e.x=t[0]-O[0],e.y=t[1]-O[1],k++}),this.run(o,E,C,g),this.model.forEachNode(e=>{e.x+=n[0],e.y+=n[1]}),u){let t={nodeSizeFunc:_w(c,l,AJ.nodeSize,AJ.nodeSpacing),radiiMap:w,width:e,strictRadial:!!p,focusNode:h,maxIteration:s,k:r/4.5};DJ(this.model,t)}})}run(e,t,n,r){let i=NJ(t),a=this.model.nodeCount(),o=this.model.nodes(),s=new Float64Array(a),c=new Float64Array(a);for(let e=0;e<a;e++)s[e]=o[e].x,c[e]=o[e].y;for(let l=0;l<=e;l++){let u=l/e,d=1-u;for(let e=0;e<a;e++){if(e===r)continue;let l=s[e],f=c[e],p=Math.sqrt(l*l+f*f),m=p===0?0:1/p,h=0,g=0,_=0;for(let n=0;n<a;n++){if(e===n)continue;let r=s[n],a=c[n],o=Math.sqrt((l-r)*(l-r)+(f-a)*(f-a)),u=o===0?0:1/o,d=t[n][e];_+=i[e][n],h+=i[e][n]*(r+d*(l-r)*u),g+=i[e][n]*(a+d*(f-a)*u)}let v=n[e]===0?0:1/n[e];_*=d,_+=u*v*v,h*=d,h+=u*v*l*m,g*=d,g+=u*v*f*m,s[e]=h/_,c[e]=g/_,o[e].x=s[e],o[e].y=c[e]}}}},MJ=(e,t,n,r,i,a,o)=>{let s=t.length,c=Array(s),l=Array(s);for(let e=0;e<s;e++)l[e]=r[e]/i;let u=(n+i)/2,d=new Map,f=!a||a===`data`?null:mw(a,[`node`]),p=a===`data`;for(let i=0;i<s;i++){let a=t[i],m=Array(s);c[i]=m;let h=l[i]||1;for(let t=0;t<s;t++){if(i===t){m[t]=0;continue}let s=a[t];if(r[i]===r[t])if(p)m[t]=s*Math.abs(i-t)*o/h;else if(f){let n=e.nodeAt(i),r=e.nodeAt(t),a=d.get(n.id);if(a===void 0){let e=f(n._original)||0;a=typeof e==`string`?e.charCodeAt(0):Number(e||0),d.set(n.id,a)}let c=d.get(r.id);if(c===void 0){let e=f(r._original)||0;c=typeof e==`string`?e.charCodeAt(0):Number(e||0),d.set(r.id,c)}m[t]=s*Math.abs(a-c)*o/h}else m[t]=s*n/h;else m[t]=s*u}}return c},NJ=e=>{let t=e.length,n=e[0].length,r=[];for(let i=0;i<t;i++){let t=[];for(let r=0;r<n;r++)e[i][r]===0?t.push(0):t.push(1/(e[i][r]*e[i][r]));r.push(t)}return r},PJ=(e,t,n)=>{let r=e.length;for(let i=0;i<r;i++)if(e[t][i]===1/0){e[t][i]=n,e[i][t]=n;for(let a=0;a<r;a++)e[i][a]!==1/0&&e[t][a]===1/0&&(e[t][a]=n+e[i][a],e[a][t]=n+e[i][a])}for(let n=0;n<r;n++)if(n!==t){for(let i=0;i<r;i++)if(e[n][i]===1/0){let r=Math.abs(e[t][n]-e[t][i]);r=r===0?1:r,e[n][i]=r}}},FJ=(e,t)=>{let n=e[t],r=0;for(let e=0;e<n.length;e++)n[e]!==1/0&&(r=Math.max(r,n[e]));return r},IJ=class extends tT{constructor(){super(...arguments),this.id=`random`}getDefaultOptions(){return{center:[0,0],width:300,height:300}}layout(){return RC(this,void 0,void 0,function*(){let{width:e,height:t,center:n}=WD(this.options);this.model.forEachNode(r=>{r.x=RJ(e)+n[0],r.y=RJ(t)+n[1]})})}},LJ=.9,RJ=e=>(Math.random()-.5)*LJ*e,zJ={"antv-dagre":ID,"d3-force-3d":GA,"d3-force":wk,"force-atlas2":Vq,circular:KD,concentric:JD,dagre:cq,force:Fq,fruchterman:Gq,grid:qq,mds:SJ,radial:jJ,random:IJ},BJ={layout:e=>e?{type:`concentric`,preventOverlap:!0}:{type:`force`,preventOverlap:!0},nodeSize:20,nodeSpacing:0,comboPadding:10,comboSpacing:0},VJ=`root`,HJ=class extends tT{constructor(){super(...arguments),this.id=`combo-combined`,this.relativePositions=new Map,this.getParentId=e=>e.parentId||VJ}getDefaultOptions(){return BJ}layout(){return RC(this,void 0,void 0,function*(){let{center:e}=WD(this.options);this.resetLayoutState();let t=this.buildHierarchyTree();yield this.layoutHierarchy(t),this.convertToGlobalPositions(t,e),this.applyPositionsToModel(t)})}isCombo(e){return!!e.isCombo}resetLayoutState(){this.relativePositions.clear()}layoutHierarchy(e){return RC(this,void 0,void 0,function*(){for(let t of e.children||[])this.isCombo(t)&&(yield this.layoutHierarchy(t));let t=e.children||[];if(t.length===0){e.size=[0,0,0],e.parentId=e.id===VJ?null:e.parentId;return}let n=this.getLayoutConfig(e),{type:r}=n,i=LC(n,[`type`]),a=new(this.getLayoutClass(r))(i);yield UJ(a,this.createTemporaryGraphData(t),{});let o=a.model.nodes();this.recordRelativePositions(o,e);let{center:s,width:c,height:l}=this.calculateComboBounds(e);e.size=[c,l,0],(e.children||[]).forEach(e=>{let t=this.relativePositions.get(e.id);if(!t)return;let n=Object.assign(Object.assign({},t),{x:t.x-s[0],y:t.y-s[1]});this.relativePositions.set(e.id,n)})})}recordRelativePositions(e,t){let n=this.calculateComboCenter(e);e.forEach(e=>{this.relativePositions.set(e.id,{x:e.x-n[0],y:e.y-n[1],relativeTo:String(t.id)})})}buildHierarchyTree(){let e={id:VJ,isCombo:!0,children:[],parentId:null},t=new Map;return t.set(VJ,e),this.model.forEachNode(e=>{if(this.isCombo(e)){let n=Object.assign(Object.assign({},e),{children:[],parentId:this.getParentId(e)});t.set(String(e.id),n)}}),this.model.forEachNode(e=>{let n=t.get(this.getParentId(e));if(this.isCombo(e)){let r=t.get(String(e.id));n&&r&&(n.children.push(r),r.parentId=n.id)}else n&&n.children.push(Object.assign(Object.assign({},e),{children:[],parentId:this.getParentId(e)}))}),e}convertToGlobalPositions(e,t){let n=e.id===VJ?null:this.relativePositions.get(e.id),r=t[0]+(n?.x??0),i=t[1]+(n?.y??0);e.x=r,e.y=i,(e.children||[]).forEach(e=>{let t=this.relativePositions.get(e.id);e.x=r+(t?.x??0),e.y=i+(t?.y??0),e.size=this.getNodeLikeSize(e,!1),this.isCombo(e)&&this.convertToGlobalPositions(e,[r,i])})}getLayoutConfig(e){let t=typeof this.options.layout==`object`?this.options.layout:mw(this.options.layout,[`comboId`]);if(typeof t==`function`){let n=e.id===VJ?null:e.id;return this.normalizeLayoutConfig(t(n))}return this.normalizeLayoutConfig(t)}normalizeLayoutConfig(e){let t=Object.assign(Object.assign({type:`concentric`},WD(this.options)),{nodeSize:`node.size`,nodeSpacing:0});return e?typeof e==`string`?Object.assign(Object.assign({},t),{type:e}):Object.assign(Object.assign({},t),e):t}getLayoutClass(e){return zJ[e]||zJ.concentric}createTemporaryGraphData(e){let t=e.map(e=>Object.assign(Object.assign({},e),{size:this.getNodeLikeSize(e)})),n=new Set(e.map(e=>String(e.id))),r=[],i=e=>{let t=String(e),r=new Set;for(;t&&!r.has(t);){if(n.has(t))return t;r.add(t);let e=this.model.node(t)?.parentId;t=e==null?null:String(e)}return null};return this.model.forEachEdge(e=>{let t=i(String(e.source)),n=i(String(e.target));!t||!n||t!==n&&r.push({source:t,target:n})}),{nodes:t,edges:r}}calculateComboCenter(e){if(e.length===0)return[0,0];let t=new Map;e.forEach(e=>{let n=this.getNodeLikeSize(e);t.set(e.id,n)});let n=1/0,r=1/0,i=-1/0,a=-1/0;return e.forEach(e=>{let[o=0,s=0]=t.get(e.id);n=Math.min(n,e.x-o/2),r=Math.min(r,e.y-s/2),i=Math.max(i,e.x+o/2),a=Math.max(a,e.y+s/2)}),!Number.isFinite(n)||!Number.isFinite(r)?[0,0]:[(n+i)/2,(r+a)/2]}calculateComboBounds(e){let t=e.children||[];if(t.length===0)return{center:[0,0],width:0,height:0};let n=1/0,r=1/0,i=-1/0,a=-1/0;if(t.forEach(e=>{let t=this.relativePositions.get(e.id),o=t?.x??0,s=t?.y??0,[c,l]=this.getNodeLikeSize(e);n=Math.min(n,o-c/2),r=Math.min(r,s-l/2),i=Math.max(i,o+c/2),a=Math.max(a,s+l/2)}),!Number.isFinite(n)||!Number.isFinite(r))return{center:[0,0],width:0,height:0};let o=hw(this.options.comboPadding,20,`combo`)(e._original);return{center:[(n+i)/2,(r+a)/2],width:i-n+o*2,height:a-r+o*2}}getNodeLikeSize(e,t=!0){return this.isCombo(e)?this.getComboSize(e,t):this.getNodeSize(e,t)}getNodeSize(e,t=!0){let{nodeSize:n,nodeSpacing:r}=this.options;return _w(n,t?r:0)(e._original)}getComboSize(e,t=!0){let n=hw(this.options.comboSpacing,0,`combo`),r=t?n(e._original):0,[i,a]=e.size;return[i+r/2,a+r/2,0]}applyPositionsToModel(e){let t=e=>{let t=this.model.node(e.id);t&&(t.x=e.x,t.y=e.y,e.size&&(t.size=e.size))},n=e=>{e.id!==VJ&&t(e),(e.children||[]).forEach(e=>{this.isCombo(e)?n(e):t(e)})};n(e)}};function UJ(e,t,n={}){return RC(this,void 0,void 0,function*(){return rT(e)?(e.execute(t,n),e.stop(),e.tick(n.iterations??300)):yield e.execute(t,n)})}var WJ=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},GJ=class e extends ES{constructor(){super(...arguments),this.id=`fishbone`}getRoot(){let e=this.context.model.getRootsData();if(!(Kn(e)||e.length>2))return e[0]}formatSize(e){let t=typeof e==`function`?e:()=>e;return e=>sv(t(e))}doLayout(e,t){let{hGap:n,getRibSep:r,vGap:i,nodeSize:a,height:o}=t,{model:s}=this.context,c=this.formatSize(a),l=c(e)[0]+r(e),u=(e,t=0)=>{var r;return t+=n*((e.children||[]).length+1),(r=e.children)==null||r.forEach(e=>{var n;(n=s.getNodeLikeDatum(e).children)==null||n.forEach(e=>{t=u(s.getNodeLikeDatum(e),t)})}),t},d=e=>{if(e.depth===1)return l;let t=s.getParentData(e.id,`tree`);if(JJ(e)){let r=s.getParentData(t.id,`tree`),a=m(e)-m(r);return d(t)+a*n/i}else{let n=(t.children||[]).indexOf(e.id),r=s.getNodeData((t.children||[]).slice(n));return f(t)-r.reduce((e,t)=>e+u(t),0)-c(t)[0]/2}},f=Bn(e=>{if(qJ(e))return c(e)[0]/2;let t=s.getParentData(e.id,`tree`);if(JJ(e))return d(e)+u(e)+c(e)[0]/2;{let r=m(e)-m(t),a=n/i;return d(e)+r*a}},e=>e.id),p=e=>m(s.getParentData(e,`tree`)),m=Bn(e=>{if(qJ(e))return o/2;if(JJ(e)){let t=s.getParentData(e.id,`tree`),n=t.children.indexOf(e.id);if(n===0)return p(t.id)+i;let r=s.getNodeLikeDatum(t.children[n-1]);if(Kn(r.children))return m(r)+i;let a=s.getDescendantsData(r.id);return Math.max(...a.map(e=>JJ(e)?p(e.id):m(e)))+i}else{if(Kn(e.children))return p(e.id)+i;let t=s.getNodeLikeDatum(e.children.slice(-1)[0]);if(Kn(t.children))return m(t)+i;let n=s.getDescendantsData(e.id).slice(-1)[0];return(JJ(n)?p(n.id):m(n))+i}},e=>e.id),h=0,g={nodes:[],edges:[]},_=e=>{var t;(t=e.children)==null||t.forEach(e=>_(s.getNodeLikeDatum(e)));let n=m(e),i=f(e);if(g.nodes.push({id:e.id,x:i,y:n}),qJ(e))return;let a=s.getRelatedEdgesData(e.id,`in`)[0],o=[d(e),JJ(e)?n:p(e.id)];g.edges.push({id:Q(a),controlPoints:[o],relatedNodeId:e.id}),h=Math.max(h,i+r(e)),e.depth===1&&(l=h)};return _(e),g}placeAlterative(e,t){let n=(t.children||[]).filter((e,t)=>t%2!=0);if(n.length===0)return e;let{model:r}=this.context,i=e.nodes.find(e=>e.id===t.id).y,a=e=>{let t=r.getAncestorsData(e,`tree`);if(Kn(t))return!1;let i=t.length===1?e:t[t.length-2].id;return n.includes(i)};e.nodes.forEach(e=>{a(e.id)&&(e.y=2*i-e.y)}),e.edges.forEach(e=>{a(e.relatedNodeId)&&(e.controlPoints=e.controlPoints.map(e=>[e[0],2*i-e[1]]))})}rightToLeft(e,t){return e.nodes.forEach(e=>e.x=t.width-e.x),e.edges.forEach(e=>{e.controlPoints=e.controlPoints.map(e=>[t.width-e[0],e[1]])}),e}execute(t,n){return WJ(this,void 0,void 0,function*(){let r=Object.assign(Object.assign(Object.assign({},e.defaultOptions),this.options),n),{direction:i,nodeSize:a}=r,o=this.getRoot();if(!o)return t;let s=this.formatSize(a);r.vGap||=Math.max(...(t.nodes||[]).map(e=>s(e)[1])),r.hGap||=Math.max(...(t.nodes||[]).map(e=>s(e)[0]));let c=this.doLayout(o,r);this.placeAlterative(c,o),i===`RL`&&(c=this.rightToLeft(c,r));let{model:l}=this.context,u=[],d=[];return c.nodes.forEach(e=>{let{id:t,x:n,y:r}=e,i=l.getNodeLikeDatum(t);u.push(KJ(i,{x:n,y:r}))}),c.edges.forEach(e=>{let{id:t,controlPoints:n}=e,r=l.getEdgeDatum(t);d.push(KJ(r,{controlPoints:n}))}),{nodes:u,edges:d}})}};GJ.defaultOptions={direction:`RL`,getRibSep:()=>60};var KJ=(e,t)=>Object.assign(Object.assign({},e),{style:Object.assign(Object.assign({},e.style||{}),t)}),qJ=e=>e.depth===0,JJ=e=>(e.depth||=0)%2==0,YJ=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},XJ=class e extends ES{constructor(){super(...arguments),this.id=`snake`}formatSize(e,t){let n=typeof t==`function`?t:(()=>t);return e.reduce((e,t)=>{let[r,i]=sv(n(t))||[0,0];return[Math.max(e[0],r),Math.max(e[1],i)]},[0,0])}validate(e){let{nodes:t=[],edges:n=[]}=e,r={},i={},a={};t.forEach(e=>{r[e.id]=0,i[e.id]=0,a[e.id]=[]}),n.forEach(e=>{r[e.target]++,i[e.source]++,a[e.source].push(e.target)});let o=new Set,s=e=>{o.has(e)||(o.add(e),a[e].forEach(s))};if(s(t[0].id),o.size!==t.length)return!1;let c=t.filter(e=>r[e.id]===0),l=t.filter(e=>i[e.id]===0);return!(c.length!==1||l.length!==1||t.filter(e=>r[e.id]===1&&i[e.id]===1).length!==t.length-2)}execute(t,n){return YJ(this,void 0,void 0,function*(){if(!this.validate(t))return t;let{nodeSize:r,padding:i,sortBy:a,cols:o,colGap:s,rowGap:c,clockwise:l,width:u,height:d}=Object.assign({},e.defaultOptions,this.options,n),[f,p,m,h]=Mh(i),g=this.formatSize(t.nodes||[],r),_=Math.ceil((t.nodes||[]).length/o),v=s||(u-h-p-o*g[0])/(o-1),y=c||(d-f-m-_*g[1])/(_-1);return(y===1/0||y<0)&&(y=0),(v===1/0||v<0)&&(v=0),{nodes:((a?t.nodes?.sort(a):ZJ(t))||[]).map((e,t)=>{let n=Math.floor(t/o),r=t%o,i=h+(l?n%2==0?r:o-1-r:n%2==0?o-1-r:r)*(g[0]+v)+g[0]/2,a=f+n*(g[1]+y)+g[1]/2;return{id:e.id,style:{x:i,y:a}}})}})}};XJ.defaultOptions={padding:0,cols:5,clockwise:!0};function ZJ(e){let{nodes:t=[],edges:n=[]}=e,r={},i={};t.forEach(e=>{r[e.id]=0,i[e.id]=[]}),n.forEach(e=>{r[e.target]++,i[e.source].push(e.target)});let a=[],o=[];for(t.forEach(e=>{r[e.id]===0&&a.push(e.id)});a.length>0;){let e=a.shift(),n=t.find(t=>t.id===e);o.push(n),i[e].forEach(e=>{r[e]--,r[e]===0&&a.push(e)})}return o}var QJ=[`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)`],$J=[`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)`],eY=[`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)`],tY=[`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)`],nY=[`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)`],rY=class extends Ug{};function iY(e,t=!0,n){let r=document.createElement(`div`);return r.setAttribute(`class`,`g6-${e}`),Object.assign(r.style,{position:`absolute`,display:`block`}),t&&Object.assign(r.style,{position:`unset`,gridArea:`1 / 1 / 2 / 2`,inset:`0px`,height:`100%`,width:`100%`,overflow:`hidden`,pointerEvents:`none`}),n&&Object.assign(r.style,n),r}function aY(e,t=`div`,n={},r=``,i=document.body){let a=document.getElementById(e);a&&a.remove();let o=document.createElement(t);return o.innerHTML=r,o.id=e,Object.assign(o.style,n),i.appendChild(o),o}var oY=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},sY=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$element=iY(`background`),this.context.canvas.getContainer().prepend(this.$element),this.update(n)}update(e){let t=Object.create(null,{update:{get:()=>super.update}});return oY(this,void 0,void 0,function*(){t.update.call(this,e),Object.assign(this.$element.style,Qn(this.options,[`key`,`type`]))})}destroy(){super.destroy(),this.$element.remove()}};sY.defaultOptions={transition:`background 0.5s`,backgroundSize:`cover`,zIndex:`-1`};function cY(e,t,n,r,i,a){let o=e,s=t,c=n-o,l=r-s,u=i-o,d=a-s,f=u*c+d*l,p=0;f<=0?p=0:(u=c-u,d=l-d,f=u*c+d*l,p=f<=0?0:f*f/(c*c+l*l));let m=u*u+d*d-p;return m<0?0:m}function lY(e,t,n,r){return(e-n)*(e-n)+(t-r)*(t-r)}function uY(e,t,n,r,i){return lY(e,t,n,r)<i*i}function dY(e){if(!Number.isFinite(e))return e=>e;if(e===0)return Math.round;let t=10**e;return e=>Math.round(e*t)/t}function fY(e){let t=Math.min(e.x1,e.x2),n=Math.max(e.x1,e.x2),r=Math.min(e.y1,e.y2),i=Math.max(e.y1,e.y2);return{x:t,y:r,x2:n,y2:i,width:n-t,height:i-r}}var pY=class e{constructor(e,t,n,r){this.x1=e,this.y1=t,this.x2=n,this.y2=r}equals(e){return this.x1===e.x1&&this.y1===e.y1&&this.x2===e.x2&&this.y2===e.y2}draw(e){e.moveTo(this.x1,this.y1),e.lineTo(this.x2,this.y2)}toString(){return`Line(from=(${this.x1},${this.y1}),to=(${this.x2},${this.y2}))`}static from(t){return new e(t.x1,t.y1,t.x2,t.y2)}cuts(e,t){return this.y1===this.y2||t<this.y1&&t<=this.y2||t>this.y1&&t>=this.y2||e>this.x1&&e>=this.x2?!1:e<this.x1&&e<=this.x2?!0:e<=this.x1+(t-this.y1)*(this.x2-this.x1)/(this.y2-this.y1)}distSquare(e,t){return cY(this.x1,this.y1,this.x2,this.y2,e,t)}ptClose(e,t,n){if(this.x1<this.x2){if(e<this.x1-n||e>this.x2+n)return!1}else if(e<this.x2-n||e>this.x1+n)return!1;if(this.y1<this.y2){if(t<this.y1-n||t>this.y2+n)return!1}else if(t<this.y2-n||t>this.y1+n)return!1;return!0}},mY;(function(e){e[e.POINT=1]=`POINT`,e[e.PARALLEL=2]=`PARALLEL`,e[e.COINCIDENT=3]=`COINCIDENT`,e[e.NONE=4]=`NONE`})(mY||={});var hY=class{constructor(e,t=0,n=0){this.state=e,this.x=t,this.y=n}};function gY(e,t){let n=(t.x2-t.x1)*(e.y1-t.y1)-(t.y2-t.y1)*(e.x1-t.x1),r=(e.x2-e.x1)*(e.y1-t.y1)-(e.y2-e.y1)*(e.x1-t.x1),i=(t.y2-t.y1)*(e.x2-e.x1)-(t.x2-t.x1)*(e.y2-e.y1);if(i){let t=n/i,a=r/i;return 0<=t&&t<=1&&0<=a&&a<=1?new hY(mY.POINT,e.x1+t*(e.x2-e.x1),e.y1+t*(e.y2-e.y1)):new hY(mY.NONE)}return new hY(n===0||r===0?mY.COINCIDENT:mY.PARALLEL)}function _Y(e,t){let n=(t.x2-t.x1)*(e.y1-t.y1)-(t.y2-t.y1)*(e.x1-t.x1),r=(e.x2-e.x1)*(e.y1-t.y1)-(e.y2-e.y1)*(e.x1-t.x1),i=(t.y2-t.y1)*(e.x2-e.x1)-(t.x2-t.x1)*(e.y2-e.y1);if(i){let e=n/i,t=r/i;if(0<=e&&e<=1&&0<=t&&t<=1)return e}return 1/0}function vY(e,t){function n(e,n,r,i){let a=_Y(t,new pY(e,n,r,i));return a=Math.abs(a-.5),+(a>=0&&a<=1)}let r=n(e.x,e.y,e.x2,e.y);return r+=n(e.x,e.y,e.x,e.y2),r>1||(r+=n(e.x,e.y2,e.x2,e.y2),r>1)?!0:(r+=n(e.x2,e.y,e.x2,e.y2),r>0)}var yY;(function(e){e[e.LEFT=0]=`LEFT`,e[e.TOP=1]=`TOP`,e[e.RIGHT=2]=`RIGHT`,e[e.BOTTOM=3]=`BOTTOM`})(yY||={});function bY(e,t,n){let r=new Set;return e.width<=0?(r.add(yY.LEFT),r.add(yY.RIGHT)):t<e.x?r.add(yY.LEFT):t>e.x+e.width&&r.add(yY.RIGHT),e.height<=0?(r.add(yY.TOP),r.add(yY.BOTTOM)):n<e.y?r.add(yY.TOP):n>e.y+e.height&&r.add(yY.BOTTOM),r}function xY(e,t){let n=t.x1,r=t.y1,i=t.x2,a=t.y2,o=Array.from(bY(e,i,a));if(o.length===0)return!0;let s=bY(e,n,r);for(;s.size!==0;){for(let e of o)if(s.has(e))return!1;if(s.has(yY.RIGHT)||s.has(yY.LEFT)){let t=e.x;s.has(yY.RIGHT)&&(t+=e.width),r+=(t-n)*(a-r)/(i-n),n=t}else{let t=e.y;s.has(yY.BOTTOM)&&(t+=e.height),n+=(t-r)*(i-n)/(a-r),r=t}s=bY(e,n,r)}return!0}function SY(e,t){let n=1/0,r=0;function i(e,i,a,o){let s=_Y(t,new pY(e,i,a,o));s=Math.abs(s-.5),s>=0&&s<=1&&(r++,s<n&&(n=s))}return i(e.x,e.y,e.x2,e.y),i(e.x,e.y,e.x,e.y2),r>1||(i(e.x,e.y2,e.x2,e.y2),r>1)?n:(i(e.x2,e.y,e.x2,e.y2),r===0?-1:n)}function CY(e,t){let n=0,r=gY(e,new pY(t.x,t.y,t.x2,t.y));n+=+(r.state===mY.POINT);let i=gY(e,new pY(t.x,t.y,t.x,t.y2));n+=+(i.state===mY.POINT);let a=gY(e,new pY(t.x,t.y2,t.x2,t.y2));n+=+(a.state===mY.POINT);let o=gY(e,new pY(t.x2,t.y,t.x2,t.y2));return n+=+(o.state===mY.POINT),{top:r,left:i,bottom:a,right:o,count:n}}var wY=class e{constructor(e,t,n,r){this.x=e,this.y=t,this.width=n,this.height=r}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 e(t.x,t.y,t.width,t.height)}equals(e){return this.x===e.x&&this.y===e.y&&this.width===e.width&&this.height===e.height}clone(){return new e(this.x,this.y,this.width,this.height)}add(e){let t=Math.min(this.x,e.x),n=Math.min(this.y,e.y),r=Math.max(this.x2,e.x+e.width),i=Math.max(this.y2,e.y+e.height);this.x=t,this.y=n,this.width=r-t,this.height=i-n}addPoint(e){let t=Math.min(this.x,e.x),n=Math.min(this.y,e.y),r=Math.max(this.x2,e.x),i=Math.max(this.y2,e.y);this.x=t,this.y=n,this.width=r-t,this.height=i-n}toString(){return`Rectangle[x=${this.x}, y=${this.y}, w=${this.width}, h=${this.height}]`}draw(e){e.rect(this.x,this.y,this.width,this.height)}containsPt(e,t){return e>=this.x&&e<=this.x2&&t>=this.y&&t<=this.y2}get area(){return this.width*this.height}intersects(e){return this.area<=0||e.width<=0||e.height<=0?!1:e.x+e.width>this.x&&e.y+e.height>this.y&&e.x<this.x2&&e.y<this.y2}distSquare(e,t){if(this.containsPt(e,t))return 0;let n=bY(this,e,t);return n.has(yY.TOP)?n.has(yY.LEFT)?lY(e,t,this.x,this.y):n.has(yY.RIGHT)?lY(e,t,this.x2,this.y):(this.y-t)*(this.y-t):n.has(yY.BOTTOM)?n.has(yY.LEFT)?lY(e,t,this.x,this.y2):n.has(yY.RIGHT)?lY(e,t,this.x2,this.y2):(t-this.y2)*(t-this.y2):n.has(yY.LEFT)?(this.x-e)*(this.x-e):n.has(yY.RIGHT)?(e-this.x2)*(e-this.x2):0}};function TY(e){if(e.length===0)return null;let t=e[0],n=new wY(t.x,t.y,0,0);for(let t of e)n.addPoint(t);return n}var EY=class e{constructor(e,t,n){this.cx=e,this.cy=t,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 e(t.cx,t.cy,t.radius)}containsPt(e,t){return lY(this.cx,this.cy,e,t)<this.radius*this.radius}distSquare(e,t){let n=lY(this.cx,this.cy,e,t);if(n<this.radius*this.radius)return 0;let r=Math.sqrt(n)-this.radius;return r*r}draw(e){e.ellipse(this.cx,this.cy,this.radius,this.radius,0,0,Math.PI*2)}},DY=class e{constructor(e,t=0,n=0,r=0,i=0,a=10,o=10,s=new Float32Array(Math.max(0,a*o)).fill(0)){this.pixelGroup=e,this.i=t,this.j=n,this.pixelX=r,this.pixelY=i,this.width=a,this.height=o,this.area=s}createSub(t,n){return new e(this.pixelGroup,t.x,t.y,n.x,n.y,t.width,t.height)}static fromPixelRegion(t,n){return new e(n,0,0,t.x,t.y,Math.ceil(t.width/n),Math.ceil(t.height/n))}copy(t,n){return new e(this.pixelGroup,this.scaleX(n.x),this.scaleY(n.y),n.x,n.y,t.width,t.height,t.area)}boundX(e){return e<this.i?this.i:e>=this.width?this.width-1:e}boundY(e){return e<this.j?this.j:e>=this.height?this.height-1:e}scaleX(e){return this.boundX(Math.floor((e-this.pixelX)/this.pixelGroup))}scaleY(e){return this.boundY(Math.floor((e-this.pixelY)/this.pixelGroup))}scale(e){let t=this.scaleX(e.x),n=this.scaleY(e.y),r=this.boundX(Math.ceil((e.x+e.width-this.pixelX)/this.pixelGroup)),i=this.boundY(Math.ceil((e.y+e.height-this.pixelY)/this.pixelGroup));return new wY(t,n,r-t,i-n)}invertScaleX(e){return Math.round(e*this.pixelGroup+this.pixelX)}invertScaleY(e){return Math.round(e*this.pixelGroup+this.pixelY)}addPadding(e,t){let n=Math.ceil(t/this.pixelGroup),r=this.boundX(e.x-n),i=this.boundY(e.y-n),a=this.boundX(e.x2+n),o=this.boundY(e.y2+n);return new wY(r,i,a-r,o-i)}get(e,t){return e<0||t<0||e>=this.width||t>=this.height?NaN:this.area[e+t*this.width]}inc(e,t,n){e<0||t<0||e>=this.width||t>=this.height||(this.area[e+t*this.width]+=n)}set(e,t,n){e<0||t<0||e>=this.width||t>=this.height||(this.area[e+t*this.width]=n)}incArea(e,t){if(e.width<=0||e.height<=0||t===0)return;let n=this.width,r=e.width,i=Math.max(0,e.i),a=Math.max(0,e.j),o=Math.min(e.i+e.width,n),s=Math.min(e.j+e.height,this.height);if(!(s<=0||o<=0||i>=n||s>=this.height))for(let c=a;c<s;c++){let a=(c-e.j)*r,s=c*n;for(let n=i;n<o;n++){let r=e.area[n-e.i+a];r!==0&&(this.area[n+s]+=t*r)}}}fill(e){this.area.fill(e)}fillArea(e,t){let n=e.x+e.y*this.width;for(let r=0;r<e.height;r++){let i=n+r*this.width;this.area.fill(t,i,i+e.width)}}fillHorizontalLine(e,t,n,r){let i=e+t*this.width;this.area.fill(r,i,i+n)}fillVerticalLine(e,t,n,r){let i=e+t*this.width;for(let e=0;e<n;e++)this.area[i+e*this.width]=r}clear(){this.area.fill(0)}toString(){let e=``;for(let t=0;t<this.height;t++){let n=t*this.width;for(let t=0;t<this.width;t++){let r=this.area[n+t];e+=r.toFixed(1).padStart(6),e+=` `}e+=`
17
+ `}return e}draw(e,t=!0){if(this.width<=0||this.height<=0)return;e.save(),t&&e.translate(this.pixelX,this.pixelY);let n=this.area.reduce((e,t)=>Math.min(e,t),1/0),r=this.area.reduce((e,t)=>Math.max(e,t),-1/0),i=e=>(e-n)/(r-n);e.scale(this.pixelGroup,this.pixelGroup);for(let t=0;t<this.width;t++)for(let n=0;n<this.height;n++){let r=this.area[t+n*this.width];e.fillStyle=`rgba(0, 0, 0, ${i(r)})`,e.fillRect(t,n,1,1)}e.restore()}drawThreshold(e,t,n=!0){if(!(this.width<=0||this.height<=0)){e.save(),n&&e.translate(this.pixelX,this.pixelY),e.scale(this.pixelGroup,this.pixelGroup);for(let n=0;n<this.width;n++)for(let r=0;r<this.height;r++)e.fillStyle=this.area[n+r*this.width]>t?`black`:`white`,e.fillRect(n,r,1,1);e.restore()}}};function OY(e,t){let n=e=>({x:e.x-t,y:e.y-t,width:e.width+2*t,height:e.height+2*t});return Array.isArray(e)?e.map(n):n(e)}function kY(e,t,n){return AY(Object.assign(fY(e),{distSquare:(t,n)=>cY(e.x1,e.y1,e.x2,e.y2,t,n)}),t,n)}function AY(e,t,n){let r=OY(e,n),i=t.scale(r),a=t.createSub(i,r);return jY(a,t,n,(t,n)=>e.distSquare(t,n)),a}function jY(e,t,n,r){let i=n*n;for(let a=0;a<e.height;a++)for(let o=0;o<e.width;o++){let s=r(t.invertScaleX(e.i+o),t.invertScaleY(e.j+a));if(s===0){e.set(o,a,i);continue}if(s<i){let t=n-Math.sqrt(s);e.set(o,a,t*t)}}return e}function MY(e,t,n){let r=t.scale(e),i=t.addPadding(r,n),a=t.createSub(i,{x:e.x-n,y:e.y-n}),o=r.x-i.x,s=r.y-i.y,c=i.x2-r.x2,l=i.y2-r.y2,u=i.width-o-c,d=i.height-s-l,f=n*n;a.fillArea({x:o,y:s,width:u+1,height:d+1},f);let p=[0],m=Math.max(s,o,c,l);{let i=t.invertScaleX(r.x+r.width/2);for(let a=1;a<m;a++){let o=t.invertScaleY(r.y-a),s=e.distSquare(i,o);if(s<f){let e=n-Math.sqrt(s);p.push(e*e)}else break}}let h=[],g=Math.max(o,c),_=Math.max(s,c);for(let i=1;i<g;i++){let a=t.invertScaleX(r.x-i),o=[];for(let i=1;i<_;i++){let s=t.invertScaleY(r.y-i),c=e.distSquare(a,s);if(c<f){let e=n-Math.sqrt(c);o.push(e*e)}else o.push(0)}h.push(o)}for(let e=1;e<Math.min(s,p.length);e++){let t=p[e];a.fillHorizontalLine(o,s-e,u+1,t)}for(let e=1;e<Math.min(l,p.length);e++){let t=p[e];a.fillHorizontalLine(o,s+d+e,u+1,t)}for(let e=1;e<Math.min(o,p.length);e++){let t=p[e];a.fillVerticalLine(o-e,s,d+1,t)}for(let e=1;e<Math.min(l,p.length);e++){let t=p[e];a.fillVerticalLine(o+u+e,s,d+1,t)}for(let e=1;e<o;e++){let t=h[e-1],n=o-e;for(let e=1;e<s;e++)a.set(n,s-e,t[e-1]);for(let e=1;e<l;e++)a.set(n,s+d+e,t[e-1])}for(let e=1;e<c;e++){let t=h[e-1],n=o+u+e;for(let e=1;e<s;e++)a.set(n,s-e,t[e-1]);for(let e=1;e<l;e++)a.set(n,s+d+e,t[e-1])}return a}function NY(e,t){return{x:e,y:t}}function PY(e,t,n,r){if(e.length===0)return[];let i=zY(e);return i.map((e,a)=>FY(t,e,i.slice(0,a),n,r)).flat()}function FY(e,t,n,r,i){let a=NY(t.cx,t.cy),o=RY(a,n,e);return o==null?[]:LY(IY(new pY(a.x,a.y,o.cx,o.cy),e,r,i),e)}function IY(e,t,n,r){let i=[],a=[];a.push(e);let o=!0;for(let e=0;e<n&&o;e++)for(o=!1;!o&&a.length>0;){let e=a.pop(),n=HY(t,e),s=n?CY(e,n):null;if(!n||!s||s.count!==2){o||i.push(e);continue}let c=r,l=WY(n,c,s,!0),u=VY(l,a)||VY(l,i),d=BY(l,t);for(;!u&&d&&c>=1;)c/=1.5,l=WY(n,c,s,!0),u=VY(l,a)||VY(l,i),d=BY(l,t);if(l&&!u&&!d&&(a.push(new pY(e.x1,e.y1,l.x,l.y)),a.push(new pY(l.x,l.y,e.x2,e.y2)),o=!0),o)continue;c=r,l=WY(n,c,s,!1);let f=VY(l,a)||VY(l,i);for(d=BY(l,t);!f&&d&&c>=1;)c/=1.5,l=WY(n,c,s,!1),f=VY(l,a)||VY(l,i),d=BY(l,t);l&&!f&&(a.push(new pY(e.x1,e.y1,l.x,l.y)),a.push(new pY(l.x,l.y,e.x2,e.y2)),o=!0),o||i.push(e)}for(;a.length>0;)i.push(a.pop());return i}function LY(e,t){let n=[];for(;e.length>0;){let r=e.pop();if(e.length===0){n.push(r);break}let i=e.pop(),a=new pY(r.x1,r.y1,i.x2,i.y2);HY(t,a)?(n.push(r),e.push(i)):e.push(a)}return n}function RY(e,t,n){let r=1/0;return t.reduce((t,i)=>{let a=lY(e.x,e.y,i.cx,i.cy);if(a>r)return t;let o=UY(n,new pY(e.x,e.y,i.cx,i.cy));return a*(o+1)*(o+1)<r&&(t=i,r=a*(o+1)*(o+1)),t},null)}function zY(e){if(e.length<2)return e;let t=0,n=0;return e.forEach(e=>{t+=e.cx,n+=e.cy}),t/=e.length,n/=e.length,e.map(e=>{let r=t-e.cx,i=n-e.cy;return[e,r*r+i*i]}).sort((e,t)=>e[1]-t[1]).map(e=>e[0])}function BY(e,t){return t.some(t=>t.containsPt(e.x,e.y))}function VY(e,t){return t.some(t=>!!(uY(t.x1,t.y1,e.x,e.y,.001)||uY(t.x2,t.y2,e.x,e.y,.001)))}function HY(e,t){let n=1/0,r=null;for(let i of e){if(!xY(i,t))continue;let e=SY(i,t);e>=0&&e<n&&(r=i,n=e)}return r}function UY(e,t){return e.reduce((e,n)=>xY(n,t)&&vY(n,t)?e+1:e,0)}function WY(e,t,n,r){let i=n.top,a=n.left,o=n.bottom,s=n.right;if(r){if(a.state===mY.POINT){if(i.state===mY.POINT)return NY(e.x-t,e.y-t);if(o.state===mY.POINT)return NY(e.x-t,e.y2+t);let n=e.width*e.height;return e.width*((a.y-e.y+(s.y-e.y))*.5)<n*.5?a.y>s.y?NY(e.x-t,e.y-t):NY(e.x2+t,e.y-t):a.y<s.y?NY(e.x-t,e.y2+t):NY(e.x2+t,e.y2+t)}if(s.state===mY.POINT){if(i.state===mY.POINT)return NY(e.x2+t,e.y-t);if(o.state===mY.POINT)return NY(e.x2+t,e.y2+t)}let n=e.height*e.width;return e.height*((i.x-e.x+(s.x-e.x))*.5)<n*.5?i.x>o.x?NY(e.x-t,e.y-t):NY(e.x-t,e.y2+t):i.x<o.x?NY(e.x2+t,e.y-t):NY(e.x2+t,e.y2+t)}if(a.state===mY.POINT){if(i.state===mY.POINT)return NY(e.x2+t,e.y2+t);if(o.state===mY.POINT)return NY(e.x2+t,e.y-t);let n=e.height*e.width;return e.width*((a.y-e.y+(s.y-e.y))*.5)<n*.5?a.y>s.y?NY(e.x2+t,e.y2+t):NY(e.x-t,e.y2+t):a.y<s.y?NY(e.x2+t,e.y-t):NY(e.x-t,e.y-t)}if(s.state===mY.POINT){if(i.state===mY.POINT)return NY(e.x-t,e.y2+t);if(o.state===mY.POINT)return NY(e.x-t,e.y-t)}let c=e.height*e.width;return e.height*((i.x-e.x+(s.x-e.x))*.5)<c*.5?i.x>o.x?NY(e.x2+t,e.y2+t):NY(e.x2+t,e.y-t):i.x<o.x?NY(e.x-t,e.y2+t):NY(e.x-t,e.y-t)}function GY(e,t,n,r){if(!(e.closed?n<e.length:n<e.length-1))return!1;let i=e.get(t),a=e.get(n+1);for(let o=t+1;o<=n;o++){let t=e.get(o);if(cY(i.x,i.y,a.x,a.y,t.x,t.y)>r)return!1}return!0}function KY(e=0){return t=>{if(e<0||t.length<3)return t;let n=[],r=0,i=e*e;for(;r<t.length;){let e=r+1;for(;GY(t,r,e,i);)e++;n.push(t.get(r)),r=e}return new XY(n)}}function qY(e,t){switch(e){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 Error(`unknown error`)}}function JY(e=6){function t(e,t,n){let r=0,i=0;for(let a=-2;a<=1;a++){let o=e.get(t+a),s=qY(a,n);r+=s*o.x,i+=s*o.y}return{x:r,y:i}}return n=>{if(n.length<3)return n;let r=[],i=n.closed,a=n.length+3-1+(i?0:2);r.push(t(n,2-(i?0:2),0));for(let o=2-(i?0:2);o<a;o++)for(let i=1;i<=e;i++)r.push(t(n,o,i/e));return new XY(r)}}function YY(e=8){return t=>{let n=e,r=t.length;if(n>1)for(r=Math.floor(t.length/n);r<3&&n>1;)--n,r=Math.floor(t.length/n);let i=[];for(let e=0,a=0;a<r;a++,e+=n)i.push(t.get(e));return new XY(i)}}var XY=class{constructor(e=[],t=!0){this.points=e,this.closed=t}get(e){let t=e,n=this.points.length;return e<0?this.closed?this.get(e+n):this.points[0]:e>=n?this.closed?this.get(e-n):this.points[n-1]:this.points[t]}get length(){return this.points.length}toString(e=1/0){let t=this.points;if(t.length===0)return``;let n=typeof e==`function`?e:dY(e),r=`M`;for(let e of t)r+=`${n(e.x)},${n(e.y)} L`;return r=r.slice(0,-1),this.closed&&(r+=` Z`),r}draw(e){let t=this.points;if(t.length!==0){e.beginPath(),e.moveTo(t[0].x,t[0].y);for(let n of t)e.lineTo(n.x,n.y);this.closed&&e.closePath()}}sample(e){return YY(e)(this)}simplify(e){return KY(e)(this)}bSplines(e){return JY(e)(this)}apply(e){return e(this)}containsElements(e){let t=TY(this.points);return t?e.every(e=>t.containsPt(e.cx,e.cy)&&this.withinArea(e.cx,e.cy)):!1}withinArea(e,t){if(this.length===0)return!1;let n=0,r=this.points[0],i=new pY(r.x,r.y,r.x,r.y);for(let r=1;r<this.points.length;r++){let a=this.points[r];i.x1=i.x2,i.y1=i.y2,i.x2=a.x,i.y2=a.y,i.cuts(e,t)&&n++}return i.x1=i.x2,i.y1=i.y2,i.x2=r.x,i.y2=r.y,i.cuts(e,t)&&n++,n%2==1}},ZY=class{constructor(e=0){this.count=0,this.arr=[],this.set=new Set,this.arr.length=e}add(e){this.set.add(`${e.x}x${e.y}`),this.arr[this.count++]=e}contains(e){return this.set.has(`${e.x}x${e.y}`)}isFirst(e){if(this.count===0)return!1;let t=this.arr[0];return t!=null&&t.x===e.x&&t.y===e.y}path(){return new XY(this.arr.slice(0,this.count))}clear(){this.set.clear(),this.count=0}get(e){return this.arr[e]}get length(){return this.count}},QY=0,$Y=1,eX=2,tX=3;function nX(e,t){let n=new ZY((Math.floor(e.width)+Math.floor(e.height))*2);function r(n,r,i,a){let o=e.get(n,r);return Number.isNaN(o)?NaN:o>t?i+a:i}function i(e,t){let n=QY;return n=r(e,t,n,1),n=r(e+1,t,n,2),n=r(e,t+1,n,4),n=r(e+1,t+1,n,8),Number.isNaN(n)?-1:n}let a=$Y;function o(t,r){let o=t,s=r,c=e.invertScaleX(o),l=e.invertScaleY(s);for(let t=0;t<e.width*e.height;t++){let t={x:c,y:l};if(n.contains(t)){if(n.isFirst(t))return!0}else n.add(t);let r=i(o,s);switch(r){case-1:return!0;case 0:case 3:case 2:case 7:a=eX;break;case 12:case 14:case 4:a=tX;break;case 6:a=a===QY?tX:eX;break;case 1:case 13:case 5:a=QY;break;case 9:a=a===eX?QY:$Y;break;case 10:case 8:case 11:a=$Y;break;default:return console.warn(`Marching squares invalid state: `+r),!0}switch(a){case QY:s--,l-=e.pixelGroup;break;case $Y:s++,l+=e.pixelGroup;break;case tX:o--,c-=e.pixelGroup;break;case eX:o++,c+=e.pixelGroup;break;default:return console.warn(`Marching squares invalid state: `+r),!0}}return!0}for(let r=0;r<e.width;r++)for(let a=0;a<e.height;a++){if(e.get(r,a)<=t)continue;let s=i(r,a);if(!(s<0||s===15)&&o(r,a))return n.path()}return null}var rX={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 iX(e){return e!=null&&typeof e.radius==`number`}function aX(e,t){if(iX(e)!==iX(t))return!1;if(iX(e)){let n=t;return e.cx===n.cx&&e.cy===n.cy&&e.radius===n.radius}let n=t;return e.x===n.x&&e.y===n.y&&e.width===n.width&&e.height===n.height}var oX;(function(e){e[e.MEMBERS=0]=`MEMBERS`,e[e.NON_MEMBERS=1]=`NON_MEMBERS`,e[e.EDGES=2]=`EDGES`})(oX||={});var sX=class{constructor(e={}){this.dirty=new Set,this.members=[],this.nonMembers=[],this.virtualEdges=[],this.edges=[],this.activeRegion=new wY(0,0,0,0),this.potentialArea=new DY(1,0,0,0,0,0,0),this.o=Object.assign({},rX,e)}pushMember(...e){if(e.length!==0){this.dirty.add(oX.MEMBERS);for(let t of e)this.members.push({raw:t,obj:iX(t)?EY.from(t):wY.from(t),area:null})}}removeMember(e){let t=this.members.findIndex(t=>aX(t.raw,e));return t<0?!1:(this.members.splice(t,1),this.dirty.add(oX.MEMBERS),!0)}removeNonMember(e){let t=this.nonMembers.findIndex(t=>aX(t.raw,e));return t<0?!1:(this.nonMembers.splice(t,1),this.dirty.add(oX.NON_MEMBERS),!0)}removeEdge(e){let t=this.edges.findIndex(t=>t.obj.equals(e));return t<0?!1:(this.edges.splice(t,1),this.dirty.add(oX.NON_MEMBERS),!0)}pushNonMember(...e){if(e.length!==0){this.dirty.add(oX.NON_MEMBERS);for(let t of e)this.nonMembers.push({raw:t,obj:iX(t)?EY.from(t):wY.from(t),area:null})}}pushEdge(...e){if(e.length!==0){this.dirty.add(oX.EDGES);for(let t of e)this.edges.push({raw:t,obj:pY.from(t),area:null})}}update(){let e=this.dirty.has(oX.MEMBERS),t=this.dirty.has(oX.NON_MEMBERS),n=this.dirty.has(oX.EDGES);this.dirty.clear();let r=this.members.map(e=>e.obj);if(this.o.virtualEdges&&(e||t)){let e=PY(r,this.nonMembers.map(e=>e.obj),this.o.maxRoutingIterations,this.o.morphBuffer),t=new Map(this.virtualEdges.map(e=>[e.obj.toString(),e.area]));this.virtualEdges=e.map(e=>({raw:e,obj:e,area:t.get(e.toString())??null})),n=!0}let i=!1;if(e||n){let e=lX(r,this.virtualEdges.concat(this.edges).map(e=>e.obj)),t=Math.max(this.o.edgeR1,this.o.nodeR1)+this.o.morphBuffer,n=wY.from(OY(e,t));n.equals(this.activeRegion)||(i=!0,this.activeRegion=n)}if(i){let e=Math.ceil(this.activeRegion.width/this.o.pixelGroup),t=Math.ceil(this.activeRegion.height/this.o.pixelGroup);this.activeRegion.x!==this.potentialArea.pixelX||this.activeRegion.y!==this.potentialArea.pixelY?(this.potentialArea=DY.fromPixelRegion(this.activeRegion,this.o.pixelGroup),this.members.forEach(e=>e.area=null),this.nonMembers.forEach(e=>e.area=null),this.edges.forEach(e=>e.area=null),this.virtualEdges.forEach(e=>e.area=null)):(e!==this.potentialArea.width||t!==this.potentialArea.height)&&(this.potentialArea=DY.fromPixelRegion(this.activeRegion,this.o.pixelGroup))}let a=new Map,o=e=>{if(e.area){let t=`${e.obj.width}x${e.obj.height}x${e.obj instanceof wY?`R`:`C`}`;a.set(t,e.area)}},s=e=>{if(e.area)return;let t=`${e.obj.width}x${e.obj.height}x${e.obj instanceof wY?`R`:`C`}`;if(a.has(t)){let n=a.get(t);e.area=this.potentialArea.copy(n,{x:e.obj.x-this.o.nodeR1,y:e.obj.y-this.o.nodeR1});return}let n=e.obj instanceof wY?MY(e.obj,this.potentialArea,this.o.nodeR1):AY(e.obj,this.potentialArea,this.o.nodeR1);e.area=n,a.set(t,n)};this.members.forEach(o),this.nonMembers.forEach(o),this.members.forEach(s),this.nonMembers.forEach(e=>{this.activeRegion.intersects(e.obj)?s(e):e.area=null}),this.edges.forEach(e=>{e.area||=kY(e.obj,this.potentialArea,this.o.edgeR1)}),this.virtualEdges.forEach(e=>{e.area||=kY(e.obj,this.potentialArea,this.o.edgeR1)})}drawMembers(e){for(let t of this.members)t.obj.draw(e)}drawNonMembers(e){for(let t of this.nonMembers)t.obj.draw(e)}drawEdges(e){for(let t of this.edges)t.obj.draw(e)}drawPotentialArea(e,t=!0){this.potentialArea.draw(e,t)}compute(){if(this.members.length===0)return new XY([]);this.dirty.size>0&&this.update();let{o:e,potentialArea:t}=this,n=this.members.map(e=>e.area),r=this.virtualEdges.concat(this.edges).map(e=>e.area),i=this.nonMembers.filter(e=>e.area!=null).map(e=>e.area),a=this.members.map(e=>e.obj);return cX(t,n,r,i,e=>e.containsElements(a),e)}};function cX(e,t,n,r,i,a={}){let o=Object.assign({},rX,a),s=o.threshold,c=o.memberInfluenceFactor,l=o.edgeInfluenceFactor,u=o.nonMemberInfluenceFactor,d=(o.nodeR0-o.nodeR1)*(o.nodeR0-o.nodeR1),f=(o.edgeR0-o.edgeR1)*(o.edgeR0-o.edgeR1);for(let a=0;a<o.maxMarchingIterations;a++){if(e.clear(),c!==0){let n=c/d;for(let r of t)e.incArea(r,n)}if(l!==0){let t=l/f;for(let r of n)e.incArea(r,t)}if(u!==0){let t=u/d;for(let n of r)e.incArea(n,t)}let p=nX(e,s);if(p&&i(p))return p;if(s*=.95,a<=o.maxMarchingIterations*.5)c*=1.2,l*=1.2;else if(u!==0&&r.length>0)u*=.8;else break}return new XY([])}function lX(e,t){if(e.length===0)return new wY(0,0,0,0);let n=wY.from(e[0]);for(let t of e)n.add(t);for(let e of t)n.add(fY(e));return n}var uX=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},dX=class e extends rY{constructor(t,n){super(t,Wn({},e.defaultOptions,n)),this.path=null,this.members=new Map,this.avoidMembers=new Map,this.bubbleSetOptions={},this.drawBubbleSets=()=>{let{style:e,bubbleSetOptions:t}=this.parseOptions();qn(this.bubbleSetOptions,t)||this.init(),this.bubbleSetOptions=Object.assign({},t);let n=Object.assign(Object.assign({},e),{d:this.getPath()});this.shape?this.shape.update(n):(this.shape=new Mv({style:n}),this.context.canvas.appendChild(this.shape))},this.updateBubbleSetsPath=e=>{if(!this.shape)return;let t=Q(e.data);[...this.options.members,...this.options.avoidMembers].includes(t)&&this.shape.update(Object.assign(Object.assign({},this.parseOptions().style),{d:this.getPath(t)}))},this.getPath=e=>{let{graph:t}=this.context,n=this.options.members,r=[...this.members.keys()],i=this.options.avoidMembers,a=[...this.avoidMembers.keys()];if(n.length===0&&i.length===0)return this.members.clear(),this.avoidMembers.clear(),this.path=[],this.path;if(!e&&this.path&&qn(n,r)&&qn(i,a))return this.path;let{enter:o=[],exit:s=[]}=zg(r,n,e=>e),{enter:c=[],exit:l=[]}=zg(a,i,e=>e);if(e){let t=n.includes(e),r=i.includes(e);t&&(s.push(e),o.push(e)),r&&(l.push(e),c.push(e))}let u=(e,n,r)=>{e.forEach(e=>{let i=r?this.members:this.avoidMembers,a=r?`pushMember`:`pushNonMember`,o=r?`removeMember`:`removeNonMember`;if(n){let n;t.getElementType(e)===`edge`?([n]=pX(t,e),this.bubbleSets.pushEdge(n)):([n]=fX(t,e),this.bubbleSets[a](n)),i.set(e,n)}else{let n=i.get(e);n&&(t.getElementType(e)===`edge`?this.bubbleSets.removeEdge(n):this.bubbleSets[o](n),i.delete(e))}})};u(s,!1,!0),u(o,!0,!0),u(l,!1,!1),u(c,!0,!1);let d=this.bubbleSets.compute().sample(8).simplify(0).bSplines().simplify(0);return this.path=kv(d.points.map(v_)),this.path},this.bindEvents(),this.bubbleSets=new sX(this.options)}bindEvents(){this.context.graph.on(Z.AFTER_RENDER,this.drawBubbleSets),this.context.graph.on(Z.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath)}init(){this.bubbleSets=new sX(this.options),this.members.clear(),this.avoidMembers.clear(),this.path=null}parseOptions(){let e=this.options,{type:t,key:n,members:r,avoidMembers:i}=e,a=uX(e,[`type`,`key`,`members`,`avoidMembers`]),o=Object.keys(a).reduce((e,t)=>(t in rX?e.bubbleSetOptions[t]=a[t]:e.style[t]=a[t],e),{style:{},bubbleSetOptions:{}});return Object.assign({type:t,key:n,members:r,avoidMembers:i},o)}addMember(e){let t=Array.isArray(e)?e:[e];t.some(e=>this.options.avoidMembers.includes(e))&&(this.options.avoidMembers=this.options.avoidMembers.filter(e=>!t.includes(e))),this.options.members=[...new Set([...this.options.members,...t])],this.drawBubbleSets()}removeMember(e){let t=Array.isArray(e)?e:[e];this.options.members=this.options.members.filter(e=>!t.includes(e)),this.drawBubbleSets()}updateMember(e){this.options.members=L(e)?e(this.options.members):e,this.drawBubbleSets()}getMember(){return this.options.members}addAvoidMember(e){let t=Array.isArray(e)?e:[e];t.some(e=>this.options.members.includes(e))&&(this.options.members=this.options.members.filter(e=>!t.includes(e))),this.options.avoidMembers=[...new Set([...this.options.avoidMembers,...t])],this.drawBubbleSets()}removeAvoidMember(e){let t=Array.isArray(e)?e:[e];this.options.avoidMembers.some(e=>t.includes(e))&&(this.options.avoidMembers=this.options.avoidMembers.filter(e=>!t.includes(e)),this.drawBubbleSets())}updateAvoidMember(e){this.options.avoidMembers=Array.isArray(e)?e:[e],this.drawBubbleSets()}getAvoidMember(){return this.options.avoidMembers}destroy(){this.context.graph.off(Z.AFTER_RENDER,this.drawBubbleSets),this.context.graph.off(Z.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath),this.shape&&=(this.shape.destroy(),void 0),super.destroy()}};dX.defaultOptions=Object.assign({members:[],avoidMembers:[],fill:`lightblue`,fillOpacity:.2,stroke:`blue`,strokeOpacity:.2},rX);var fX=(e,t)=>(Array.isArray(t)?t:[t]).map(t=>{let n=e.getElementRenderBounds(t);return new wY(n.min[0],n.min[1],Ph(n),Fh(n))}),pX=(e,t)=>(Array.isArray(t)?t:[t]).map(t=>{let n=e.getEdgeData(t),r=e.getElementPosition(n.source),i=e.getElementPosition(n.target);return pY.from({x1:r[0],y1:r[1],x2:i[0],y2:i[1]})});function mX(e){return`
18
+ <ul class="g6-contextmenu-ul">
19
+ ${e.map(e=>`<li class="g6-contextmenu-li" value="${e.value}">${e.name}</li>`).join(``)}
20
+ </ul>
21
+ `}var hX=`
22
+ .g6-contextmenu {
23
+ font-size: 12px;
24
+ background-color: rgba(255, 255, 255, 0.96);
25
+ border-radius: 4px;
26
+ overflow-x: hidden;
27
+ overflow-y: auto;
28
+ max-height: calc(100% - 8px);
29
+ box-shadow: rgba(0, 0, 0, 0.12) 0px 6px 12px 0px;
30
+ 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;
31
+ }
32
+
33
+ .g6-contextmenu::-webkit-scrollbar {
34
+ width: 6px;
35
+ }
36
+
37
+ .g6-contextmenu::-webkit-scrollbar-thumb {
38
+ background-color: rgba(0, 0, 0, 0.2);
39
+ border-radius: 3px;
40
+ }
41
+
42
+ .g6-contextmenu::-webkit-scrollbar-thumb:hover {
43
+ background-color: rgba(0, 0, 0, 0.3);
44
+ }
45
+
46
+ .g6-contextmenu-ul {
47
+ max-width: 256px;
48
+ min-width: 96px;
49
+ list-style: none;
50
+ padding: 0;
51
+ margin: 0;
52
+ }
53
+
54
+ .g6-contextmenu-li {
55
+ padding: 8px 12px;
56
+ cursor: pointer;
57
+ user-select: none;
58
+ }
59
+
60
+ .g6-contextmenu-li:hover {
61
+ background-color: #f5f5f5;
62
+ cursor: pointer;
63
+ }
64
+ `,gX=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},_X=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.targetElement=null,this.wheelHandler=e=>{e.stopPropagation()},this.onTriggerEvent=e=>{var t;(t=e.preventDefault)==null||t.call(e),this.show(e)},this.onMenuItemClick=e=>{let{onClick:t,trigger:n}=this.options;if(e.target instanceof HTMLElement&&e.target.className.includes(`g6-contextmenu-li`)){let n=e.target.getAttribute(`value`);t?.(n,e.target,this.targetElement),this.hide()}n!==`click`&&this.hide()},this.initElement(),this.update(n)}initElement(){this.$element=iY(`contextmenu`,!1,{zIndex:`99`});let{className:e}=this.options;e&&this.$element.classList.add(e),this.$element.addEventListener(`wheel`,this.wheelHandler),this.context.canvas.getContainer().appendChild(this.$element),aY(`g6-contextmenu-css`,`style`,{},hX,document.head)}show(e){return gX(this,void 0,void 0,function*(){let{enable:t,offset:n}=this.options;if(typeof t==`function`&&!t(e)||!t){this.hide();return}let r=yield this.getDOMContent(e);r instanceof HTMLElement?(this.$element.innerHTML=``,this.$element.appendChild(r)):this.$element.innerHTML=r;let i=this.context.graph.getCanvas().getContainer().getBoundingClientRect(),a=e.client.x-i.left+n[0],o=e.client.y-i.top+n[1];this.$element.style.display=`block`;let s=this.$element.offsetWidth,c=this.$element.offsetHeight,l=i.width,u=i.height;a=Math.max(4,Math.min(a,l-s-4)),o=Math.max(4,Math.min(o,u-c-4)),this.$element.style.left=`${a}px`,this.$element.style.top=`${o}px`,this.targetElement=e.target})}hide(){this.$element.style.display=`none`,this.targetElement=null}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy(),this.$element.remove()}getDOMContent(e){return gX(this,void 0,void 0,function*(){let{getContent:t,getItems:n}=this.options;return n?mX(yield n(e)):yield t(e)})}bindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;e.on(`canvas:${t}`,this.onTriggerEvent),e.on(`node:${t}`,this.onTriggerEvent),e.on(`edge:${t}`,this.onTriggerEvent),e.on(`combo:${t}`,this.onTriggerEvent),document.addEventListener(`click`,this.onMenuItemClick)}unbindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;e.off(`canvas:${t}`,this.onTriggerEvent),e.off(`node:${t}`,this.onTriggerEvent),e.off(`edge:${t}`,this.onTriggerEvent),e.off(`combo:${t}`,this.onTriggerEvent),document.removeEventListener(`click`,this.onMenuItemClick),this.$element.removeEventListener(`wheel`,this.wheelHandler)}};_X.defaultOptions={trigger:`contextmenu`,offset:[4,4],loadingContent:`<div class="g6-contextmenu-loading">Loading...</div>`,getContent:()=>`It is a empty context menu.`,enable:()=>!0};var vX=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.edgeBundles={},this.edgePoints={},this.onBundle=()=>{let{model:e,element:t}=this.context,n=e.getEdgeData();this.divideEdges(this.options.divisions);let{cycles:r,iterRate:i,divRate:a}=this.options,{lambda:o,divisions:s,iterations:c}=this.options;for(let e=0;e<r;e++){for(let e=0;e<c;e++){let e={};n.forEach(t=>{var n;if(t.source===t.target)return;let r=Q(t);e[r]=this.getEdgeForces(t,s,o);for(let t=0;t<s+1;t++)(n=this.edgePoints)[r]||(n[r]=[]),this.edgePoints[r][t]=Jg(this.edgePoints[r][t],e[r][t])})}o/=2,s*=a,c*=i,this.divideEdges(s)}n.forEach(e=>{let n=Q(e);t.getElement(n)?.update({d:Bb(this.edgePoints[n])})})},this.bindEvents()}get nodeMap(){let e=this.context.model.getNodeData();return Object.fromEntries(e.map(e=>[Q(e),s_(m_(e))]))}divideEdges(e){this.context.model.getEdgeData().forEach(t=>{var n;let r=Q(t);(n=this.edgePoints)[r]||(n[r]=[]);let i=this.nodeMap[t.source],a=this.nodeMap[t.target];if(e===1)this.edgePoints[r].push(i),this.edgePoints[r].push(Zg(Jg(i,a),2)),this.edgePoints[r].push(a);else{let t=(this.edgePoints[r].length===0?t_(i,a):TX(this.edgePoints[r]))/(e+1),n=t,o=[i];for(let e=1;e<this.edgePoints[r].length;e++){let i=this.edgePoints[r][e-1],a=this.edgePoints[r][e],s=t_(a,i);for(;s>n;){let e=n/s,r=Jg(i,Xg(Yg(a,i),e));o.push(r),s-=n,n=t}n-=s}o.push(a),this.edgePoints[r]=o}})}getVectorPosition(e){let t=this.nodeMap[e.source],n=this.nodeMap[e.target],[r,i]=Yg(n,t);return{source:t,target:n,vx:r,vy:i,length:t_(t,n)}}measureEdgeCompatibility(e,t){let n=this.getVectorPosition(e),r=this.getVectorPosition(t),i=yX(n,r),a=bX(n,r),o=xX(n,r),s=wX(n,r);return i*a*o*s}getEdgeBundles(){let e={},t=this.options.bundleThreshold,n=this.context.model.getEdgeData();return n.forEach((r,i)=>{n.forEach((n,a)=>{var o,s;a<=i||this.measureEdgeCompatibility(r,n)>=t&&(e[o=Q(r)]||(e[o]=[]),e[Q(r)].push(n),e[s=Q(n)]||(e[s]=[]),e[Q(n)].push(r))})}),e}getSpringForce(e,t){let{pre:n,cur:r,next:i}=e;return Xg(Yg(Jg(n,i),Xg(r,2)),t)}getElectrostaticForce(e,t){Kn(this.edgeBundles)&&(this.edgeBundles=this.getEdgeBundles());let n=this.edgeBundles[Q(t)],r=[0,0];return n?.forEach(n=>{let i=this.edgePoints[Q(n)][e],a=this.edgePoints[Q(t)][e],o=Yg(i,a),s=t_(i,a);r=Jg(r,Xg(o,1/s))}),r}getEdgeForces(e,t,n){let r=this.nodeMap[e.source],i=this.nodeMap[e.target],a=this.options.K/(t_(r,i)*(t+1)),o=[[0,0]],s=Q(e);for(let r=1;r<t;r++){let t=this.getSpringForce({pre:this.edgePoints[s][r-1],cur:this.edgePoints[s][r],next:this.edgePoints[s][r+1]||[0,0]},a),i=this.getElectrostaticForce(r,e);o.push(Xg(Jg(t,i),n))}return o.push([0,0]),o}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_RENDER,this.onBundle)}unbindEvents(){let{graph:e}=this.context;e.off(Z.AFTER_RENDER,this.onBundle)}destroy(){this.unbindEvents(),super.destroy()}};vX.defaultOptions={K:.1,lambda:.1,divisions:1,divRate:2,cycles:6,iterations:90,iterRate:2/3,bundleThreshold:.6};var yX=(e,t)=>Math.abs(Qg([e.vx,e.vy],[t.vx,t.vy])/(e.length*t.length)),bX=(e,t)=>{let n=(e.length+t.length)/2;return 2/(n/Math.min(e.length,t.length)+Math.max(e.length,t.length)/n)},xX=(e,t)=>{let n=(e.length+t.length)/2;return n/(n+t_(Zg(Jg(e.source,e.target),2),Zg(Jg(t.source,t.target),2)))},SX=(e,t)=>{if(t.source[0]===t.target[0])return[t.source[0],e[1]];if(t.source[1]===t.target[1])return[e[0],t.source[1]];let n=(t.source[1]-t.target[1])/(t.source[0]-t.target[0]),r=(n*n*t.source[0]+n*(e[1]-t.source[1])+e[0])/(n*n+1);return[r,n*(r-t.source[0])+t.source[1]]},CX=(e,t)=>{let n=SX(t.source,e),r=SX(t.target,e),i=Zg(Jg(n,r),2),a=Zg(Jg(e.source,e.target),2);return t_(n,r)===0?0:Math.max(0,1-2*t_(a,i)/t_(n,r))},wX=(e,t)=>Math.min(CX(e,t),CX(t,e)),TX=e=>{let t=0;for(let n=1;n<e.length;n++)t+=t_(e[n],e[n-1]);return t},EX={fill:`#fff`,fillOpacity:1,lineWidth:1,stroke:`#000`,strokeOpacity:.8,zIndex:-1/0},DX=.05,OX=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.shapes=new Map,this.r=this.options.r,this.onEdgeFilter=e=>{if(this.options.trigger===`drag`&&this.isLensOn)return;let t=v_(e.canvas);this.renderLens(t),this.renderFocusElements()},this.renderLens=e=>{let t=Object.assign({},EX,this.options.style);this.isLensOn||(this.lens=new Gv({style:t}),this.canvas.appendChild(this.lens)),Object.assign(t,y_(e),{size:this.r*2}),this.lens.update(t)},this.getFilterData=()=>{let{filter:e}=this.options,{model:t}=this.context,n=t.getData();if(!e)return n;let{nodes:r,edges:i,combos:a}=n;return{nodes:r.filter(t=>e(Q(t),`node`)),edges:i.filter(t=>e(Q(t),`edge`)),combos:a.filter(t=>e(Q(t),`combo`))}},this.getFocusElements=e=>{let{nodes:t,edges:n}=this.getFilterData(),r=t.filter(t=>t_(m_(t),e)<this.r),i=r.map(e=>Q(e));return{nodes:r,edges:n.filter(e=>{let{source:t,target:n}=e,r=i.includes(t),a=i.includes(n);switch(this.options.nodeType){case`both`:return r&&a;case`either`:return r!==a;case`source`:return r&&!a;case`target`:return!r&&a;default:return!1}})}},this.renderFocusElements=()=>{let{element:e,graph:t}=this.context;if(!this.isLensOn)return;let n=this.lens.getCenter(),{nodes:r,edges:i}=this.getFocusElements(n),a=new Set,o=n=>{let r=Q(n);a.add(r);let i=e.getElement(r);if(!i)return;let o=this.shapes.get(r)||i.cloneNode();o.setPosition(i.getPosition()),o.id=i.id,this.shapes.has(r)?Object.entries(i.attributes).forEach(([e,t])=>{o.style[e]!==t&&(o.style[e]=t)}):(this.canvas.appendChild(o),this.shapes.set(r,o));let s=t.getElementType(r),c=this.getElementStyle(s,n);o.update(c)};r.forEach(o),i.forEach(o),this.shapes.forEach((e,t)=>{a.has(t)||(e.destroy(),this.shapes.delete(t))})},this.scaleRByWheel=e=>{this.options.preventDefault&&e.preventDefault();let{clientX:t,clientY:n,deltaX:r,deltaY:i}=e,{graph:a,canvas:o}=this.context,s=a.getCanvasByClient([t,n]),c=this.lens?.getCenter();if(!this.isLensOn||t_(s,c)>this.r)return;let{maxR:l,minR:u}=this.options,d=r+i>0?1/(1-DX):1-DX,f=Math.min(...o.getSize())/2;this.r=Math.max(u||0,Math.min(l||f,this.r*d)),this.renderLens(c),this.renderFocusElements()},this.isLensDragging=!1,this.onDragStart=e=>{let t=v_(e.canvas),n=this.lens?.getCenter();!this.isLensOn||t_(t,n)>this.r||(this.isLensDragging=!0)},this.onDrag=e=>{if(!this.isLensDragging)return;let t=v_(e.canvas);this.renderLens(t),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(e,t){let n=e===`node`?this.options.nodeStyle:this.options.edgeStyle;return typeof n==`function`?n(t):n}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var e;let{graph:t}=this.context,{trigger:n,scaleRBy:r}=this.options,i=t.getCanvas().getLayer();[`click`,`drag`].includes(n)&&i.addEventListener(X.CLICK,this.onEdgeFilter),n===`pointermove`?i.addEventListener(X.POINTER_MOVE,this.onEdgeFilter):n===`drag`&&(i.addEventListener(X.DRAG_START,this.onDragStart),i.addEventListener(X.DRAG,this.onDrag),i.addEventListener(X.DRAG_END,this.onDragEnd)),r===`wheel`&&((e=this.graphDom)==null||e.addEventListener(X.WHEEL,this.scaleRByWheel,{passive:!1}))}unbindEvents(){var e;let{graph:t}=this.context,{trigger:n,scaleRBy:r}=this.options,i=t.getCanvas().getLayer();[`click`,`drag`].includes(n)&&i.removeEventListener(X.CLICK,this.onEdgeFilter),n===`pointermove`?i.removeEventListener(X.POINTER_MOVE,this.onEdgeFilter):n===`drag`&&(i.removeEventListener(X.DRAG_START,this.onDragStart),i.removeEventListener(X.DRAG,this.onDrag),i.removeEventListener(X.DRAG_END,this.onDragEnd)),r===`wheel`&&((e=this.graphDom)==null||e.removeEventListener(X.WHEEL,this.scaleRByWheel))}update(e){this.unbindEvents(),super.update(e),this.r=e.r??this.r,this.bindEvents()}destroy(){this.unbindEvents(),this.isLensOn&&this.lens.destroy(),this.shapes.forEach((e,t)=>{e.destroy(),this.shapes.delete(t)}),super.destroy()}};OX.defaultOptions={trigger:`pointermove`,r:60,nodeType:`both`,filter:()=>!0,style:{lineWidth:2},nodeStyle:{label:!1},edgeStyle:{label:!0},scaleRBy:`wheel`,preventDefault:!0};var kX={fill:`#ccc`,fillOpacity:.1,lineWidth:2,stroke:`#000`,strokeOpacity:.8,labelFontSize:12},AX=.05,jX=.1,MX=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.r=this.options.r,this.d=this.options.d,this.onCreateFisheye=e=>{if(this.options.trigger===`drag`&&this.isLensOn)return;let t=v_(e.canvas);this.onMagnify(t)},this.onMagnify=e=>{e.some(isNaN)||(this.renderLens(e),this.renderFocusElements())},this.renderLens=e=>{let t=Object.assign({},kX,this.options.style);this.isLensOn||(this.lens=new Gv({style:t}),this.canvas.appendChild(this.lens)),Object.assign(t,y_(e),{size:this.r*2,label:this.options.showDPercent,labelText:this.getDPercent()}),this.lens.update(t)},this.getDPercent=()=>{let{minD:e,maxD:t}=this.options;return`${Math.round((this.d-e)/(t-e)*100)}%`},this.prevMagnifiedStyleMap=new Map,this.prevOriginStyleMap=new Map,this.renderFocusElements=()=>{if(!this.isLensOn)return;let{graph:e}=this.context,t=this.lens.getCenter(),n=(this.d+1)*this.r,r=new Map,i=new Map;e.getNodeData().forEach(a=>{let o=m_(a),s=t_(o,t);if(s>this.r)return;let c=n*s/(this.d*s+this.r),[l,u]=o,[d,f]=t,p=(l-d)/s,m=(u-f)/s,h=[d+c*p,f+c*m],g=Q(a),_=this.getNodeStyle(a),v=Zn(e.getElementRenderStyle(g),Object.keys(_));r.set(g,Object.assign(Object.assign({},y_(h)),_)),i.set(g,Object.assign(Object.assign({},y_(o)),v))}),this.updateStyle(r,i)},this.getNodeStyle=e=>{let{nodeStyle:t}=this.options;return typeof t==`function`?t(e):t},this.updateStyle=(e,t)=>{let{graph:n,element:r}=this.context,{enter:i,exit:a,keep:o}=zg(Array.from(this.prevMagnifiedStyleMap.keys()),Array.from(e.keys()),e=>e),s=new Set,c=(e,t)=>{r.getElement(e)?.update(t),n.getRelatedEdgesData(e).forEach(e=>{s.add(Q(e))})};[...i,...o].forEach(t=>{c(t,e.get(t))}),a.forEach(e=>{c(e,this.prevOriginStyleMap.get(e)),this.prevOriginStyleMap.delete(e)}),s.forEach(e=>{r.getElement(e)?.update({})}),this.prevMagnifiedStyleMap=e,t.forEach((e,t)=>{this.prevOriginStyleMap.has(t)||this.prevOriginStyleMap.set(t,e)})},this.isWheelValid=e=>{if(this.options.preventDefault&&e.preventDefault(),!this.isLensOn)return!1;let{clientX:t,clientY:n}=e;return!(t_(this.context.graph.getCanvasByClient([t,n]),this.lens.getCenter())>this.r)},this.scaleR=e=>{let{maxR:t,minR:n}=this.options,r=e?1/(1-AX):1-AX,i=Math.min(...this.context.canvas.getSize())/2;this.r=Math.max(n||0,Math.min(t||i,this.r*r))},this.scaleD=e=>{let{maxD:t,minD:n}=this.options,r=e?this.d+jX:this.d-jX;this.d=Math.max(n,Math.min(t,r))},this.scaleRByWheel=e=>{if(!this.isWheelValid(e))return;let{deltaX:t,deltaY:n}=e;this.scaleR(t+n>0);let r=this.lens.getCenter();this.onMagnify(r)},this.scaleDByWheel=e=>{if(!this.isWheelValid(e))return;let{deltaX:t,deltaY:n}=e;this.scaleD(t+n>0);let r=this.lens.getCenter();this.onMagnify(r)},this.isDragValid=e=>(this.options.preventDefault&&e.preventDefault(),!(!this.isLensOn||t_(v_(e.canvas),this.lens.getCenter())>this.r)),this.isLensDragging=!1,this.onDragStart=e=>{this.isDragValid(e)&&(this.isLensDragging=!0)},this.onDrag=e=>{if(!this.isLensDragging)return;let t=v_(e.canvas);this.onMagnify(t)},this.onDragEnd=()=>{this.isLensDragging=!1},this.scaleRByDrag=e=>{if(!this.isLensDragging)return;let{dx:t,dy:n}=e;this.scaleR(t-n>0);let r=this.lens.getCenter();this.onMagnify(r)},this.scaleDByDrag=e=>{if(!this.isLensDragging)return;let{dx:t,dy:n}=e;this.scaleD(t-n>0);let r=this.lens.getCenter();this.onMagnify(r)},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 e;let{graph:t}=this.context,{trigger:n,scaleRBy:r,scaleDBy:i}=this.options,a=t.getCanvas().getLayer();if([`click`,`drag`].includes(n)&&a.addEventListener(X.CLICK,this.onCreateFisheye),n===`pointermove`&&a.addEventListener(X.POINTER_MOVE,this.onCreateFisheye),n===`drag`||r===`drag`||i===`drag`){a.addEventListener(X.DRAG_START,this.onDragStart),a.addEventListener(X.DRAG_END,this.onDragEnd);let e=n===`drag`?this.onDrag:r===`drag`?this.scaleRByDrag:this.scaleDByDrag;a.addEventListener(X.DRAG,e)}if(r===`wheel`||i===`wheel`){let t=r===`wheel`?this.scaleRByWheel:this.scaleDByWheel;(e=this.graphDom)==null||e.addEventListener(X.WHEEL,t,{passive:!1})}}unbindEvents(){var e;let{graph:t}=this.context,{trigger:n,scaleRBy:r,scaleDBy:i}=this.options,a=t.getCanvas().getLayer();if([`click`,`drag`].includes(n)&&a.removeEventListener(X.CLICK,this.onCreateFisheye),n===`pointermove`&&a.removeEventListener(X.POINTER_MOVE,this.onCreateFisheye),n===`drag`||r===`drag`||i===`drag`){a.removeEventListener(X.DRAG_START,this.onDragStart),a.removeEventListener(X.DRAG_END,this.onDragEnd);let e=n===`drag`?this.onDrag:r===`drag`?this.scaleRByDrag:this.scaleDByDrag;a.removeEventListener(X.DRAG,e)}if(r===`wheel`||i===`wheel`){let t=r===`wheel`?this.scaleRByWheel:this.scaleDByWheel;(e=this.graphDom)==null||e.removeEventListener(X.WHEEL,t)}}update(e){this.unbindEvents(),super.update(e),this.r=e.r??this.r,this.d=e.d??this.d,this.bindEvents()}destroy(){var e;this.unbindEvents(),this.isLensOn&&((e=this.lens)==null||e.destroy()),this.prevMagnifiedStyleMap.clear(),this.prevOriginStyleMap.clear(),super.destroy()}};MX.defaultOptions={trigger:`pointermove`,r:120,d:1.5,maxD:5,minD:0,showDPercent:!0,style:{},nodeStyle:{label:!0},preventDefault:!0};var NX=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$el=this.context.canvas.getContainer(),this.graphSize=[0,0],this.onFullscreenChange=()=>{var e,t,n,r;let i=!!document.fullscreenElement;this.options.autoFit&&this.setGraphSize(i),i?(t=(e=this.options).onEnter)==null||t.call(e):(r=(n=this.options).onExit)==null||r.call(n)},this.shortcut=new H_(t.graph),this.bindEvents(),this.style=document.createElement(`style`),document.head.appendChild(this.style),this.style.innerHTML=`
65
+ :not(:root):fullscreen::backdrop {
66
+ background: transparent;
67
+ }
68
+ `}bindEvents(){this.unbindEvents(),this.shortcut.unbindAll();let{request:e=[],exit:t=[]}=this.options.trigger;this.shortcut.bind(e,this.request),this.shortcut.bind(t,this.exit),[`webkitfullscreenchange`,`mozfullscreenchange`,`fullscreenchange`,`MSFullscreenChange`].forEach(e=>{document.addEventListener(e,this.onFullscreenChange,!1)})}unbindEvents(){this.shortcut.unbindAll(),[`webkitfullscreenchange`,`mozfullscreenchange`,`fullscreenchange`,`MSFullscreenChange`].forEach(e=>{document.removeEventListener(e,this.onFullscreenChange,!1)})}setGraphSize(e=!0){let t,n;e?(t=globalThis.screen?.width||0,n=globalThis.screen?.height||0,this.graphSize=this.context.graph.getSize()):[t,n]=this.graphSize,this.context.graph.setSize(t,n),this.context.graph.render()}request(){document.fullscreenElement||!PX()||this.$el.requestFullscreen().catch(e=>{ch.warn(`Error attempting to enable full-screen: ${e.message} (${e.name})`)})}exit(){document.fullscreenElement&&document.exitFullscreen()}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}destroy(){this.exit(),this.style.remove(),super.destroy()}};NX.defaultOptions={trigger:{},autoFit:!0};function PX(){return document.fullscreenEnabled||Reflect.get(document,`webkitFullscreenEnabled`)||Reflect.get(document,`mozFullscreenEnabled`)||Reflect.get(document,`msFullscreenEnabled`)}var FX=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$element=iY(`grid-line`,!0),this.offset=[0,0],this.currentScale=1,this.followZoom=e=>{let{data:{scale:t,origin:n}}=e;if(!t||n===void 0&&this.context.viewport===void 0)return;let r=this.currentScale;this.currentScale=t;let i=t/r,a=Xg(n||this.context.graph.getCanvasCenter(),1-i),o=this.baseSize*t,s=Jg(o_(Xg(this.offset,i),o),a);this.$element.style.backgroundSize=`${o}px ${o}px`,this.$element.style.backgroundPosition=`${s[0]}px ${s[1]}px`,this.offset=o_(s,o)},this.followTranslate=e=>{if(!this.options.follow)return;let{data:{translate:t}}=e;t&&this.updateOffset(t)},this.onTransform=e=>{let t=this.parseFollow(this.options.follow);t.zoom&&this.followZoom(e),t.translate&&this.followTranslate(e)},this.context.canvas.getContainer().prepend(this.$element),this.baseSize=this.options.size,this.updateStyle(),this.bindEvents()}update(e){super.update(e),e.size!==void 0&&(this.baseSize=e.size),this.updateStyle()}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_TRANSFORM,this.onTransform)}updateStyle(){let{stroke:e,lineWidth:t,border:n,borderLineWidth:r,borderStroke:i,borderStyle:a}=this.options,o=this.baseSize*this.currentScale;Object.assign(this.$element.style,{border:n?`${r}px ${a} ${i}`:`none`,backgroundImage:`linear-gradient(${e} ${t}px, transparent ${t}px), linear-gradient(90deg, ${e} ${t}px, transparent ${t}px)`,backgroundSize:`${o}px ${o}px`,backgroundRepeat:`repeat`})}updateOffset(e){let t=this.baseSize*this.currentScale;this.offset=o_(Jg(this.offset,e),t),this.$element.style.backgroundPosition=`${this.offset[0]}px ${this.offset[1]}px`}parseFollow(e){return Dn(e)?{translate:e,zoom:e}:{translate:e?.translate??!1,zoom:e?.zoom??!1}}destroy(){this.context.graph.off(Z.AFTER_TRANSFORM,this.onTransform),this.$element.remove(),super.destroy()}};FX.defaultOptions={border:!0,borderLineWidth:1,borderStroke:`#eee`,borderStyle:`solid`,lineWidth:1,size:20,stroke:`#eee`};function IX(e){let t={Added:new Map,Updated:new Map,Removed:new Map};return e.forEach(e=>{let{type:n,value:r}=e,i=Q(r);if(n===`NodeAdded`||n===`EdgeAdded`||n===`ComboAdded`)t.Added.set(i,e);else if(n===`NodeUpdated`||n===`EdgeUpdated`||n===`ComboUpdated`)if(t.Added.has(i))t.Added.set(i,{type:n.replace(`Updated`,`Added`),value:r});else if(t.Updated.has(i)){let{original:e}=t.Updated.get(i);t.Updated.set(i,{type:n,value:r,original:e})}else t.Removed.has(i)||t.Updated.set(i,e);else (n===`NodeRemoved`||n===`EdgeRemoved`||n===`ComboRemoved`)&&(t.Added.has(i)?t.Added.delete(i):(t.Updated.has(i)&&t.Updated.delete(i),t.Removed.set(i,e)))}),[...Array.from(t.Added.values()),...Array.from(t.Updated.values()),...Array.from(t.Removed.values())]}function LX(e){let{NodeAdded:t=[],NodeUpdated:n=[],NodeRemoved:r=[],EdgeAdded:i=[],EdgeUpdated:a=[],EdgeRemoved:o=[],ComboAdded:s=[],ComboUpdated:c=[],ComboRemoved:l=[]}=pn(e,e=>e.type);return{add:{nodes:t,edges:i,combos:s},update:{nodes:n,edges:a,combos:c},remove:{nodes:r,edges:o,combos:l}}}function RX(e,t){for(let n in e)$t(e[n])&&!Array.isArray(e[n])&&e[n]!==null?(t[n]||(t[n]={}),RX(e[n],t[n])):t[n]===void 0&&(t[n]=fh(n))}function zX(e,t=!1,n){let r={animation:t,current:{add:{},update:{},remove:{}},original:{add:{},update:{},remove:{}}},{add:i,update:a,remove:o}=LX(IX(e));return[`nodes`,`edges`,`combos`].forEach(e=>{a[e]&&a[e].forEach(t=>{var i,a;let o=Object.assign({},t.value),s=Object.assign({},t.original);if(n){let e=n.graph.getElementType(Q(t.original)),r=e===`edge`?`stroke`:`fill`,i=n.element.getElementComputedStyle(e,t.original);s=Object.assign(Object.assign({},t.original),{style:Object.assign({[r]:i[r]},t.original.style)})}RX(o,s),(i=r.current.update)[e]||(i[e]=[]),r.current.update[e].push(o),(a=r.original.update)[e]||(a[e]=[]),r.original.update[e].push(s)}),i[e]&&i[e].forEach(t=>{var n,i;let a=Object.assign({},t.value);(n=r.current.add)[e]||(n[e]=[]),r.current.add[e].push(a),(i=r.original.remove)[e]||(i[e]=[]),r.original.remove[e].push(a)}),o[e]&&o[e].forEach(t=>{var n,i;let a=Object.assign({},t.value);(n=r.current.remove)[e]||(n[e]=[]),r.current.remove[e].push(a),(i=r.original.add)[e]||(i[e]=[]),r.original.add[e].push(a)})}),r}var BX=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.batchChanges=null,this.batchAnimation=!1,this.undoStack=[],this.redoStack=[],this.freezed=!1,this.executeCommand=(e,t=!0)=>{var n,r,i;this.freezed=!0,(r=(n=this.options).executeCommand)==null||r.call(n,e);let a=t?e.original:e.current;this.context.graph.addData(a.add),this.context.graph.updateData(a.update),this.context.graph.removeData(Ag(a.remove,!1)),(i=this.context.element)==null||i.draw({silence:!0,animation:e.animation}),this.freezed=!1},this.addCommand=e=>{if(!this.freezed){if(e.type===Z.AFTER_DRAW){let{dataChanges:t=[],animation:n=!0}=e.data;if(this.context.batch?.isBatching){if(!this.batchChanges)return;this.batchChanges.push(t),this.batchAnimation&&=n;return}this.batchChanges=[t],this.batchAnimation=n}this.undoStackPush(zX(this.batchChanges.flat(),this.batchAnimation,this.context)),this.notify(Qm.ADD,this.undoStack[this.undoStack.length-1])}},this.initBatchCommand=e=>{let{initiate:t}=e.data;this.batchAnimation=!1,t?this.batchChanges=[]:this.undoStack.pop()||(this.batchChanges=null)},this.emitter=new bS;let{graph:r}=this.context;r.on(Z.AFTER_DRAW,this.addCommand),r.on(Z.BATCH_START,this.initBatchCommand),r.on(Z.BATCH_END,this.addCommand)}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}undo(){var e,t,n;let r=this.undoStack.pop();if(r){if(this.executeCommand(r),(e=this.options).beforeAddCommand?.call(e,r,!1)===!1)return;this.redoStack.push(r),(n=(t=this.options).afterAddCommand)==null||n.call(t,r,!1),this.notify(Qm.UNDO,r)}return this}redo(){let e=this.redoStack.pop();return e&&(this.executeCommand(e,!1),this.undoStackPush(e),this.notify(Qm.REDO,e)),this}undoAndCancel(){let e=this.undoStack.pop();return e&&(this.executeCommand(e,!1),this.redoStack=[],this.notify(Qm.CANCEL,e)),this}undoStackPush(e){var t,n,r;let{stackSize:i}=this.options;i!==0&&this.undoStack.length>=i&&this.undoStack.shift(),(t=this.options).beforeAddCommand?.call(t,e,!0)!==!1&&(this.undoStack.push(e),(r=(n=this.options).afterAddCommand)==null||r.call(n,e,!0))}clear(){this.undoStack=[],this.redoStack=[],this.batchChanges=null,this.batchAnimation=!1,this.notify(Qm.CLEAR,null)}notify(e,t){this.emitter.emit(e,{cmd:t}),this.emitter.emit(Qm.CHANGE,{cmd:t})}on(e,t){this.emitter.on(e,t)}destroy(){let{graph:e}=this.context;e.off(Z.AFTER_DRAW,this.addCommand),e.off(Z.BATCH_START,this.initBatchCommand),e.off(Z.BATCH_END,this.addCommand),this.emitter.off(),super.destroy(),this.undoStack=[],this.redoStack=[]}};BX.defaultOptions={stackSize:0};var VX={toXy(e,t){if(!t)return[...e];let n=t[0].slice(1),r=t[1].slice(1);return e.map(e=>[e[n],e[r]])},fromXy(e,t){if(!t)return[...e];let n=t[0].slice(1),r=t[1].slice(1);return e.map(([e,t])=>({[n]:e,[r]:t}))}},HX=class{constructor(e,t){this._cells=[],this._cellSize=t,this._reverseCellSize=1/t;for(let t of e){let e=this.coordToCellNum(t[0]),n=this.coordToCellNum(t[1]);this._cells[e]||(this._cells[e]=[]),this._cells[e][n]||(this._cells[e][n]=[]),this._cells[e][n].push(t)}}cellPoints(e,t){return this._cells[e]?.[t]||[]}rangePoints(e){let t=this.coordToCellNum(e[0]),n=this.coordToCellNum(e[1]),r=this.coordToCellNum(e[2]),i=this.coordToCellNum(e[3]),a=[];for(let e=t;e<=r;e++)for(let t=n;t<=i;t++){let n=this.cellPoints(e,t);for(let e of n)a.push(e)}return a}removePoint(e){let t=this.coordToCellNum(e[0]),n=this.coordToCellNum(e[1]),r=this._cells[t][n],i=r.findIndex(([t,n])=>t===e[0]&&n===e[1]);return i>-1&&r.splice(i,1),r}trunc(e){return Math.trunc(e)}coordToCellNum(e){return this.trunc(e*this._reverseCellSize)}extendBbox(e,t){return[e[0]-t*this._cellSize,e[1]-t*this._cellSize,e[2]+t*this._cellSize,e[3]+t*this._cellSize]}};function UX(e,t){return new HX(e,t)}var WX=+(2**27+1);function GX(e,t,n){let r=e*t,i=WX*e,a=i-(i-e),o=e-a,s=WX*t,c=s-(s-t),l=t-c,u=r-a*c-o*c-a*l,d=o*l-u;return n?(n[0]=d,n[1]=r,n):[d,r]}function KX(e,t,n){let r=e+t,i=r-e,a=r-i,o=t-i,s=e-a;return n?(n[0]=s+o,n[1]=r,n):[s+o,r]}function qX(e,t){let n=e.length;if(n===1){let n=GX(e[0],t);return n[0]?n:[n[1]]}let r=Array(2*n),i=[.1,.1],a=[.1,.1],o=0;GX(e[0],t,i),i[0]&&(r[o++]=i[0]);for(let s=1;s<n;++s){GX(e[s],t,a);let n=i[1];KX(n,a[0],i),i[0]&&(r[o++]=i[0]);let c=a[1],l=i[1],u=c+l,d=l-(u-c);i[1]=u,d&&(r[o++]=d)}return i[1]&&(r[o++]=i[1]),o===0&&(r[o++]=0),r.length=o,r}function JX(e,t){let n=e+t,r=n-e,i=n-r,a=t-r,o=e-i+a;return o?[o,n]:[n]}function YX(e,t){let n=e.length|0,r=t.length|0;if(n===1&&r===1)return JX(e[0],-t[0]);let i=n+r,a=Array(i),o=0,s=0,c=0,l=Math.abs,u=e[s],d=l(u),f=-t[c],p=l(f),m,h;d<p?(h=u,s+=1,s<n&&(u=e[s],d=l(u))):(h=f,c+=1,c<r&&(f=-t[c],p=l(f))),s<n&&d<p||c>=r?(m=u,s+=1,s<n&&(u=e[s],d=l(u))):(m=f,c+=1,c<r&&(f=-t[c],p=l(f)));let g=m+h,_=g-m,v=h-_,y=v,b=g,x,S,C,w,T;for(;s<n&&c<r;)d<p?(m=u,s+=1,s<n&&(u=e[s],d=l(u))):(m=f,c+=1,c<r&&(f=-t[c],p=l(f))),h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x;for(;s<n;)m=u,h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x,s+=1,s<n&&(u=e[s]);for(;c<r;)m=f,h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x,c+=1,c<r&&(f=-t[c]);return y&&(a[o++]=y),b&&(a[o++]=b),o||(a[o++]=0),a.length=o,a}function XX(e,t){let n=e+t,r=n-e,i=n-r,a=t-r,o=e-i+a;return o?[o,n]:[n]}function ZX(e,t){let n=e.length|0,r=t.length|0;if(n===1&&r===1)return XX(e[0],t[0]);let i=n+r,a=Array(i),o=0,s=0,c=0,l=Math.abs,u=e[s],d=l(u),f=t[c],p=l(f),m,h;d<p?(h=u,s+=1,s<n&&(u=e[s],d=l(u))):(h=f,c+=1,c<r&&(f=t[c],p=l(f))),s<n&&d<p||c>=r?(m=u,s+=1,s<n&&(u=e[s],d=l(u))):(m=f,c+=1,c<r&&(f=t[c],p=l(f)));let g=m+h,_=g-m,v=h-_,y=v,b=g,x,S,C,w,T;for(;s<n&&c<r;)d<p?(m=u,s+=1,s<n&&(u=e[s],d=l(u))):(m=f,c+=1,c<r&&(f=t[c],p=l(f))),h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x;for(;s<n;)m=u,h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x,s+=1,s<n&&(u=e[s]);for(;c<r;)m=f,h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x,c+=1,c<r&&(f=t[c]);return y&&(a[o++]=y),b&&(a[o++]=b),o||(a[o++]=0),a.length=o,a}var QX=5,$X=11102230246251565e-32,eZ=(3+16*$X)*$X,tZ=(7+56*$X)*$X;function nZ(e,t,n,r){return function(n,i,a){let o=r(e(e(t(i[1],a[0]),t(-a[1],i[0])),e(t(n[1],i[0]),t(-i[1],n[0]))),e(t(n[1],a[0]),t(-a[1],n[0])));return o[o.length-1]}}function rZ(e,t,n,r){return function(i,a,o,s){let c=r(e(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),a[2]),e(n(e(t(a[1],s[0]),t(-s[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),s[2]))),e(n(e(t(a[1],s[0]),t(-s[1],a[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),s[2])))),e(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),s[2]))),e(n(e(t(a[1],o[0]),t(-o[1],a[0])),i[2]),e(n(e(t(i[1],o[0]),t(-o[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),o[2])))));return c[c.length-1]}}function iZ(e,t,n,r){return function(i,a,o,s,c){let l=r(e(e(e(n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),o[2]),e(n(e(t(o[1],c[0]),t(-c[1],o[0])),-s[2]),n(e(t(o[1],s[0]),t(-s[1],o[0])),c[2]))),a[3]),e(n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),a[2]),e(n(e(t(a[1],c[0]),t(-c[1],a[0])),-s[2]),n(e(t(a[1],s[0]),t(-s[1],a[0])),c[2]))),-o[3]),n(e(n(e(t(o[1],c[0]),t(-c[1],o[0])),a[2]),e(n(e(t(a[1],c[0]),t(-c[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),c[2]))),s[3]))),e(n(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),a[2]),e(n(e(t(a[1],s[0]),t(-s[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),s[2]))),-c[3]),e(n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),a[2]),e(n(e(t(a[1],c[0]),t(-c[1],a[0])),-s[2]),n(e(t(a[1],s[0]),t(-s[1],a[0])),c[2]))),i[3]),n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-s[2]),n(e(t(i[1],s[0]),t(-s[1],i[0])),c[2]))),-a[3])))),e(e(n(e(n(e(t(a[1],c[0]),t(-c[1],a[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),c[2]))),s[3]),e(n(e(n(e(t(a[1],s[0]),t(-s[1],a[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),s[2]))),-c[3]),n(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),a[2]),e(n(e(t(a[1],s[0]),t(-s[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),s[2]))),i[3]))),e(n(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),s[2]))),-a[3]),e(n(e(n(e(t(a[1],s[0]),t(-s[1],a[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),s[2]))),o[3]),n(e(n(e(t(a[1],o[0]),t(-o[1],a[0])),i[2]),e(n(e(t(i[1],o[0]),t(-o[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),o[2]))),-s[3]))))),e(e(e(n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),o[2]),e(n(e(t(o[1],c[0]),t(-c[1],o[0])),-s[2]),n(e(t(o[1],s[0]),t(-s[1],o[0])),c[2]))),i[3]),n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-s[2]),n(e(t(i[1],s[0]),t(-s[1],i[0])),c[2]))),-o[3])),e(n(e(n(e(t(o[1],c[0]),t(-c[1],o[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),c[2]))),s[3]),n(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),s[2]))),-c[3]))),e(e(n(e(n(e(t(o[1],c[0]),t(-c[1],o[0])),a[2]),e(n(e(t(a[1],c[0]),t(-c[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),c[2]))),i[3]),n(e(n(e(t(o[1],c[0]),t(-c[1],o[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),c[2]))),-a[3])),e(n(e(n(e(t(a[1],c[0]),t(-c[1],a[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),c[2]))),o[3]),n(e(n(e(t(a[1],o[0]),t(-o[1],a[0])),i[2]),e(n(e(t(i[1],o[0]),t(-o[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),o[2]))),-c[3])))));return l[l.length-1]}}function aZ(e){return(e===3?nZ:e===4?rZ:iZ)(ZX,GX,qX,YX)}var oZ=aZ(3),sZ=aZ(4),cZ=[function(){return 0},function(){return 0},function(e,t){return t[0]-e[0]},function(e,t,n){let r=(e[1]-n[1])*(t[0]-n[0]),i=(e[0]-n[0])*(t[1]-n[1]),a=r-i,o;if(r>0){if(i<=0)return a;o=r+i}else if(r<0){if(i>=0)return a;o=-(r+i)}else return a;let s=eZ*o;return a>=s||a<=-s?a:oZ(e,t,n)},function(e,t,n,r){let i=e[0]-r[0],a=t[0]-r[0],o=n[0]-r[0],s=e[1]-r[1],c=t[1]-r[1],l=n[1]-r[1],u=e[2]-r[2],d=t[2]-r[2],f=n[2]-r[2],p=a*l,m=o*c,h=o*s,g=i*l,_=i*c,v=a*s,y=u*(p-m)+d*(h-g)+f*(_-v),b=tZ*((Math.abs(p)+Math.abs(m))*Math.abs(u)+(Math.abs(h)+Math.abs(g))*Math.abs(d)+(Math.abs(_)+Math.abs(v))*Math.abs(f));return y>b||-y>b?y:sZ(e,t,n,r)}];function lZ(e){let t=cZ[e.length];return t||=cZ[e.length]=aZ(e.length),t.apply(void 0,...e)}function uZ(e,t,n,r,i,a,o){return function(...t){switch(t.length){case 0:case 1:return 0;case 2:return r(t[0],t[1]);case 3:return i(t[0],t[1],t[2]);case 4:return a(t[0],t[1],t[2],t[3]);case 5:return o(t[0],t[1],t[2],t[3],t[4])}return e(t)}}function dZ(){for(;cZ.length<=QX;)cZ.push(aZ(cZ.length));let e=uZ(void 0,lZ,...cZ);for(let t=0;t<=QX;++t)e[t]=cZ[t];return e}var fZ=dZ(),pZ=fZ[3];function mZ(e){let t=e.length;if(t<3){let n=Array(t);for(let e=0;e<t;++e)n[e]=e;return t===2&&e[0][0]===e[1][0]&&e[0][1]===e[1][1]?[0]:n}let n=Array(t);for(let e=0;e<t;++e)n[e]=e;n.sort((t,n)=>e[t][0]-e[n][0]||e[t][1]-e[n][1]);let r=[n[0],n[1]],i=[n[0],n[1]];for(let a=2;a<t;++a){let t=n[a],o=e[t],s=r.length;for(;s>1&&pZ(e[r[s-2]],e[r[s-1]],o)<=0;)--s,r.pop();for(r.push(t),s=i.length;s>1&&pZ(e[i[s-2]],e[i[s-1]],o)>=0;)--s,i.pop();i.push(t)}let a=Array(i.length+r.length-2),o=0;for(let e=0,t=r.length;e<t;++e)a[o++]=r[e];for(let e=i.length-2;e>0;--e)a[o++]=i[e];return a}function hZ(e,t,n,r){for(let i=0;i<2;++i){let a=e[i],o=t[i],[s,c]=[Math.min(a,o),Math.max(a,o)],l=n[i],u=r[i],[d,f]=[Math.min(l,u),Math.max(l,u)];if(f<s||c<d)return!1}return!0}function gZ(e,t,n,r){let i=fZ(e,n,r),a=fZ(t,n,r);if(i>0&&a>0||i<0&&a<0)return!1;let o=fZ(n,e,t),s=fZ(r,e,t);return o>0&&s>0||o<0&&s<0?!1:i===0&&a===0&&o===0&&s===0?hZ(e,t,n,r):!0}function _Z(e){let t=[e[0]],n=e[0];for(let r=1;r<e.length;r++){let i=e[r];(n[0]!==i[0]||n[1]!==i[1])&&t.push(i),n=i}return t}function vZ(e){return e.sort(function(e,t){return e[0]-t[0]||e[1]-t[1]})}function yZ(e,t){return(t[0]-e[0])**2+(t[1]-e[1])**2}function bZ(e,t,n){let r=[t[0]-e[0],t[1]-e[1]],i=[n[0]-e[0],n[1]-e[1]],a=yZ(e,t),o=yZ(e,n);return(r[0]*i[0]+r[1]*i[1])/Math.sqrt(a*o)}function xZ(e,t){for(let n=0;n<t.length-1;n++){let r=[t[n],t[n+1]];if(!(e[0][0]===r[0][0]&&e[0][1]===r[0][1]||e[0][0]===r[1][0]&&e[0][1]===r[1][1])&&gZ(e[0],e[1],r[0],r[1]))return!0}return!1}function SZ(e){let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a=e.length-1;a>=0;a--)e[a][0]<t&&(t=e[a][0]),e[a][1]<n&&(n=e[a][1]),e[a][0]>r&&(r=e[a][0]),e[a][1]>i&&(i=e[a][1]);return[r-t,i-n]}function CZ(e){return[Math.min(e[0][0],e[1][0]),Math.min(e[0][1],e[1][1]),Math.max(e[0][0],e[1][0]),Math.max(e[0][1],e[1][1])]}function wZ(e,t,n){let r=null,i=DZ,a=DZ,o,s;for(let c=0;c<t.length;c++)o=bZ(e[0],e[1],t[c]),s=bZ(e[1],e[0],t[c]),o>i&&s>a&&!xZ([e[0],t[c]],n)&&!xZ([e[1],t[c]],n)&&(i=o,a=s,r=t[c]);return r}function TZ(e,t,n,r,i){let a=!1;for(let o=0;o<e.length-1;o++){let s=[e[o],e[o+1]],c=s[0][0]+`,`+s[0][1]+`,`+s[1][0]+`,`+s[1][1];if(yZ(s[0],s[1])<t||i.has(c))continue;let l=0,u=CZ(s),d,f,p;do u=r.extendBbox(u,l),d=u[2]-u[0],f=u[3]-u[1],p=wZ(s,r.rangePoints(u),e),l++;while(p===null&&(n[0]>d||n[1]>f));d>=n[0]&&f>=n[1]&&i.add(c),p!==null&&(e.splice(o+1,0,p),r.removePoint(p),a=!0)}return a?TZ(e,t,n,r,i):e}function EZ(e,t,n){let r=t||20,i=_Z(vZ(VX.toXy(e,n)));if(i.length<4){let e=i.concat([i[0]]);return n?VX.fromXy(e,n):e}let a=SZ(i),o=[a[0]*OZ,a[1]*OZ],s=mZ(i).reverse().map(e=>i[e]);s.push(s[0]);let c=i.filter(function(e){return s.indexOf(e)<0}),l=Math.ceil(1/(i.length/(a[0]*a[1]))),u=TZ(s,r**2,o,UX(c,l),new Set);return n?VX.fromXy(u,n):u}var DZ=Math.cos(90/(180/Math.PI)),OZ=.6;function kZ(e,t,n){if(e.length===1)return AZ(e[0],t,n);if(e.length===2)return jZ(e,t,n);if(e.length===3){let[r,i,a]=I_(e);if(T_(r,i,a))return jZ([r,a],t,n)}switch(n){case`smooth`:return NZ(e,t);case`sharp`:return PZ(e,t);default:return MZ(e,t)}}var AZ=(e,t,n)=>{if(n===`sharp`)return[[`M`,e[0]-t,e[1]-t],[`L`,e[0]+t,e[1]-t],[`L`,e[0]+t,e[1]+t],[`L`,e[0]-t,e[1]+t],[`Z`]];let r=[t,t,0,0,0];return[[`M`,e[0],e[1]-t],[`A`,...r,e[0],e[1]+t],[`A`,...r,e[0],e[1]-t]]},jZ=(e,t,n)=>{let r=[t,t,0,0,0],i=n===`sharp`?Jg(e[0],e_(r_(Yg(e[0],e[1])),t)):e[0],a=n===`sharp`?Jg(e[1],e_(r_(Yg(e[1],e[0])),t)):e[1],o=e_(r_(a_(Yg(i,a),!1)),t),s=e_(o,-1),c=Jg(i,o),l=Jg(a,o),u=Jg(a,s),d=Jg(i,s);return n===`sharp`?[[`M`,c[0],c[1]],[`L`,l[0],l[1]],[`L`,u[0],u[1]],[`L`,d[0],d[1]],[`Z`]]:[[`M`,c[0],c[1]],[`L`,l[0],l[1]],[`A`,...r,u[0],u[1]],[`L`,d[0],d[1]],[`A`,...r,c[0],c[1]]]},MZ=(e,t)=>{let n=I_(e).map((n,r)=>{let i=(r-2+e.length)%e.length,a=(r-1+e.length)%e.length,o=(r+1)%e.length,s=e[i],c=e[a],l=e[o],u=Yg(s,c),d=Yg(c,n),f=Yg(n,l),p=(e,t)=>i_(e,t,!0)<Math.PI,m=p(u,d),h=p(d,f),g=e=>e_(r_(a_(e,!1)),t),_=g(d);return[{p:s_(m?Jg(c,g(u)):Jg(c,_)),concave:m&&c},{p:s_(h?Jg(n,g(f)):Jg(n,_)),concave:h&&n}]}),r=[t,t,0,0,0],i=n.findIndex((e,t)=>!n[(t-1+n.length)%n.length][0].concave&&!n[(t-1+n.length)%n.length][1].concave&&!e[0].concave&&!e[0].concave&&!e[1].concave),a=n.slice(i).concat(n.slice(0,i)),o=[];return a.flatMap((e,t)=>{let i=[],s=a[n.length-1];return t===0&&i.push([`M`,...s[1].p]),e[0].concave?o.push(e[0].p,e[1].p):i.push([`A`,...r,...e[0].p]),e[1].concave?o.unshift(e[1].p):i.push([`L`,...e[1].p]),o.length===3&&(i.pop(),i.push([`C`,...o.flat()]),o=[]),i})},NZ=(e,t)=>{let n=I_(e).map((t,n)=>{let r=e[(n+1)%e.length];return{p:t,v:r_(Yg(r,t))}});return n.forEach((r,i)=>{let a=n[i>0?i-1:e.length-1].v,o=r_(Jg(a,e_(r.v,i_(a,r.v,!0)<Math.PI?1:-1)));r.p=Jg(r.p,e_(o,t))}),kv(n.map(e=>e.p))},PZ=(e,t)=>{let n=e.map((n,r)=>{let i=e[r===0?e.length-1:r-1],a=c_(e_(r_(a_(Yg(i,n),!1)),t));return[Jg(i,a),Jg(n,a)]}).flat();return n.map((e,t)=>t%2==0?null:f_([n[(t-1)%n.length],n[t%n.length]],[n[(t+1)%n.length],n[(t+2)%n.length]],!0)).filter(Boolean).map((e,t)=>[t===0?`M`:`L`,e[0],e[1]]).concat([[`Z`]])},FZ=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},IZ=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.hullMemberIds=[],this.drawHull=()=>{if(!this.shape)this.shape=new Mv({style:this.getHullStyle()}),this.context.canvas.appendChild(this.shape);else{let e=!qn(this.optionsCache,this.options);this.shape.update(this.getHullStyle(e))}this.optionsCache=Object.assign({},this.options)},this.updateHullPath=e=>{this.shape&&this.options.members.includes(Q(e.data))&&this.shape.update({d:this.getHullPath(!0)})},this.getHullPath=(e=!1)=>{let{graph:t}=this.context,n=this.getMember();if(n.length===0)return``;let r=n.map(e=>t.getNodeData(e)),i=EZ(r.map(m_),this.options.concavity).slice(1).reverse(),a=i.flatMap(e=>r.filter(t=>qn(m_(t),e)).map(Q));return qn(a,this.hullMemberIds)&&!e?this.path:(this.hullMemberIds=a,this.path=kZ(i,this.getPadding(),this.options.corner),this.path)},this.bindEvents()}bindEvents(){this.context.graph.on(Z.AFTER_RENDER,this.drawHull),this.context.graph.on(Z.AFTER_ELEMENT_UPDATE,this.updateHullPath)}unbindEvents(){this.context.graph.off(Z.AFTER_RENDER,this.drawHull),this.context.graph.off(Z.AFTER_ELEMENT_UPDATE,this.updateHullPath)}getHullStyle(e){let t=this.options,{members:n,padding:r,corner:i}=t,a=FZ(t,[`members`,`padding`,`corner`]);return Object.assign(Object.assign({},a),{d:this.getHullPath(e)})}getPadding(){let{graph:e}=this.context;return this.hullMemberIds.reduce((t,n)=>{let{halfExtents:r}=e.getElementRenderBounds(n),i=Math.max(r[0],r[1]);return Math.max(t,i)},0)+this.options.padding}addMember(e){let t=Array.isArray(e)?e:[e];this.options.members=[...new Set([...this.options.members,...t])],this.shape.update({d:this.getHullPath()})}removeMember(e){let t=Array.isArray(e)?e:[e];this.options.members=this.options.members.filter(e=>!t.includes(e)),t.some(e=>this.hullMemberIds.includes(e))&&this.shape.update({d:this.getHullPath()})}updateMember(e){this.options.members=L(e)?e(this.options.members):e,this.shape.update(this.getHullStyle(!0))}getMember(){return this.options.members}destroy(){this.unbindEvents(),this.shape.destroy(),this.hullMemberIds=[],super.destroy()}};IZ.defaultOptions={members:[],padding:10,corner:`rounded`,concavity:1/0,fill:`lightblue`,fillOpacity:.2,labelOpacity:1,stroke:`blue`,strokeOpacity:.2};function LZ(e,t){t(e),e.children&&e.children.forEach(function(e){e&&LZ(e,t)})}function RZ(e){BZ(e,!0)}function zZ(e){BZ(e,!1)}function BZ(e,t){var n=t?`visible`:`hidden`;LZ(e,function(e){e.attr(`visibility`,n)})}H();var VZ=function(e){ar(t,e);function t(){var t=[...arguments],n=e.apply(this,B([],z(t),!1))||this;return n.isMutationObserved=!0,n.addEventListener(ad.INSERTED,function(){zZ(n)}),n}return t}(af);function HZ(e){var t=e.appendChild(new VZ({class:`offscreen`}));return zZ(t),t}function UZ(e){for(var t=e;t;){if(t.className===`offscreen`)return!0;t=t.parent}return!1}H();var WZ=function(e){ar(t,e);function t(t){t===void 0&&(t={});var n=t.style,r=or(t,[`style`]);return e.call(this,V({style:V({text:``,fill:`black`,fontFamily:`sans-serif`,fontSize:16,fontStyle:`normal`,fontVariant:`normal`,fontWeight:`normal`,lineWidth:1,textAlign:`start`,textBaseline:`middle`},n)},r))||this}return Object.defineProperty(t.prototype,`offscreenGroup`,{get:function(){return this._offscreen||=HZ(this),this._offscreen},enumerable:!1,configurable:!0}),t.prototype.disconnectedCallback=function(){var e;(e=this._offscreen)==null||e.destroy()},t}(yf);function GZ(e){return e*Math.PI/180}function KZ(e){return Number((e*180/Math.PI).toPrecision(5))}var qZ=function(){function e(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),this.x=0,this.y=0,this.width=0,this.height=0,this.x=e,this.y=t,this.width=n,this.height=r}return Object.defineProperty(e.prototype,`bottom`,{get:function(){return this.y+this.height},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`left`,{get:function(){return this.x},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`right`,{get:function(){return this.x+this.width},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`top`,{get:function(){return this.y},enumerable:!1,configurable:!0}),e.fromRect=function(t){return new e(t.x,t.y,t.width,t.height)},e.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}},e.prototype.isPointIn=function(e,t){return e>=this.left&&e<=this.right&&t>=this.top&&t<=this.bottom},e}();H();function JZ(e,t){return L(e)?e.apply(void 0,B([],z(t),!1)):e}H();var YZ=function(e,t){var n=function(e){return`${t}-${e}`},r=Object.fromEntries(Object.entries(e).map(function(e){var t=z(e,2),r=t[0],i=t[1],a=n(i);return[r,{name:a,class:`.${a}`,id:`#${a}`,toString:function(){return a}}]}));return Object.assign(r,{prefix:n}),r};H();var XZ=5,ZZ=function(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=XZ),Object.entries(t).forEach(function(i){var a=z(i,2),o=a[0],s=a[1],c=e;Object.prototype.hasOwnProperty.call(t,o)&&(s?an(s)?(an(e[o])||(c[o]={}),n<r?ZZ(e[o],s,n+1,r):c[o]=t[o]):Qt(s)?(c[o]=[],c[o]=c[o].concat(s)):c[o]=s:c[o]=s)})},QZ=function(e){for(var t=[...arguments].slice(1),n=0;n<t.length;n+=1)ZZ(e,t[n]);return e},$Z=function(e){return e!==void 0&&e!=null&&!Number.isNaN(e)},eQ,tQ,nQ=Bn(function(e,t){var n=t.fontSize,r=t.fontFamily,i=t.fontWeight,a=t.fontStyle,o=t.fontVariant;return tQ?tQ(e,n):(eQ||=Y.offscreenCanvasCreator.getOrCreateContext(void 0),eQ.font=[a,o,i,`${n}px`,r].join(` `),eQ.measureText(e).width)},function(e,t){return[e,Object.values(t||rQ(e)).join()].join(``)},4096),rQ=function(e){var t=e.style.fontFamily||`sans-serif`,n=e.style.fontWeight||`normal`,r=e.style.fontStyle||`normal`,i=e.style.fontVariant,a=e.style.fontSize;return a=typeof a==`object`?a.value:a,{fontSize:a,fontFamily:t,fontWeight:n,fontStyle:r,fontVariant:i}};function iQ(e){return e.nodeName===`text`?e:e.nodeName===`g`&&e.children.length===1&&e.children[0].nodeName===`text`?e.children[0]:null}function aQ(e,t){var n=iQ(e);n&&n.attr(t)}function oQ(e,t,n){n===void 0&&(n=`...`),aQ(e,{wordWrap:!0,wordWrapWidth:t,maxLines:1,textOverflow:n})}function sQ(e,t,n,r){n===void 0&&(n=2),r===void 0&&(r=`top`),aQ(e,{wordWrap:!0,wordWrapWidth:t,maxLines:n,textBaseline:r})}function cQ(e){var t=e.nativeEvent,n=e.touches,r=e.clientX,i=e.clientY;if(t)return[t.clientX,t.clientY];if(n){var a=n[0];return[a.clientX,a.clientY]}return typeof r==`number`&&typeof i==`number`?[r,i]:[0,0]}H();function lQ(e){return typeof e==`function`?e():un(e)||hn(e)?new WZ({style:{text:String(e)}}):e}function uQ(e,t){return typeof e==`function`?e():un(e)||hn(e)?new sf({style:V(V({pointerEvents:`auto`},t),{innerHTML:e})}):e}function dQ(e,t){return e.reduce(function(e,n){return(e[n[t]]=e[n[t]]||[]).push(n),e},{})}function fQ(e,t,n,r,i){return r===void 0&&(r=!0),i===void 0&&(i=function(e){e.node().removeChildren()}),e?n(t):(r&&i(t),null)}function pQ(e,t,n,r,i){return r===void 0&&(r=!0),i===void 0&&(i=!1),r&&e===t||i&&e===n?!0:e>t&&e<n}H();var mQ=function(e,t){return function(n){return e*(1-n)+t*n}};function hQ(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0;return function(i){var a=Array(r),o=Array(n),s=0;for(s=0;s<r;++s)a[s]=_Q(e[s],t[s]);for(;s<n;++s)o[s]=t[s];for(s=0;s<r;++s)o[s]=a[s](i);return o}}function gQ(e,t){e===void 0&&(e={}),t===void 0&&(t={});var n={},r={};return Object.entries(t).forEach(function(t){var i=z(t,2),a=i[0],o=i[1];a in e?n[a]=_Q(e[a],o):r[a]=o}),function(e){return Object.entries(n).forEach(function(t){var n=z(t,2),i=n[0],a=n[1];return r[i]=a(e)}),r}}function _Q(e,t){return typeof e==`number`&&typeof t==`number`?mQ(e,t):Array.isArray(e)&&Array.isArray(t)?hQ(e,t):typeof e==`object`&&typeof t==`object`?gQ(e,t):(function(t){return e})}H();function vQ(e,t,n,r){if(!r)return e.attr(`__keyframe_data__`,n),null;var i=r.duration,a=i===void 0?0:i,o=_Q(t,n),s=Math.ceil(a/16),c=Array(s).fill(0).map(function(e,t,n){return{__keyframe_data__:o(t/(n.length-1))}});return e.animate(c,V({fill:`both`},r))}function yQ(e,t){return[e[0]*t,e[1]*t]}function bQ(e,t){return[e[0]+t[0],e[1]+t[1]]}function xQ(e,t){return[e[0]-t[0],e[1]-t[1]]}function SQ(e,t){return[Math.min(e[0],t[0]),Math.min(e[1],t[1])]}function CQ(e,t){return[Math.max(e[0],t[0]),Math.max(e[1],t[1])]}function wQ(e,t){return Math.sqrt((e[0]-t[0])**2+(e[1]-t[1])**2)}function TQ(e){if(e[0]===0&&e[1]===0)return[0,0];var t=Math.sqrt(e[0]**2+e[1]**2);return[e[0]/t,e[1]/t]}function EQ(e,t){return t?[e[1],-e[0]]:[-e[1],e[0]]}function DQ(e,t){return+e.toPrecision(t)}function OQ(e,t){var n={},r=Array.isArray(t)?t:[t];for(var i in e)r.includes(i)||(n[i]=e[i]);return n}H();function kQ(e,t,n,r){var i,a=[],o=!!r,s,c,l=[1/0,1/0],u=[-1/0,-1/0],d,f,p;if(o){i=z(r,2),l=i[0],u=i[1];for(var m=0,h=e.length;m<h;m+=1){var g=e[m];l=SQ(l,g),u=CQ(u,g)}}for(var m=0,_=e.length;m<_;m+=1){var g=e[m];if(m===0&&!n)p=g;else if(m===_-1&&!n)f=g,a.push(p),a.push(f);else{s=e[[m?m-1:_-1,m-1][+!n]],c=e[n?(m+1)%_:m+1];var v=[0,0];v=xQ(c,s),v=yQ(v,t);var y=wQ(g,s),b=wQ(g,c),x=y+b;x!==0&&(y/=x,b/=x);var S=yQ(v,-y),C=yQ(v,b);f=bQ(g,S),d=bQ(g,C),d=SQ(d,CQ(c,g)),d=CQ(d,SQ(c,g)),S=xQ(d,g),S=yQ(S,-y/b),f=bQ(g,S),f=SQ(f,CQ(s,g)),f=CQ(f,SQ(s,g)),C=xQ(g,f),C=yQ(C,b/y),d=bQ(g,C),o&&(f=CQ(f,l),f=SQ(f,u),d=CQ(d,l),d=SQ(d,u)),a.push(p),a.push(f),p=d}}return n&&a.push(a.shift()),a}function AQ(e,t,n){var r;t===void 0&&(t=!1),n===void 0&&(n=[[0,0],[1,1]]);for(var i=!!t,a=[],o=0,s=e.length;o<s;o+=2)a.push([e[o],e[o+1]]);for(var c=kQ(a,.4,i,n),l=a.length,u=[],d,f,p,o=0;o<l-1;o+=1)d=c[o*2],f=c[o*2+1],p=a[o+1],u.push([`C`,d[0],d[1],f[0],f[1],p[0],p[1]]);return i&&(d=c[l],f=c[l+1],r=z(a,1),p=r[0],u.push([`C`,d[0],d[1],f[0],f[1],p[0],p[1]])),u}var jQ=`$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`.split(`.`);function MQ(e){return jQ.includes(e)}function NQ(e){var t={};for(var n in e)MQ(n)&&(t[n]=e[n]);return t}function PQ(e,t){if(e.length<=t)return e;for(var n=Math.floor(e.length/t),r=[],i=0;i<e.length;i+=n)r.push(e[i]);return r}function FQ(e,t,n){n===void 0&&(n=!1);var r=e.getBBox(),i=r.width,a=r.height,o=t/Math.max(i,a);return n&&(e.style.transform=`scale(${o})`),o}function IQ(e,t){var n=new Map;return e.forEach(function(e){var r=t(e);n.has(r)||n.set(r,[]),n.get(r).push(e)}),n}H();function LQ(e){throw Error(e)}var RQ=function(){function e(e,n,r,i,a,o,s){e===void 0&&(e=null),n===void 0&&(n=null),r===void 0&&(r=null),i===void 0&&(i=null),a===void 0&&(a=[null,null,null,null,null]),o===void 0&&(o=[]),s===void 0&&(s=[]),t.add(this),this._elements=Array.from(e),this._data=n,this._parent=r,this._document=i,this._enter=a[0],this._update=a[1],this._exit=a[2],this._merge=a[3],this._split=a[4],this._transitions=o,this._facetElements=s}e.prototype.selectAll=function(e){return new n(typeof e==`string`?this._parent.querySelectorAll(e):e,null,this._elements[0],this._document)},e.prototype.selectFacetAll=function(e){var t=typeof e==`string`?this._parent.querySelectorAll(e):e;return new n(this._elements,null,this._parent,this._document,void 0,void 0,t)},e.prototype.select=function(e){var t=typeof e==`string`?this._parent.querySelectorAll(e)[0]||null:e;return new n([t],null,t,this._document)},e.prototype.append=function(e){var t=this,r=typeof e==`function`?e:function(){return t.createElement(e)},i=[];if(this._data!==null){for(var a=0;a<this._data.length;a++){var o=this._data[a],s=z(Array.isArray(o)?o:[o,null],2),c=s[0],l=s[1],u=r(c,a);u.__data__=c,l!==null&&(u.__fromElements__=l),this._parent.appendChild(u),i.push(u)}return new n(i,null,this._parent,this._document)}for(var a=0;a<this._elements.length;a++){var d=this._elements[a],c=d.__data__,u=r(c,a);d.appendChild(u),i.push(u)}return new n(i,null,i[0],this._document)},e.prototype.maybeAppend=function(e,n){var i=Dr(this,t,`m`,r).call(this,e[0]===`#`?e:`#${e}`,n);return i.attr(`id`,e),i},e.prototype.maybeAppendByClassName=function(e,n){var i=e.toString(),a=Dr(this,t,`m`,r).call(this,i[0]===`.`?i:`.${i}`,n);return a.attr(`className`,i),a},e.prototype.maybeAppendByName=function(e,n){var i=Dr(this,t,`m`,r).call(this,`[name="${e}"]`,n);return i.attr(`name`,e),i},e.prototype.data=function(e,t,r){var i,a;t===void 0&&(t=function(e){return e}),r===void 0&&(r=function(){return null});for(var o=[],s=[],c=new Set(this._elements),l=[],u=new Set,d=new Map(this._elements.map(function(e,n){return[t(e.__data__,n),e]})),f=new Map(this._facetElements.map(function(e,n){return[t(e.__data__,n),e]})),p=IQ(this._elements,function(e){return r(e.__data__)}),m=0;m<e.length;m++){var h=e[m],g=t(h,m),_=r(h,m);if(d.has(g)){var v=d.get(g);v.__data__=h,v.__facet__=!1,s.push(v),c.delete(v),d.delete(g)}else if(f.has(g)){var v=f.get(g);v.__data__=h,v.__facet__=!0,s.push(v),f.delete(g)}else if(p.has(g)){var y=p.get(g);l.push([h,y]);try{for(var b=(i=void 0,_r(y)),x=b.next();!x.done;x=b.next()){var v=x.value;c.delete(v)}}catch(e){i={error:e}}finally{try{x&&!x.done&&(a=b.return)&&a.call(b)}finally{if(i)throw i.error}}p.delete(g)}else if(d.has(_)){var v=d.get(_);v.__toData__?v.__toData__.push(h):v.__toData__=[h],u.add(v),c.delete(v)}else o.push(h)}var S=[new n([],o,this._parent,this._document),new n(s,null,this._parent,this._document),new n(c,null,this._parent,this._document),new n([],l,this._parent,this._document),new n(u,null,this._parent,this._document)];return new n(this._elements,null,this._parent,this._document,S)},e.prototype.merge=function(e){var t=B(B([],z(this._elements),!1),z(e._elements),!1),r=B(B([],z(this._transitions),!1),z(e._transitions),!1);return new n(t,null,this._parent,this._document,void 0,r)},e.prototype.createElement=function(e){if(this._document)return this._document.createElement(e,{});var t=n.registry[e];return t?new t:LQ(`Unknown node type: ${e}`)},e.prototype.join=function(e,t,n,r,i){e===void 0&&(e=function(e){return e}),t===void 0&&(t=function(e){return e}),n===void 0&&(n=function(e){return e.remove()}),r===void 0&&(r=function(e){return e}),i===void 0&&(i=function(e){return e.remove()});var a=e(this._enter),o=t(this._update),s=n(this._exit),c=r(this._merge),l=i(this._split);return o.merge(a).merge(s).merge(c).merge(l)},e.prototype.remove=function(){for(var e=function(e){var n=t._elements[e],r=t._transitions[e];r?r.then(function(){return n.remove()}):n.remove()},t=this,r=0;r<this._elements.length;r++)e(r);return new n([],null,this._parent,this._document,void 0,this._transitions)},e.prototype.each=function(e){for(var t=0;t<this._elements.length;t++){var n=this._elements[t],r=n.__data__;e.call(n,r,t)}return this},e.prototype.attr=function(e,t){var n=typeof t==`function`?t:function(){return t};return this.each(function(r,i){t!==void 0&&(this[e]=n.call(this,r,i))})},e.prototype.style=function(e,t,n){n===void 0&&(n=!0);var r=typeof t!=`function`||!n?function(){return t}:t;return this.each(function(n,i){t!==void 0&&(this.style[e]=r.call(this,n,i))})},e.prototype.styles=function(e,t){return e===void 0&&(e={}),t===void 0&&(t=!0),this.each(function(n,r){var i=this;Object.entries(e).forEach(function(e){var a=z(e,2),o=a[0],s=a[1],c=typeof s!=`function`||!t?function(){return s}:s;s!==void 0&&i.attr(o,c.call(i,n,r))})})},e.prototype.update=function(e,t){t===void 0&&(t=!0);var n=typeof e!=`function`||!t?function(){return e}:e;return this.each(function(t,r){e&&this.update&&this.update(n.call(this,t,r))})},e.prototype.maybeUpdate=function(e,t){t===void 0&&(t=!0);var n=typeof e!=`function`||!t?function(){return e}:e;return this.each(function(t,r){e&&this.update&&this.update(n.call(this,t,r))})},e.prototype.transition=function(e){this._transitions;var t=Array(this._elements.length);return this.each(function(n,r){t[r]=e.call(this,n,r)}),this._transitions=on(t),this},e.prototype.on=function(e,t){return this.each(function(){this.addEventListener(e,t)}),this},e.prototype.call=function(e){var t=[...arguments].slice(1);return e.call.apply(e,B([this._parent,this],z(t),!1)),this},e.prototype.node=function(){return this._elements[0]},e.prototype.nodes=function(){return this._elements},e.prototype.transitions=function(){return this._transitions.filter(function(e){return!!e})},e.prototype.parent=function(){return this._parent};var t,n=e,r;return t=new WeakSet,r=function(e,t){var r=this._elements[0],i=r.querySelector(e);if(i)return new n([i],null,this._parent,this._document);var a=typeof t==`string`?this.createElement(t):t();return r.appendChild(a),new n([a],null,this._parent,this._document)},e.registry={g:af,rect:_f,circle:$d,path:ff,text:WZ,ellipse:nf,image:cf,line:uf,polygon:mf,polyline:gf,html:sf},e}();function $(e){return new RQ([e],null,e,e.ownerDocument)}function zQ(e,t,n){return e.querySelector(t)?$(e).select(t):$(e).append(n)}function BQ(e){if(hn(e))return[e,e,e,e];if(Qt(e)){var t=e.length;if(t===1)return[e[0],e[0],e[0],e[0]];if(t===2)return[e[0],e[1],e[0],e[1]];if(t===3)return[e[0],e[1],e[2],e[1]];if(t===4)return e}return[0,0,0,0]}H();function VQ(e){var t=e.getLocalBounds(),n=t.min,r=t.max,i=z([n,r],2),a=z(i[0],2),o=a[0],s=a[1],c=z(i[1],2),l=c[0],u=c[1];return{x:o,y:s,width:l-o,height:u-s,left:o,bottom:u,top:s,right:l}}function HQ(e,t){var n=z(e,2),r=n[0],i=n[1],a=z(t,2),o=a[0],s=a[1];return r!==o&&i===s}function UQ(e,t){var n,r,i=t.attributes;try{for(var a=_r(Object.entries(i)),o=a.next();!o.done;o=a.next()){var s=z(o.value,2),c=s[0],l=s[1];c!==`id`&&c!==`className`&&e.attr(c,l)}}catch(e){n={error:e}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}}function WQ(e){return e.toString().charAt(0).toUpperCase()+e.toString().slice(1)}function GQ(e){return e.toString().charAt(0).toLowerCase()+e.toString().slice(1)}function KQ(e,t){return`${t}${WQ(e)}`}function qQ(e,t,n){n===void 0&&(n=!0);var r=t||e.match(/^([a-z][a-z0-9]+)/)?.[0]||``,i=e.replace(RegExp(`^(${r})`),``);return n?GQ(i):i}H();function JQ(e,t){Object.entries(t).forEach(function(t){var n=z(t,2),r=n[0],i=n[1];B([e],z(e.querySelectorAll(r)),!1).filter(function(e){return e.matches(r)}).forEach(function(e){if(e){var t=e;t.style.cssText+=Object.entries(i).reduce(function(e,t){return`${e}${t.join(`:`)};`},``)}})})}var YQ=function(e,t){if(!e?.startsWith(t))return!1;var n=e[t.length];return n>=`A`&&n<=`Z`};function XQ(e,t,n){n===void 0&&(n=!1);var r={};return Object.entries(e).forEach(function(e){var i=z(e,2),a=i[0],o=i[1];if(!(a===`className`||a===`class`)){if(YQ(a,`show`)&&YQ(qQ(a,`show`),t)!==n)a===KQ(t,`show`)?r[a]=o:r[a.replace(new RegExp(WQ(t)),``)]=o;else if(!YQ(a,`show`)&&YQ(a,t)!==n){var s=qQ(a,t);s===`filter`&&typeof o==`function`||(r[s]=o)}}}),r}function ZQ(e,t){return Object.entries(e).reduce(function(e,n){var r=z(n,2),i=r[0],a=r[1];return i.startsWith(`show`)?e[`show${t}${i.slice(4)}`]=a:e[`${t}${WQ(i)}`]=a,e},{})}function QQ(e,t){t===void 0&&(t=[`x`,`y`,`class`,`className`]);var n=[`transform`,`transformOrigin`,`anchor`,`visibility`,`pointerEvents`,`zIndex`,`cursor`,`clipPath`,`clipPathTargets`,`offsetPath`,`offsetPathTargets`,`offsetDistance`,`draggable`,`droppable`],r={},i={};return Object.entries(e).forEach(function(e){var a=z(e,2),o=a[0],s=a[1];t.includes(o)||(n.indexOf(o)===-1?r[o]=s:i[o]=s)}),[r,i]}function $Q(e,t){var n={YYYY:e.getFullYear(),MM:e.getMonth()+1,DD:e.getDate(),HH:e.getHours(),mm:e.getMinutes(),ss:e.getSeconds()},r=t;return Object.keys(n).forEach(function(e){var t=n[e];r=r.replace(e,e===`YYYY`?`${t}`:`${t}`.padStart(2,`0`))}),r}H();function e$(e,t,n){var r=e.getBBox(),i=r.width,a=r.height,o=z([t,n].map(function(e,t){return e.includes(`%`)?parseFloat(e.match(/[+-]?([0-9]*[.])?[0-9]+/)?.[0]||`0`)/100*(t===0?i:a):e}),2);return[o[0],o[1]]}function t$(e,t){if(t)try{var n=t.replace(/translate\(([+-]*[\d]+[%]*),[ ]*([+-]*[\d]+[%]*)\)/g,function(t,n,r){return`translate(${e$(e,n,r)})`});e.attr(`transform`,n)}catch{}}function n$(e){return e[0]?.map(function(t,n){return e.map(function(e){return e[n]})})||[]}H();var r$=function(e,t){if(t==null){e.innerHTML=``;return}e.replaceChildren?Array.isArray(t)?e.replaceChildren.apply(e,B([],z(t),!1)):e.replaceChildren(t):(e.innerHTML=``,Array.isArray(t)?t.forEach(function(t){return e.appendChild(t)}):e.appendChild(t))};function i$(e){return/\S+-\S+/g.test(e)?e.split(`-`).map(function(e){return e[0]}):e.length>2?[e[0]]:e.split(``)}H();var a$=function(e){var t=new DOMParser().parseFromString(e,`text/html`).body.firstElementChild;if(console.log(t?.getClientRects(),11),!t)return 0;var n=t.getAttribute(`style`)||``,r=Object.fromEntries(n.split(`;`).map(function(e){return e.trim()}).filter(function(e){return e.includes(`:`)}).map(function(e){var t=z(e.split(`:`).map(function(e){return e.trim()}),2),n=t[0],r=t[1];return[n.toLowerCase(),r]})),i=function(e){if(!e)return 0;var t=e.match(/([\d.]+)px/);return t?parseFloat(t[1]):0};if(r.height)return i(r.height);var a=i(r[`font-size`])||16,o=r[`line-height`],s=!o||o===`normal`?1.2*a:o.endsWith(`px`)?i(o):/^[\d.]+$/.test(o)?parseFloat(o)*a:a,c=i(r[`padding-top`]),l=i(r[`padding-bottom`]);if(r.padding){var u=r.padding.split(/\s+/).map(i);u.length===1||u.length===2?(c=u[0],l=u[0]):(u.length===3||u.length===4)&&(c=u[0],l=u[2])}var d=i(r[`border-top-width`]),f=i(r[`border-bottom-width`]);if(r.border){var p=r.border.match(/([\d.]+)px/);p&&(d=parseFloat(p[1]),f=parseFloat(p[1]))}if(r[`border-width`]){var u=r[`border-width`].split(/\s+/).map(i);u.length===1||u.length===2?(d=u[0],f=u[0]):(u.length===3||u.length===4)&&(d=u[0],f=u[2])}return s+c+l+d+f};H();function o$(){BZ(this,this.attributes.visibility!==`hidden`)}var s$=function(e){ar(t,e);function t(t,n){n===void 0&&(n={});var r=e.call(this,QZ({},{style:n},t))||this;return r.initialized=!1,r._defaultOptions=n,r}return Object.defineProperty(t.prototype,`offscreenGroup`,{get:function(){return this._offscreen||=HZ(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.destroy()},t.prototype.attributeChangedCallback=function(e){e===`visibility`&&o$.call(this)},t.prototype.update=function(e,t){return this.attr(QZ({},this.attributes,e||{})),this.render?.call(this,this.attributes,this,t)},t.prototype.clear=function(){this.removeChildren()},t.prototype.bindEvents=function(e,t){},t.prototype.getSubShapeStyle=function(e){return e.x,e.y,e.transform,e.transformOrigin,e.class,e.className,e.zIndex,or(e,[`x`,`y`,`transform`,`transformOrigin`,`class`,`className`,`zIndex`])},t}(tf),c$=function(e,t,n){return[[`M`,e-n,t],[`A`,n,n,0,1,0,e+n,t],[`A`,n,n,0,1,0,e-n,t],[`Z`]]},l$=c$,u$=function(e,t,n){return[[`M`,e-n,t-n],[`L`,e+n,t-n],[`L`,e+n,t+n],[`L`,e-n,t+n],[`Z`]]},d$=function(e,t,n){return[[`M`,e-n,t],[`L`,e,t-n],[`L`,e+n,t],[`L`,e,t+n],[`Z`]]},f$=function(e,t,n){var r=n*Math.sin(1/3*Math.PI);return[[`M`,e-n,t+r],[`L`,e,t-r],[`L`,e+n,t+r],[`Z`]]},p$=function(e,t,n){var r=n*Math.sin(1/3*Math.PI);return[[`M`,e-n,t-r],[`L`,e+n,t-r],[`L`,e,t+r],[`Z`]]},m$=function(e,t,n){var r=n/2*Math.sqrt(3);return[[`M`,e,t-n],[`L`,e+r,t-n/2],[`L`,e+r,t+n/2],[`L`,e,t+n],[`L`,e-r,t+n/2],[`L`,e-r,t-n/2],[`Z`]]},h$=function(e,t,n){var r=n-1.5;return[[`M`,e-n,t-r],[`L`,e+n,t+r],[`L`,e+n,t-r],[`L`,e-n,t+r],[`Z`]]},g$=function(e,t,n){return[[`M`,e,t+n],[`L`,e,t-n]]},_$=function(e,t,n){return[[`M`,e-n,t-n],[`L`,e+n,t+n],[`M`,e+n,t-n],[`L`,e-n,t+n]]},v$=function(e,t,n){return[[`M`,e-n/2,t-n],[`L`,e+n/2,t-n],[`M`,e,t-n],[`L`,e,t+n],[`M`,e-n/2,t+n],[`L`,e+n/2,t+n]]},y$=function(e,t,n){return[[`M`,e-n,t],[`L`,e+n,t],[`M`,e,t-n],[`L`,e,t+n]]},b$=function(e,t,n){return[[`M`,e-n,t],[`L`,e+n,t]]},x$=function(e,t,n){return[[`M`,e-n,t],[`L`,e+n,t]]},S$=x$,C$=function(e,t,n){return[[`M`,e-n,t],[`A`,n/2,n/2,0,1,1,e,t],[`A`,n/2,n/2,0,1,0,e+n,t]]},w$=function(e,t,n){return[[`M`,e-n-1,t-2.5],[`L`,e,t-2.5],[`L`,e,t+2.5],[`L`,e+n+1,t+2.5]]},T$=function(e,t,n){return[[`M`,e-n-1,t+2.5],[`L`,e,t+2.5],[`L`,e,t-2.5],[`L`,e+n+1,t-2.5]]},E$=function(e,t,n){return[[`M`,e-(n+1),t+2.5],[`L`,e-n/2,t+2.5],[`L`,e-n/2,t-2.5],[`L`,e+n/2,t-2.5],[`L`,e+n/2,t+2.5],[`L`,e+n+1,t+2.5]]};function D$(e,t){return[[`M`,e-5,t+2.5],[`L`,e-5,t],[`L`,e,t],[`L`,e,t-3],[`L`,e,t+3],[`L`,e+6.5,t+3]]}var O$=function(e,t,n){return[[`M`,e-n,t-n],[`L`,e+n,t],[`L`,e-n,t+n],[`Z`]]},k$=function(e,t,n){var r=n,i=n*.2,a=n*.7;return[[`M`,e-r,t],[`A`,r,r,0,1,0,e+r,t],[`A`,r,r,0,1,0,e-r,t],[`Z`],[`M`,e-a,t],[`L`,e-i,t],[`M`,e+i,t],[`L`,e+a,t],[`M`,e,t-a],[`L`,e,t-i],[`M`,e,t+i],[`L`,e,t+a]]};function A$(e){var t=`default`;if($t(e)&&e instanceof Image)t=`image`;else if(L(e))t=`symbol`;else if(un(e)){var n=RegExp(`data:(image|text)`);t=e.match(n)?`base64`:/^(https?:\/\/(([a-zA-Z0-9]+-?)+[a-zA-Z0-9]+\.)+[a-zA-Z]+)(:\d+)?(\/.*)?(\?.*)?(#.*)?$/.test(e)?`url`:`symbol`}return t}H();function j$(e){var t=A$(e);return[`base64`,`url`,`image`].includes(t)?`image`:e&&t===`symbol`?`path`:null}var M$=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(e,n){var r=e.x,i=r===void 0?0:r,a=e.y,o=a===void 0?0:a,s=this.getSubShapeStyle(e),c=s.symbol,l=s.size,u=l===void 0?16:l,d=or(s,[`symbol`,`size`]),f=j$(c);fQ(!!f,$(n),function(e){e.maybeAppendByClassName(`marker`,f).attr(`className`,`marker ${f}-marker`).call(function(e){if(f===`image`){var n=u*2;e.styles({img:c,width:n,height:n,x:i-u,y:o-u})}else{var n=u/2,r=L(c)?c:t.getSymbol(c);e.styles(V({d:r?.(i,o,n)},d))}})})},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}(s$);M$.registerSymbol(`cross`,_$),M$.registerSymbol(`hyphen`,b$),M$.registerSymbol(`line`,g$),M$.registerSymbol(`plus`,y$),M$.registerSymbol(`tick`,v$),M$.registerSymbol(`circle`,c$),M$.registerSymbol(`point`,l$),M$.registerSymbol(`bowtie`,h$),M$.registerSymbol(`hexagon`,m$),M$.registerSymbol(`square`,u$),M$.registerSymbol(`diamond`,d$),M$.registerSymbol(`triangle`,f$),M$.registerSymbol(`triangle-down`,p$),M$.registerSymbol(`line`,g$),M$.registerSymbol(`dot`,x$),M$.registerSymbol(`dash`,S$),M$.registerSymbol(`smooth`,C$),M$.registerSymbol(`hv`,w$),M$.registerSymbol(`vh`,T$),M$.registerSymbol(`hvh`,E$),M$.registerSymbol(`vhv`,D$),M$.registerSymbol(`focus`,k$);function N$(e,...t){return t.reduce((e,t)=>n=>e(t(n)),e)}function P$(e,t){return t-e?n=>(n-e)/(t-e):e=>.5}function F$(e,t){let n=t<e?t:e,r=e>t?e:t;return e=>Math.min(Math.max(n,e),r)}function I$(e,t,n,r,i){let a=n||0,o=r||e.length,s=i||(e=>e);for(;a<o;){let n=Math.floor((a+o)/2);s(e[n])>t?o=n:a=n+1}return a}var L$=Math.sqrt(50),R$=Math.sqrt(10),z$=Math.sqrt(2);function B$(e,t,n){let r=(t-e)/Math.max(0,n),i=Math.floor(Math.log(r)/Math.LN10),a=r/10**i;return i>=0?(a>=L$?10:a>=R$?5:a>=z$?2:1)*10**i:-(10**-i)/(a>=L$?10:a>=R$?5:a>=z$?2:1)}var V$=(e,t,n=5)=>{let r=[e,t],i=0,a=r.length-1,o=r[i],s=r[a],c;return s<o&&([o,s]=[s,o],[i,a]=[a,i]),c=B$(o,s,n),c>0?(o=Math.floor(o/c)*c,s=Math.ceil(s/c)*c,c=B$(o,s,n)):c<0&&(o=Math.ceil(o*c)/c,s=Math.floor(s*c)/c,c=B$(o,s,n)),c>0?(r[i]=Math.floor(o/c)*c,r[a]=Math.ceil(s/c)*c):c<0&&(r[i]=Math.ceil(o*c)/c,r[a]=Math.floor(s*c)/c),r};function H$(e){return!Mn(e)&&!kn(e)&&!Number.isNaN(e)}var U$=r(((e,t)=>{t.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]}})),W$=r(((e,t)=>{t.exports=function(e){return!e||typeof e==`string`?!1:e instanceof Array||Array.isArray(e)||e.length>=0&&(e.splice instanceof Function||Object.getOwnPropertyDescriptor(e,e.length-1)&&e.constructor.name!==`String`)}})),G$=r(((e,t)=>{var n=W$(),r=Array.prototype.concat,i=Array.prototype.slice,a=t.exports=function(e){for(var t=[],a=0,o=e.length;a<o;a++){var s=e[a];n(s)?t=r.call(t,i.call(s)):t.push(s)}return t};a.wrap=function(e){return function(){return e(a(arguments))}}})),K$=e(r(((e,t)=>{var n=U$(),r=G$(),i=Object.hasOwnProperty,a=Object.create(null);for(var o in n)i.call(n,o)&&(a[n[o]]=o);var s=t.exports={to:{},get:{}};s.get=function(e){var t=e.substring(0,3).toLowerCase(),n,r;switch(t){case`hsl`:n=s.get.hsl(e),r=`hsl`;break;case`hwb`:n=s.get.hwb(e),r=`hwb`;break;default:n=s.get.rgb(e),r=`rgb`;break}return n?{model:r,value:n}:null},s.get.rgb=function(e){if(!e)return null;var t=/^#([a-f0-9]{3,4})$/i,r=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,a=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,o=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,s=/^(\w+)$/,l=[0,0,0,1],u,d,f;if(u=e.match(r)){for(f=u[2],u=u[1],d=0;d<3;d++){var p=d*2;l[d]=parseInt(u.slice(p,p+2),16)}f&&(l[3]=parseInt(f,16)/255)}else if(u=e.match(t)){for(u=u[1],f=u[3],d=0;d<3;d++)l[d]=parseInt(u[d]+u[d],16);f&&(l[3]=parseInt(f+f,16)/255)}else if(u=e.match(a)){for(d=0;d<3;d++)l[d]=parseInt(u[d+1],0);u[4]&&(u[5]?l[3]=parseFloat(u[4])*.01:l[3]=parseFloat(u[4]))}else if(u=e.match(o)){for(d=0;d<3;d++)l[d]=Math.round(parseFloat(u[d+1])*2.55);u[4]&&(u[5]?l[3]=parseFloat(u[4])*.01:l[3]=parseFloat(u[4]))}else if(u=e.match(s))return u[1]===`transparent`?[0,0,0,0]:i.call(n,u[1])?(l=n[u[1]],l[3]=1,l):null;else return null;for(d=0;d<3;d++)l[d]=c(l[d],0,255);return l[3]=c(l[3],0,1),l},s.get.hsl=function(e){if(!e)return null;var t=e.match(/^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*)?\)$/);if(t){var n=parseFloat(t[4]);return[(parseFloat(t[1])%360+360)%360,c(parseFloat(t[2]),0,100),c(parseFloat(t[3]),0,100),c(isNaN(n)?1:n,0,1)]}return null},s.get.hwb=function(e){if(!e)return null;var t=e.match(/^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*)?\)$/);if(t){var n=parseFloat(t[4]);return[(parseFloat(t[1])%360+360)%360,c(parseFloat(t[2]),0,100),c(parseFloat(t[3]),0,100),c(isNaN(n)?1:n,0,1)]}return null},s.to.hex=function(){var e=r(arguments);return`#`+l(e[0])+l(e[1])+l(e[2])+(e[3]<1?l(Math.round(e[3]*255)):``)},s.to.rgb=function(){var e=r(arguments);return e.length<4||e[3]===1?`rgb(`+Math.round(e[0])+`, `+Math.round(e[1])+`, `+Math.round(e[2])+`)`:`rgba(`+Math.round(e[0])+`, `+Math.round(e[1])+`, `+Math.round(e[2])+`, `+e[3]+`)`},s.to.rgb.percent=function(){var e=r(arguments),t=Math.round(e[0]/255*100),n=Math.round(e[1]/255*100),i=Math.round(e[2]/255*100);return e.length<4||e[3]===1?`rgb(`+t+`%, `+n+`%, `+i+`%)`:`rgba(`+t+`%, `+n+`%, `+i+`%, `+e[3]+`)`},s.to.hsl=function(){var e=r(arguments);return e.length<4||e[3]===1?`hsl(`+e[0]+`, `+e[1]+`%, `+e[2]+`%)`:`hsla(`+e[0]+`, `+e[1]+`%, `+e[2]+`%, `+e[3]+`)`},s.to.hwb=function(){var e=r(arguments),t=``;return e.length>=4&&e[3]!==1&&(t=`, `+e[3]),`hwb(`+e[0]+`, `+e[1]+`%, `+e[2]+`%`+t+`)`},s.to.keyword=function(e){return a[e.slice(0,3)]};function c(e,t,n){return Math.min(Math.max(t,e),n)}function l(e){var t=Math.round(e).toString(16).toUpperCase();return t.length<2?`0`+t:t}}))());function q$(e,t,n){let r=n;return r<0&&(r+=1),r>1&&--r,r<1/6?e+(t-e)*6*r:r<1/2?t:r<2/3?e+(t-e)*(2/3-r)*6:e}function J$(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100,i=e[3];if(n===0)return[r*255,r*255,r*255,i];let a=r<.5?r*(1+n):r+n-r*n,o=2*r-a,s=q$(o,a,t+1/3),c=q$(o,a,t),l=q$(o,a,t-1/3);return[s*255,c*255,l*255,i]}function Y$(e){let t=K$.default.get(e);if(!t)return null;let{model:n,value:r}=t;return n===`rgb`?r:n===`hsl`?J$(r):null}var X$=(e,t)=>n=>e*(1-n)+t*n,Z$=(e,t)=>{let n=Y$(e),r=Y$(t);return n===null||r===null?n?()=>e:()=>t:e=>{let t=[,,,,];for(let i=0;i<4;i+=1){let a=n[i],o=r[i];t[i]=a*(1-e)+o*e}let[i,a,o,s]=t;return`rgba(${Math.round(i)}, ${Math.round(a)}, ${Math.round(o)}, ${s})`}},Q$=(e,t)=>typeof e==`number`&&typeof t==`number`?X$(e,t):typeof e==`string`&&typeof t==`string`?Z$(e,t):()=>e,$$=(e,t)=>{let n=X$(e,t);return e=>Math.round(n(e))};function e1({map:e,initKey:t},n){let r=t(n);return e.has(r)?e.get(r):n}function t1({map:e,initKey:t},n){let r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function n1({map:e,initKey:t},n){let r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function r1(e){return typeof e==`object`?e.valueOf():e}var i1=class extends Map{constructor(e){if(super(),this.map=new Map,this.initKey=r1,e!==null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(e1({map:this.map,initKey:this.initKey},e))}has(e){return super.has(e1({map:this.map,initKey:this.initKey},e))}set(e,t){return super.set(t1({map:this.map,initKey:this.initKey},e),t)}delete(e){return super.delete(n1({map:this.map,initKey:this.initKey},e))}},a1=class{constructor(e){this.options=Wn({},this.getDefaultOptions()),this.update(e)}getOptions(){return this.options}update(e={}){this.options=Wn({},this.options,e),this.rescale(e)}rescale(e){}},o1=Symbol(`defaultUnknown`);function s1(e,t,n){for(let r=0;r<t.length;r+=1)e.has(t[r])||e.set(n(t[r]),r)}function c1(e){let{value:t,from:n,to:r,mapper:i,notFoundReturn:a}=e,o=i.get(t);if(o===void 0){if(a!==o1)return a;o=n.push(t)-1,i.set(t,o)}return r[o%r.length]}function l1(e){return e instanceof Date?e=>`${e}`:typeof e==`object`?e=>JSON.stringify(e):e=>e}var u1=class e extends a1{getDefaultOptions(){return{domain:[],range:[],unknown:o1}}constructor(e){super(e)}map(e){return this.domainIndexMap.size===0&&s1(this.domainIndexMap,this.getDomain(),this.domainKey),c1({value:this.domainKey(e),mapper:this.domainIndexMap,from:this.getDomain(),to:this.getRange(),notFoundReturn:this.options.unknown})}invert(e){return this.rangeIndexMap.size===0&&s1(this.rangeIndexMap,this.getRange(),this.rangeKey),c1({value:this.rangeKey(e),mapper:this.rangeIndexMap,from:this.getRange(),to:this.getDomain(),notFoundReturn:this.options.unknown})}rescale(e){let[t]=this.options.domain,[n]=this.options.range;if(this.domainKey=l1(t),this.rangeKey=l1(n),!this.rangeIndexMap){this.rangeIndexMap=new Map,this.domainIndexMap=new Map;return}(!e||e.range)&&this.rangeIndexMap.clear(),(!e||e.domain||e.compare)&&(this.domainIndexMap.clear(),this.sortedDomain=void 0)}clone(){return new e(this.options)}getRange(){return this.options.range}getDomain(){if(this.sortedDomain)return this.sortedDomain;let{domain:e,compare:t}=this.options;return this.sortedDomain=t?[...e].sort(t):e,this.sortedDomain}};function d1(e){let t=Math.min(...e);return e.map(e=>e/t)}function f1(e,t){let n=t-e.length;return n>0?[...e,...Array(n).fill(1)]:n<0?e.slice(0,t):e}function p1(e){return Math.round(e*0xe8d4a51000)/0xe8d4a51000}function m1(e){let{domain:t,range:n,paddingOuter:r,paddingInner:i,flex:a,round:o,align:s}=e,c=t.length,l=f1(a,c),[u,d]=n,f=d-u,p=f/(2/c*r+1-1/c*i),m=p*i/c,h=p-c*m,g=d1(l),_=h/g.reduce((e,t)=>e+t),v=new i1(t.map((e,t)=>{let n=g[t]*_;return[e,o?Math.floor(n):n]})),y=new i1(t.map((e,t)=>{let n=g[t]*_+m;return[e,o?Math.floor(n):n]})),b=Array.from(y.values()).reduce((e,t)=>e+t),x=u+(f-(b-b/c*i))*s,S=o?Math.round(x):x,C=Array(c);for(let e=0;e<c;e+=1){C[e]=p1(S);let n=t[e];S+=y.get(n)}return{valueBandWidth:v,valueStep:y,adjustedRange:C}}function h1(e){let{domain:t}=e,n=t.length;if(n===0)return{valueBandWidth:void 0,valueStep:void 0,adjustedRange:[]};if(e.flex?.length)return m1(e);let{range:r,paddingOuter:i,paddingInner:a,round:o,align:s}=e,c,l,u=r[0],d=r[1]-u,f=i*2,p=n-a;c=d/Math.max(1,f+p),o&&(c=Math.floor(c)),u+=(d-c*(n-a))*s,l=c*(1-a),o&&(u=Math.round(u),l=Math.round(l));let m=Array(n).fill(0).map((e,t)=>u+t*c);return{valueStep:c,valueBandWidth:l,adjustedRange:m}}var g1=class e extends u1{getDefaultOptions(){return{domain:[],range:[0,1],align:.5,round:!1,paddingInner:0,paddingOuter:0,padding:0,unknown:o1,flex:[]}}constructor(e){super(e)}clone(){return new e(this.options)}getStep(e){return this.valueStep===void 0?1:typeof this.valueStep==`number`?this.valueStep:e===void 0?Array.from(this.valueStep.values())[0]:this.valueStep.get(e)}getBandWidth(e){return this.valueBandWidth===void 0?1:typeof this.valueBandWidth==`number`?this.valueBandWidth:e===void 0?Array.from(this.valueBandWidth.values())[0]:this.valueBandWidth.get(e)}getRange(){return this.adjustedRange}getPaddingInner(){let{padding:e,paddingInner:t}=this.options;return e>0?e:t}getPaddingOuter(){let{padding:e,paddingOuter:t}=this.options;return e>0?e:t}rescale(){super.rescale();let{align:e,domain:t,range:n,round:r,flex:i}=this.options,{adjustedRange:a,valueBandWidth:o,valueStep:s}=h1({align:e,range:n,round:r,flex:i,paddingInner:this.getPaddingInner(),paddingOuter:this.getPaddingOuter(),domain:t});this.valueStep=s,this.valueBandWidth=o,this.adjustedRange=a}},_1=(e,t,n)=>{let r,i,a=e,o=t;if(a===o&&n>0)return[a];let s=B$(a,o,n);if(s===0||!Number.isFinite(s))return[];if(s>0){a=Math.ceil(a/s),o=Math.floor(o/s),i=Array(r=Math.ceil(o-a+1));for(let e=0;e<r;e+=1)i[e]=(a+e)*s}else{s=-s,a=Math.ceil(a*s),o=Math.floor(o*s),i=Array(r=Math.ceil(o-a+1));for(let e=0;e<r;e+=1)i[e]=(a+e)/s}return i},v1=(e,t,n)=>{let[r,i]=e,[a,o]=t,s,c;return r<i?(s=P$(r,i),c=n(a,o)):(s=P$(i,r),c=n(o,a)),N$(c,s)},y1=(e,t,n)=>{let r=Math.min(e.length,t.length)-1,i=Array(r),a=Array(r),o=e[0]>e[r],s=o?[...e].reverse():e,c=o?[...t].reverse():t;for(let e=0;e<r;e+=1)i[e]=P$(s[e],s[e+1]),a[e]=n(c[e],c[e+1]);return t=>{let n=I$(e,t,1,r)-1,o=i[n],s=a[n];return N$(s,o)(t)}},b1=(e,t,n,r)=>(Math.min(e.length,t.length)>2?y1:v1)(e,t,r?$$:n),x1=class extends a1{getDefaultOptions(){return{domain:[0,1],range:[0,1],nice:!1,clamp:!1,round:!1,interpolate:X$,tickCount:5}}map(e){return H$(e)?this.output(e):this.options.unknown}invert(e){return H$(e)?this.input(e):this.options.unknown}nice(){if(!this.options.nice)return;let[e,t,n,...r]=this.getTickMethodOptions();this.options.domain=this.chooseNice()(e,t,n,...r)}getTicks(){let{tickMethod:e}=this.options,[t,n,r,...i]=this.getTickMethodOptions();return e(t,n,r,...i)}getTickMethodOptions(){let{domain:e,tickCount:t}=this.options;return[e[0],e[e.length-1],t]}chooseNice(){return V$}rescale(){this.nice();let[e,t]=this.chooseTransforms();this.composeOutput(e,this.chooseClamp(e)),this.composeInput(e,t,this.chooseClamp(t))}chooseClamp(e){let{clamp:t,range:n}=this.options,r=this.options.domain.map(e),i=Math.min(r.length,n.length);return t?F$(r[0],r[i-1]):rr}composeOutput(e,t){let{domain:n,range:r,round:i,interpolate:a}=this.options,o=b1(n.map(e),r,a,i);this.output=N$(o,t,e)}composeInput(e,t,n){let{domain:r,range:i}=this.options,a=b1(i,r.map(e),X$);this.input=N$(t,n,a)}},S1=class e extends x1{getDefaultOptions(){return{domain:[0,1],range:[0,1],unknown:void 0,nice:!1,clamp:!1,round:!1,interpolate:Q$,tickMethod:_1,tickCount:5}}chooseTransforms(){return[rr,rr]}clone(){return new e(this.options)}};H();var C1=function(e){ar(t,e);function t(t){var n=this,r=t.style,i=or(t,[`style`]);return n=e.call(this,Wn({},{type:`column`},V({style:r},i)))||this,n.columnsGroup=new af({name:`columns`}),n.appendChild(n.columnsGroup),n.render(),n}return t.prototype.render=function(){var e=this.attributes,t=e.columns,n=e.x,r=e.y;this.columnsGroup.style.transform=`translate(${n}, ${r})`,$(this.columnsGroup).selectAll(`.column`).data(t.flat()).join(function(e){return e.append(`rect`).attr(`className`,`column`).each(function(e){this.attr(e)})},function(e){return e.each(function(e){this.attr(e)})},function(e){return e.remove()})},t.prototype.update=function(e){this.attr(QZ({},this.attributes,e)),this.render()},t.prototype.clear=function(){this.removeChildren()},t}(Qd);H();var w1=function(e){ar(t,e);function t(t){var n=this,r=t.style,i=or(t,[`style`]);return n=e.call(this,Wn({},{type:`lines`},V({style:r},i)))||this,n.linesGroup=n.appendChild(new af),n.areasGroup=n.appendChild(new af),n.render(),n}return t.prototype.render=function(){var e=this.attributes,t=e.lines,n=e.areas,r=e.x,i=e.y;this.style.transform=`translate(${r}, ${i})`,t&&this.renderLines(t),n&&this.renderAreas(n)},t.prototype.clear=function(){this.linesGroup.removeChildren(),this.areasGroup.removeChildren()},t.prototype.update=function(e){this.attr(QZ({},this.attributes,e)),this.render()},t.prototype.renderLines=function(e){$(this.linesGroup).selectAll(`.line`).data(e).join(function(e){return e.append(`path`).attr(`className`,`line`).each(function(e){this.attr(e)})},function(e){return e.each(function(e){this.attr(e)})},function(e){return e.remove()})},t.prototype.renderAreas=function(e){$(this.linesGroup).selectAll(`.area`).data(e).join(function(e){return e.append(`path`).attr(`className`,`area`).each(function(e){this.attr(e)})},function(e){return e.each(function(e){this.style(e)})},function(e){return e.remove()})},t}(Qd);H();function T1(e,t){var n,r=t.x,i=t.y,a=z(i.getOptions().range||[0,0],2),o=a[0],s=a[1];return s>o&&(n=z([o,s],2),s=n[0],o=n[1]),e.map(function(e){return e.map(function(e,t){return[r.map(t),mn(i.map(e),s,o)]})})}function E1(e,t){t===void 0&&(t=!1);var n=t?e.length-1:0,r=e.map(function(e,t){return B([t===n?`M`:`L`],z(e),!1)});return t?r.reverse():r}function D1(e,t){if(t===void 0&&(t=!1),e.length<=2)return E1(e);for(var n=[],r=e.length,i=0;i<r;i+=1){var a=t?e[r-i-1]:e[i];qn(a,n.slice(-2))||n.push.apply(n,B([],z(a),!1))}var o=AQ(n,!1);return t?o.unshift(B([`M`],z(e[r-1]),!1)):o.unshift(B([`M`],z(e[0]),!1)),o}function O1(e,t,n){var r=In(e);return r.push([`L`,t,n],[`L`,0,n],[`Z`]),r}function k1(e,t,n,r){return e.map(function(e){return O1(t?D1(e):E1(e),n,r)})}function A1(e,t,n){for(var r=[],i=e.length-1;i>=0;--i){var a=e[i],o=E1(a),s=void 0;if(i===0)s=O1(o,t,n);else{var c=e[i-1],l=E1(c,!0);l[0][0]=`L`,s=B(B(B([],z(o),!1),z(l),!1),[[`Z`]],!1)}r.push(s)}return r}function j1(e,t,n){for(var r=[],i=e.length-1;i>=0;--i){var a=e[i],o=D1(a),s=void 0;if(i===0)s=O1(o,t,n);else{var c=e[i-1],l=D1(c,!0),u=a[0];l[0][0]=`L`,s=B(B(B([],z(o),!1),z(l),!1),[B([`M`],z(u),!1),[`Z`]],!1)}r.push(s)}return r}H();function M1(e){return e.length===0?[0,0]:[cn(yn(e,function(e){return cn(e)||0})),sn(vn(e,function(e){return sn(e)||0}))]}function N1(e){for(var t=In(e),n=t[0].length,r=z([Array(n).fill(0),Array(n).fill(0)],2),i=r[0],a=r[1],o=0;o<t.length;o+=1)for(var s=t[o],c=0;c<n;c+=1)s[c]>=0?(s[c]+=i[c],i[c]=s[c]):(s[c]+=a[c],a[c]=s[c]);return t}H();var P1=function(e){ar(t,e);function t(t){return e.call(this,t,{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?.length===0)return[[]];var t=In(e);return hn(t[0])?[t]:t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`data`,{get:function(){return this.attributes.isStack?N1(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,t=z(e.getOptions().domain||[0,0],2),n=t[0],r=t[1];return r<0?e.map(r):e.map(n<0?0:n)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`containerShape`,{get:function(){var e=this.attributes;return{width:e.width,height:e.height}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`linesStyle`,{get:function(){var e=this,t=this.attributes,n=t.type,r=t.isStack,i=t.smooth;if(n!==`line`)throw Error(`linesStyle can only be used in line type`);var a=XQ(this.attributes,`area`),o=XQ(this.attributes,`line`),s=this.containerShape.width,c=this.data;if(c[0].length===0)return{lines:[],areas:[]};var l=this.scales,u=l.x,d=l.y,f=T1(c,{type:`line`,x:u,y:d}),p=[];if(a){var m=this.baseline;p=r?i?j1(f,s,m):A1(f,s,m):k1(f,i,s,m)}return{lines:f.map(function(t,n){return V({stroke:e.getColor(n),d:i?D1(t):E1(t)},o)}),areas:p.map(function(t,n){return V({d:t,fill:e.getColor(n)},a)})}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`columnsStyle`,{get:function(){var e=this,t=XQ(this.attributes,`column`),n=this.attributes,r=n.isStack,i=n.type,a=n.scale;if(i!==`column`)throw Error(`columnsStyle can only be used in column type`);var o=this.containerShape.height,s=this.rawData;if(!s)return{columns:[]};r&&(s=N1(s));var c=this.createScales(s),l=c.x,u=c.y,d=z(M1(s),2),f=d[0],p=d[1],m=new S1({domain:[0,p-(f>0?0:f)],range:[0,o*a]}),h=l.getBandWidth(),g=this.rawData;return{columns:s.map(function(n,i){return n.map(function(n,a){var o=h/s.length;return V(V({fill:e.getColor(i)},t),r?function(){return{x:l.map(a),y:u.map(n),width:h,height:m.map(g[i][a])}}():function(){return{x:l.map(a)+o*i,y:n>=0?u.map(n):u.map(0),width:o,height:m.map(Math.abs(n))}}())})})}},enumerable:!1,configurable:!0}),t.prototype.render=function(e,t){zQ(t,`.container`,`rect`).attr(`className`,`container`).node();var n=e.type,r=e.x,i=e.y,a=`spark${n}`,o=V({x:r,y:i},n===`line`?this.linesStyle:this.columnsStyle);$(t).selectAll(`.spark`).data([n]).join(function(e){return e.append(function(e){return e===`line`?new w1({className:a,style:o}):new C1({className:a,style:o})}).attr(`className`,`spark ${a}`)},function(e){return e.update(o)},function(e){return e.remove()})},t.prototype.getColor=function(e){var t=this.attributes.color;return Qt(t)?t[e%t.length]:L(t)?t.call(null,e):t},t.prototype.createScales=function(e){var t=this.attributes,n=t.type,r=t.scale,i=t.range,a=i===void 0?[]:i,o=t.spacing,s=this.containerShape,c=s.width,l=s.height,u=z(M1(e),2),d=u[0],f=u[1],p=new S1({domain:[a[0]??d,a[1]??f],range:[l,l*(1-r)]});return n===`line`?{type:n,x:new S1({domain:[0,e[0].length-1],range:[0,c]}),y:p}:{type:n,x:new g1({domain:e[0].map(function(e,t){return t}),range:[0,c],paddingInner:o,paddingOuter:o/2,align:.5}),y:p}},t.tag=`sparkline`,t}(s$);H();function F1(e){return typeof e==`boolean`?!1:`enter`in e&&`update`in e&&`exit`in e}function I1(e){if(!e)return{enter:!1,update:!1,exit:!1};var t=[`enter`,`update`,`exit`],n=Object.fromEntries(Object.entries(e).filter(function(e){var n=z(e,1)[0];return!t.includes(n)}));return Object.fromEntries(t.map(function(t){return F1(e)?e[t]===!1?[t,!1]:[t,V(V({},e[t]),n)]:[t,n]}))}function L1(e,t){e?e.finished.then(t):t()}function R1(e,t){e.length===0?t():Promise.all(e.map(function(e){return e?.finished})).then(t)}function z1(e,t){`update`in e?e.update(t):e.attr(t)}function B1(e,t,n){if(t.length===0)return null;if(!n){var r=t.slice(-1)[0];return z1(e,{style:r}),null}return e.animate(t,n)}function V1(e,t){return!(e.nodeName!==`text`||t.nodeName!==`text`||e.attributes.text!==t.attributes.text)}function H1(e,t,n,r){if(r===void 0&&(r=`destroy`),V1(e,t))return e.remove(),[null];var i=function(){r===`destroy`?e.destroy():r===`hide`&&zZ(e),t.isVisible()&&RZ(t)};if(!n)return i(),[null];var a=n.duration,o=a===void 0?0:a,s=n.delay,c=s===void 0?0:s,l=Math.ceil(o/2),u=o/4,d=z(e.getGeometryBounds().center,2),f=d[0],p=d[1],m=z(t.getGeometryBounds().center,2),h=m[0],g=m[1],_=z([(f+h)/2-f,(p+g)/2-p],2),v=_[0],y=_[1],b=e.style.opacity,x=b===void 0?1:b,S=t.style.opacity,C=S===void 0?1:S,w=e.style.transform||``,T=t.style.transform||``,E=e.animate([{opacity:x,transform:`translate(0, 0) ${w}`},{opacity:0,transform:`translate(${v}, ${y}) ${w}`}],V(V({fill:`both`},n),{duration:c+l+u})),D=t.animate([{opacity:0,transform:`translate(${-v}, ${-y}) ${T}`,offset:.01},{opacity:C,transform:`translate(0, 0) ${T}`}],V(V({fill:`both`},n),{duration:l+u,delay:c+l-u}));return L1(D,i),[E,D]}function U1(e,t,n){var r={},i={};return Object.entries(t).forEach(function(t){var n=z(t,2),a=n[0],o=n[1];if(!R(o)){var s=e.style[a]||e.parsedStyle[a]||0;s!==o&&(r[a]=s,i[a]=o)}}),n?B1(e,[r,i],V({fill:`both`},n)):(z1(e,i),null)}function W1(e,t){return e.style.opacity||(e.style.opacity=1),U1(e,{opacity:0},t)}var G1={fill:`#fff`,lineWidth:1,radius:2,size:10,stroke:`#bfbfbf`,strokeOpacity:1,zIndex:0},K1={fill:`#000`,fillOpacity:.45,fontSize:12,textAlign:`center`,textBaseline:`middle`,zIndex:1},q1={x:0,y:0,orientation:`horizontal`,showLabel:!0,type:`start`},J1=YZ({foreground:`foreground`,handle:`handle`,selection:`selection`,sparkline:`sparkline`,sparklineGroup:`sparkline-group`,track:`track`,brushArea:`brush-area`},`slider`);H();var Y1=YZ({labelGroup:`label-group`,label:`label`,iconGroup:`icon-group`,icon:`icon`,iconRect:`icon-rect`,iconLine:`icon-line`},`handle`),X1=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(e,t){var n=e.x,r=e.y,i=e.size,a=i===void 0?10:i,o=e.radius,s=o===void 0?a/4:o,c=e.orientation,l=e.classNamePrefix,u=or(e,[`x`,`y`,`size`,`radius`,`orientation`,`classNamePrefix`]),d=a,f=d*2.4,p=l?`${Y1.iconRect.name} ${l}handle-icon-rect`:Y1.iconRect.name,m=function(e){return l?`${Y1.iconLine}-${e} ${l}handle-icon-line`:`${Y1.iconLine}-${e}`},h=$(t).maybeAppendByClassName(Y1.iconRect,`rect`).attr(`className`,p).styles(V(V({},u),{width:d,height:f,radius:s,x:n-d/2,y:r-f/2,transformOrigin:`center`})),g=n+1/3*d-d/2,_=n+2/3*d-d/2,v=r+1/4*f-f/2,y=r+3/4*f-f/2;h.maybeAppendByClassName(`${Y1.iconLine}-1`,`line`).attr(`className`,m(1)).styles(V({x1:g,x2:g,y1:v,y2:y},u)),h.maybeAppendByClassName(`${Y1.iconLine}-2`,`line`).attr(`className`,m(2)).styles(V({x1:_,x2:_,y1:v,y2:y},u)),c===`vertical`&&(h.node().style.transform=`rotate(90)`)},t}(s$),Z1=function(e){ar(t,e);function t(t){return e.call(this,t,q1)||this}return t.prototype.renderLabel=function(e){var t=this,n=this.attributes,r=n.x,i=n.y,a=n.showLabel,o=XQ(this.attributes,`label`),s=o.x,c=s===void 0?0:s,l=o.y,u=l===void 0?0:l,d=o.transform,f=o.transformOrigin,p=z(QQ(or(o,[`x`,`y`,`transform`,`transformOrigin`]),[]),2),m=p[0],h=p[1],g=$(e).maybeAppendByClassName(Y1.labelGroup,`g`).styles(h),_=V(V({},K1),m),v=_.text,y=or(_,[`text`]);fQ(!!a,g,function(e){t.label=e.maybeAppendByClassName(Y1.label,`text`).styles(V(V({},y),{x:r+c,y:i+u,transform:d,transformOrigin:f,text:`${v}`})),t.label.on(`mousedown`,function(e){e.stopPropagation()}),t.label.on(`touchstart`,function(e){e.stopPropagation()})})},t.prototype.renderIcon=function(e){var t=this.attributes,n=t.x,r=t.y,i=t.orientation,a=t.type,o=t.classNamePrefix,s=V(V({x:n,y:r,orientation:i,classNamePrefix:o},G1),XQ(this.attributes,`icon`)),c=this.attributes.iconShape,l=c===void 0?function(){return new X1({style:s})}:c;$(e).maybeAppendByClassName(Y1.iconGroup,`g`).selectAll(Y1.icon.class).data([l]).join(function(e){return e.append(typeof l==`string`?l:function(){return l(a)}).attr(`className`,Y1.icon.name)},function(e){return e.update(s)},function(e){return e.remove()})},t.prototype.render=function(e,t){this.renderIcon(t),this.renderLabel(t)},t}(s$);H();var Q1=function(e){ar(t,e);function t(t){var n=e.call(this,t,V(V(V({x:0,y:0,animate:{duration:100,fill:`both`},brushable:!0,formatter:function(e){return e.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},ZQ(q1,`handle`)),ZQ(G1,`handleIcon`)),ZQ(K1,`handleLabel`)))||this;return n.range=[0,1],n.onDragStart=function(e){return function(t){t.stopPropagation(),n.target=e,n.prevPos=n.getOrientVal(cQ(t));var r=n.availableSpace,i=r.x,a=r.y,o=n.getBBox(),s=o.x,c=o.y;n.selectionStartPos=n.getRatio(n.prevPos-n.getOrientVal([i,a])-n.getOrientVal([+s,+c])),n.selectionWidth=0,document.addEventListener(`pointermove`,n.onDragging),document.addEventListener(`pointerup`,n.onDragEnd)}},n.onDragging=function(e){var t=n.attributes,r=t.slidable,i=t.brushable,a=t.type;e.stopPropagation();var o=n.getOrientVal(cQ(e)),s=o-n.prevPos;if(s){var c=n.getRatio(s);switch(n.target){case`start`:r&&n.setValuesOffset(c);break;case`end`:r&&n.setValuesOffset(0,c);break;case`selection`:r&&n.setValuesOffset(c,c);break;case`track`:if(!i)return;n.selectionWidth+=c,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=o}},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(e){var t=n.attributes,r=t.onChange,i=t.type,a=i===`range`?e:e[1],o=i===`range`?n.getValues():n.getValues()[1],s=new Yu(`valuechange`,{detail:{oldValue:a,value:o}});n.dispatchEvent(s),r?.(o)},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(){if(this.attributes.orientation!==`horizontal`)return null;var e=XQ(this.attributes,`sparkline`);return V(V({zIndex:0},this.availableSpace),e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`shape`,{get:function(){var e=this.attributes,t=e.trackLength,n=e.trackSize,r=z(this.getOrientVal([[t,n],[n,t]]),2);return{width:r[0],height:r[1]}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`availableSpace`,{get:function(){var e=this.attributes;e.x,e.y;var t=e.padding,n=z(BQ(t),4),r=n[0],i=n[1],a=n[2],o=n[3],s=this.shape,c=s.width,l=s.height;return{x:o,y:r,width:c-(o+i),height:l-(r+a)}},enumerable:!1,configurable:!0}),t.prototype.getValues=function(){return this.values},t.prototype.setValues=function(e,t){e===void 0&&(e=[0,0]),t===void 0&&(t=!1),this.attributes.values=e;var n=t===!1?!1:this.attributes.animate;this.updateSelectionArea(n),this.updateHandlesPosition(n)},t.prototype.updateSelectionArea=function(e){var t=this.calcSelectionArea();this.foregroundGroup.selectAll(J1.selection.class).each(function(n,r){U1(this,t[r],e)})},t.prototype.updateHandlesPosition=function(e){this.attributes.showHandle&&(this.startHandle&&U1(this.startHandle,this.getHandleStyle(`start`),e),this.endHandle&&U1(this.endHandle,this.getHandleStyle(`end`),e))},t.prototype.innerSetValues=function(e,t){e===void 0&&(e=[0,0]),t===void 0&&(t=!1);var n=this.values,r=this.clampValues(e);this.attributes.values=r,this.setValues(r),t&&this.onValueChange(n)},t.prototype.renderTrack=function(e){var t=this.attributes,n=t.x,r=t.y,i=XQ(this.attributes,`track`);this.trackShape=$(e).maybeAppendByClassName(J1.track,`rect`).styles(V(V({x:n,y:r},this.shape),i))},t.prototype.renderBrushArea=function(e){var t=this.attributes,n=t.x,r=t.y,i=t.brushable;this.brushArea=$(e).maybeAppendByClassName(J1.brushArea,`rect`).styles(V({x:n,y:r,fill:`transparent`,cursor:i?`crosshair`:`default`},this.shape))},t.prototype.renderSparkline=function(e){var t=this,n=this.attributes,r=n.x,i=n.y,a=n.orientation,o=$(e).maybeAppendByClassName(J1.sparklineGroup,`g`);fQ(a===`horizontal`,o,function(e){var n=V(V({},t.sparklineStyle),{x:r,y:i});e.maybeAppendByClassName(J1.sparkline,function(){return new P1({style:n})}).update(n)})},t.prototype.renderHandles=function(){var e=this,t,n=this.attributes,r=n.showHandle,i=n.type===`range`?[`start`,`end`]:[`end`],a=r?i:[],o=this;(t=this.foregroundGroup)==null||t.selectAll(J1.handle.class).data(a.map(function(e){return{type:e}}),function(e){return e.type}).join(function(t){return t.append(function(t){var n=t.type;return new Z1({style:e.getHandleStyle(n)})}).each(function(e){var t=e.type;this.attr(`class`,`${J1.handle.name} ${t}-handle`);var n=`${t}Handle`;o[n]=this,this.addEventListener(`pointerdown`,o.onDragStart(t))})},function(e){return e.each(function(e){var t=e.type;this.update(o.getHandleStyle(t))})},function(e){return e.each(function(e){var t=`${e.type}Handle`;o[t]=void 0}).remove()})},t.prototype.renderSelection=function(e){var t=this.attributes,n=t.x,r=t.y,i=t.type,a=t.selectionType;this.foregroundGroup=$(e).maybeAppendByClassName(J1.foreground,`g`);var o=XQ(this.attributes,`selection`),s=function(e){return e.style(`visibility`,function(e){return e.show?`visible`:`hidden`}).style(`cursor`,function(e){return a===`select`?`grab`:a===`invert`?`crosshair`:`default`}).styles(V(V({},o),{transform:`translate(${n}, ${r})`}))},c=this;this.foregroundGroup.selectAll(J1.selection.class).data(i===`value`?[]:this.calcSelectionArea().map(function(e,t){return{style:V({},e),index:t,show:a===`select`?t===1:t!==1}}),function(e){return e.index}).join(function(e){return e.append(`rect`).attr(`className`,J1.selection.name).call(s).each(function(e,t){var n=this;t===1?(c.selectionShape=$(this),this.on(`pointerdown`,function(e){n.attr(`cursor`,`grabbing`),c.onDragStart(`selection`)(e)}),c.dispatchCustomEvent(this,`pointerenter`,`selectionMouseenter`),c.dispatchCustomEvent(this,`pointerleave`,`selectionMouseleave`),c.dispatchCustomEvent(this,`click`,`selectionClick`),this.addEventListener(`pointerdown`,function(){n.attr(`cursor`,`grabbing`)}),this.addEventListener(`pointerup`,function(){n.attr(`cursor`,`pointer`)}),this.addEventListener(`pointerover`,function(){n.attr(`cursor`,`pointer`)})):this.on(`pointerdown`,c.onDragStart(`track`))})},function(e){return e.call(s)},function(e){return e.remove()}),this.updateSelectionArea(!1),this.renderHandles()},t.prototype.render=function(e,t){this.renderTrack(t),this.renderSparkline(t),this.renderBrushArea(t),this.renderSelection(t)},t.prototype.clampValues=function(e,t){var n;t===void 0&&(t=4);var r=z(this.range,2),i=r[0],a=r[1],o=z(this.getValues().map(function(e){return DQ(e,t)}),2),s=o[0],c=o[1],l=z(((Array.isArray(e)?e:[s,e??c])||[s,c]).map(function(e){return DQ(e,t)}),2),u=l[0],d=l[1];if(this.attributes.type===`value`)return[0,mn(d,i,a)];u>d&&(n=z([d,u],2),u=n[0],d=n[1]);var f=d-u;return f>a-i?[i,a]:u<i?s===i&&c===d?[i,d]:[i,f+i]:d>a?c===a&&s===u?[u,a]:[a-f,a]:[u,d]},t.prototype.calcSelectionArea=function(e){var t=z(this.clampValues(e),2),n=t[0],r=t[1],i=this.availableSpace,a=i.x,o=i.y,s=i.width,c=i.height;return this.getOrientVal([[{y:o,height:c,x:a,width:n*s},{y:o,height:c,x:n*s+a,width:(r-n)*s},{y:o,height:c,x:r*s,width:(1-r)*s}],[{x:a,width:s,y:o,height:n*c},{x:a,width:s,y:n*c+o,height:(r-n)*c},{x:a,width:s,y:r*c,height:(1-r)*c}]])},t.prototype.calcHandlePosition=function(e){var t=this.attributes.handleIconOffset,n=this.availableSpace,r=n.x,i=n.y,a=n.width,o=n.height,s=z(this.clampValues(),2),c=s[0],l=s[1],u=e===`start`?-t:t,d=(e===`start`?c:l)*this.getOrientVal([a,o])+u;return{x:r+this.getOrientVal([d,a/2]),y:i+this.getOrientVal([o/2,d])}},t.prototype.inferTextStyle=function(e){return this.attributes.orientation===`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 t,n=this.attributes,r=n.type,i=n.orientation,a=n.formatter,o=n.autoFitLabel,s=XQ(this.attributes,`handle`),c=XQ(s,`label`),l=s.spacing,u=this.getHandleSize(),d=this.clampValues(),f=a(e===`start`?d[0]:d[1]),p=new WZ({style:V(V(V({},c),this.inferTextStyle(e)),{text:f})}),m=p.getBBox(),h=m.width,g=m.height;if(p.destroy(),!o){if(r===`value`)return{text:f,x:0,y:-g-l};var _=l+u+(i===`horizontal`?h/2:0);return t={text:f},t[i===`horizontal`?`x`:`y`]=e===`start`?-_:_,t}var v=0,y=0,b=this.availableSpace,x=b.width,S=b.height,C=this.calcSelectionArea()[1],w=C.x,T=C.y,E=C.width,D=C.height,O=l+u;if(i===`horizontal`){var k=O+h/2;v=e===`start`?w-O-h>0?-k:k:x-w-E-O>h?k:-k}else{var A=O,j=g+O;y=e===`start`?T-u>g?-j:A:S-(T+D)-u>g?j:-A}return{x:v,y,text:f}},t.prototype.getHandleLabelStyle=function(e){return V(V(V({},XQ(this.attributes,`handleLabel`)),this.calcHandleText(e)),this.inferTextStyle(e))},t.prototype.getHandleIconStyle=function(){var e=this.attributes.handleIconShape,t=XQ(this.attributes,`handleIcon`);return V({cursor:this.getOrientVal([`ew-resize`,`ns-resize`]),shape:e,size:this.getHandleSize()},t)},t.prototype.getHandleStyle=function(e){var t=this.attributes,n=t.x,r=t.y,i=t.showLabel,a=t.showLabelOnInteraction,o=t.orientation,s=this.calcHandlePosition(e),c=s.x,l=s.y,u=this.calcHandleText(e),d=i;return!i&&a&&(d=!!this.target),V(V(V({},ZQ(this.getHandleIconStyle(),`icon`)),ZQ(V(V({},this.getHandleLabelStyle(e)),u),`label`)),{transform:`translate(${c+n}, ${l+r})`,orientation:o,showLabel:d,type:e,zIndex:3})},t.prototype.getHandleSize=function(){var e=this.attributes,t=e.handleIconSize,n=e.width,r=e.height;return t||Math.floor((this.getOrientVal([+r,+n])+4)/2.4)},t.prototype.getOrientVal=function(e){var t=z(e,2),n=t[0],r=t[1];return this.attributes.orientation===`horizontal`?n:r},t.prototype.setValuesOffset=function(e,t){t===void 0&&(t=0);var n=this.attributes.type,r=z(this.getValues(),2),i=r[0],a=r[1],o=[i+(n===`range`?e:0),a+t].sort();this.innerSetValues(o,!0)},t.prototype.getRatio=function(e){var t=this.availableSpace,n=t.width,r=t.height;return e/this.getOrientVal([n,r])},t.prototype.dispatchCustomEvent=function(e,t,n){var r=this;e.on(t,function(e){e.stopPropagation(),r.dispatchEvent(new Yu(n,{detail:e}))})},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){if(this.attributes.scrollable){var t=e.deltaX,n=e.deltaY||t,r=this.getRatio(n);this.setValuesOffset(r,r)}},t.tag=`slider`,t}(s$),$1={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`},e0={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 ff({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:[]};Wn({},e0,{style:{type:`arc`}}),Wn({},e0,{style:{}});var t0=YZ({mainGroup:$1.mainGroup,gridGroup:$1.gridGroup,grid:$1.grid,lineGroup:$1.lineGroup,line:$1.line,tickGroup:$1.tickGroup,tick:$1.tick,tickItem:$1.tickItem,labelGroup:$1.labelGroup,label:$1.label,labelItem:$1.labelItem,titleGroup:$1.titleGroup,title:$1.title,lineFirst:$1.lineFirst,lineSecond:$1.lineSecond},`axis`);H();var n0=YZ({lineGroup:`line-group`,line:`line`,regionGroup:`region-group`,region:`region`},`grid`);function r0(e){return e.reduce(function(e,t,n){return e.push(B([n===0?`M`:`L`],z(t),!1)),e},[])}function i0(e,t,n){var r=t.connect,i=r===void 0?`line`:r,a=t.center;if(i===`line`)return r0(e);if(!a)return[];var o=wQ(e[0],a),s=+!n;return e.reduce(function(e,t,n){return n===0?e.push(B([`M`],z(t),!1)):e.push(B([`A`,o,o,0,0,s],z(t),!1)),e},[])}function a0(e,t,n){return t.type===`surround`?i0(e,t,n):r0(e)}function o0(e,t,n){var r=n.type,i=n.connect,a=n.center,o=n.closed?[[`Z`]]:[],s=z([a0(e,n),a0(t.slice().reverse(),n,!0)],2),c=s[0],l=s[1],u=z([e[0],t.slice(-1)[0]],2),d=u[0],f=u[1],p=function(e,t){return[c,e,l,t,o].flat()};if(i===`line`||r===`surround`)return p([B([`L`],z(f),!1)],[B([`L`],z(d),!1)]);if(!a)throw Error(`Arc grid need to specified center`);var m=z([wQ(f,a),wQ(d,a)],2),h=m[0],g=m[1];return p([B([`A`,h,h,0,0,1],z(f),!1),B([`L`],z(f),!1)],[B([`A`,g,g,0,0,0],z(d),!1),B([`L`],z(d),!1)])}function s0(e,t,n,r){var i=n.animate,a=n.isBillboard,o=t.map(function(e,t){return{id:e.id||`grid-line-${t}`,d:a0(e.points,n)}});return e.selectAll(n0.line.class).data(o,function(e){return e.id}).join(function(e){return e.append(`path`).each(function(e,t){var n=JZ(NQ(V({d:e.d},r)),[e,t,o]);this.attr(V({class:n0.line.name,stroke:`#D9D9D9`,lineWidth:1,lineDash:[4,4],isBillboard:a},n))})},function(e){return e.transition(function(e,t){var n=JZ(NQ(V({d:e.d},r)),[e,t,o]);return U1(this,n,i.update)})},function(e){return e.transition(function(){var e=this,t=W1(this,i.exit);return L1(t,function(){return e.remove()}),t})}).transitions()}function c0(e,t,n){var r=n.animate,i=n.connect,a=n.areaFill;if(t.length<2||!a||!i)return[];for(var o=Array.isArray(a)?a:[a,`transparent`],s=function(e){return o[e%o.length]},c=[],l=0;l<t.length-1;l++){var u=z([t[l].points,t[l+1].points],2),d=u[0],f=u[1],p=o0(d,f,n);c.push({d:p,fill:s(l)})}return e.selectAll(n0.region.class).data(c,function(e,t){return t}).join(function(e){return e.append(`path`).each(function(e,t){var n=JZ(e,[e,t,c]);this.attr(n)}).attr(`className`,n0.region.name)},function(e){return e.transition(function(e,t){var n=JZ(e,[e,t,c]);return U1(this,n,r.update)})},function(e){return e.transition(function(){var e=this,t=W1(this,r.exit);return L1(t,function(){return e.remove()}),t})}).transitions()}function l0(e){var t=e.data,n=t===void 0?[]:t;return e.closed?n.map(function(e){var t=e.points,n=z(t,1)[0];return V(V({},e),{points:B(B([],z(t),!1),[n],!1)})}):n}var u0=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(e,t){e.type,e.center,e.areaFill,e.closed;var n=or(e,[`type`,`center`,`areaFill`,`closed`]),r=l0(e),i=$(t).maybeAppendByClassName(n0.lineGroup,`g`),a=$(t).maybeAppendByClassName(n0.regionGroup,`g`),o=s0(i,r,e,n),s=c0(a,r,e);return B(B([],z(o),!1),z(s),!1)},t}(s$);H();function d0(e,t){return Object.fromEntries(Object.entries(e).map(function(e){var n=z(e,2),r=n[0],i=n[1];return[r,JZ(i,t)]}))}function f0(e,t){return t&&L(t)?e.filter(t):e}function p0(e,t){var n=t.startAngle;return(t.endAngle-n)*e+n}function m0(e,t){if(t.type===`linear`){var n=z(t.startPos,2),r=n[0],i=n[1],a=z(t.endPos,2),o=a[0],s=a[1],c=z([o-r,s-i],2),l=c[0],u=c[1];return TQ([l,u])}var d=GZ(p0(e,t));return[-Math.sin(d),Math.cos(d)]}function h0(e,t,n){return EQ(m0(e,n),t!==`positive`)}function g0(e,t){return h0(e,t.labelDirection,t)}function _0(e,t,n){return n?`${e} ${n}axis-${t}`:e}function v0(e,t,n,r){return r&&e.attr(`className`,_0(t.name,n,r)),e}H();function y0(e,t){var n=z(t.startPos,2),r=n[0],i=n[1],a=z(t.endPos,2),o=a[0],s=a[1],c=z([o-r,s-i],2),l=c[0],u=c[1];return[r+l*e,i+u*e]}function b0(e,t){var n=t.radius,r=z(t.center,2),i=r[0],a=r[1],o=GZ(p0(e,t));return[i+n*Math.cos(o),a+n*Math.sin(o)]}function x0(e,t){return t.type===`linear`?y0(e,t):b0(e,t)}function S0(e){return m0(0,e)[1]===0}function C0(e){return m0(0,e)[0]===0}function w0(e,t){return t-e===360}function T0(e,t,n,r,i){var a=t-e,o=z([i,i],2),s=o[0],c=o[1],l=z([GZ(e),GZ(t)],2),u=l[0],d=l[1],f=function(e){return[n+i*Math.cos(e),r+i*Math.sin(e)]},p=z(f(u),2),m=p[0],h=p[1],g=z(f(d),2),_=g[0],v=g[1];if(w0(e,t)){var y=z(f((d+u)/2),2),b=y[0],x=y[1];return[[`M`,m,h],[`A`,s,c,0,1,0,b,x],[`A`,s,c,0,1,0,_,v]]}return`M${m},${h},A${s},${c},0,${+(a>180)},${e>t?0:1},${_},${v}`}function E0(e){var t=e.attributes,n=t.startAngle,r=t.endAngle,i=t.center,a=t.radius;return B(B([n,r],z(i),!1),[a],!1)}function D0(e,t,n,r){var i=t.startAngle,a=t.endAngle,o=t.center,s=t.radius,c=t.classNamePrefix;return e.selectAll(t0.line.class).data([{d:T0.apply(void 0,B(B([i,a],z(o),!1),[s],!1))}],function(e,t){return t}).join(function(e){var n=e.append(`path`).attr(`className`,t0.line.name).styles(t).styles({d:function(e){return e.d}});return v0(n,t0.line,$1.line,c),n},function(e){return e.transition(function(){var e=this,t=vQ(this,E0(this),B(B([i,a],z(o),!1),[s],!1),r.update);if(t){var n=function(){var t=Jn(e.attributes,`__keyframe_data__`);e.style.d=T0.apply(void 0,B([],z(t),!1))};t.onframe=n,t.onfinish=n}return t}).styles(t)},function(e){return e.remove()}).styles(n).transitions()}function O0(e,t){t.truncRange,t.truncShape,t.lineExtension}function k0(e,t,n){n===void 0&&(n=[0,0]);var r=z([e,t,n],3),i=z(r[0],2),a=i[0],o=i[1],s=z(r[1],2),c=s[0],l=s[1],u=z(r[2],2),d=u[0],f=u[1],p=z([c-a,l-o],2),m=p[0],h=p[1],g=Math.sqrt(m**2+h**2),_=z([-d/g,f/g],2),v=_[0],y=_[1];return[v*m,v*h,y*m,y*h]}function A0(e){var t=z(e,2),n=z(t[0],2),r=n[0],i=n[1],a=z(t[1],2);return{x1:r,y1:i,x2:a[0],y2:a[1]}}function j0(e,t,n,r){var i=t.showTrunc,a=t.startPos,o=t.endPos,s=t.truncRange,c=t.lineExtension,l=t.classNamePrefix,u=z([a,o],2),d=z(u[0],2),f=d[0],p=d[1],m=z(u[1],2),h=m[0],g=m[1],_=z(c?k0(a,o,c):[,,,,].fill(0),4),v=_[0],y=_[1],b=_[2],x=_[3],S=function(t){return e.selectAll(t0.line.class).data(t,function(e,t){return t}).join(function(e){var t=e.append(`line`).styles(n).transition(function(e){return U1(this,A0(e.line),!1)});return t.attr(`className`,function(e){if(!l)return`${t0.line.name} ${e.className}`;var t=_0(t0.line.name,$1.line,l);if(e.className===t0.lineFirst.name){var n=_0(t0.lineFirst.name,$1.lineFirst,l);return`${t} ${n}`}if(e.className===t0.lineSecond.name){var n=_0(t0.lineSecond.name,$1.lineSecond,l);return`${t} ${n}`}return t}),t},function(e){return e.styles(n).transition(function(e){var t=e.line;return U1(this,A0(t),r.update)})},function(e){return e.remove()}).transitions()};if(!i||!s)return S([{line:[[f+v,p+y],[h+b,g+x]],className:t0.line.name}]);var C=z(s,2),w=C[0],T=C[1],E=h-f,D=g-p,O=z([f+E*w,p+D*w],2),k=O[0],A=O[1],j=z([f+E*T,p+D*T],2),ee=j[0],te=j[1],M=S([{line:[[f+v,p+y],[k,A]],className:t0.lineFirst.name},{line:[[ee,te],[h+b,g+x]],className:t0.lineSecond.name}]);return O0(e,t),M}function M0(e,t,n,r){var i=n.showArrow,a=n.showTrunc,o=n.lineArrow,s=n.lineArrowOffset,c=n.lineArrowSize,l=t===`arc`?e.select(t0.line.class):a?e.select(t0.lineSecond.class):e.select(t0.line.class);if(!i||!o||n.type===`arc`&&w0(n.startAngle,n.endAngle)){var u=l.node();u&&(u.style.markerEnd=void 0);return}var d=lQ(o);d.attr(r),FQ(d,c,!0),l.style(`markerEnd`,d).style(`markerEndOffset`,-s)}function N0(e,t,n){var r=t.type,i,a=XQ(t,`line`);return i=r===`linear`?j0(e,t,OQ(a,`arrow`),n):D0(e,t,OQ(a,`arrow`),n),M0(e,r,t,a),i}H();function P0(e,t){return h0(e,t.gridDirection,t)}function F0(e){var t=e.type,n=e.gridCenter;return t===`linear`?n:n||e.center}function I0(e,t){var n=t.gridLength;return e.map(function(e,r){var i=e.value,a=z(x0(i,t),2),o=a[0],s=a[1],c=z(yQ(P0(i,t),n),2),l=c[0],u=c[1];return{id:r,points:[[o,s],[o+l,s+u]]}})}function L0(e,t){var n=t.gridControlAngles,r=F0(t);if(!r)throw Error(`grid center is not provide`);if(e.length<2)throw Error(`Invalid grid data`);if(!n||n.length===0)throw Error(`Invalid gridControlAngles`);var i=z(r,2),a=i[0],o=i[1];return e.map(function(e,r){var i=e.value,s=z(x0(i,t),2),c=s[0],l=s[1],u=z([c-a,l-o],2),d=u[0],f=u[1],p=[];return n.forEach(function(e){var t=GZ(e),n=z([Math.cos(t),Math.sin(t)],2),r=n[0],i=n[1],s=d*r-f*i+a,c=d*i+f*r+o;p.push([s,c])}),{points:p,id:r}})}function R0(e,t,n,r){var i=n.classNamePrefix,a=XQ(n,`grid`),o=a.type,s=a.areaFill,c=F0(n),l=f0(t,n.gridFilter),u=o===`segment`?I0(l,n):L0(l,n),d=V(V({},a),{center:c,areaFill:L(s)?l.map(function(e,t){return JZ(s,[e,t,l])}):s,animate:r,data:u});return e.selectAll(t0.grid.class).data([1]).join(function(e){var t=e.append(function(){return new u0({style:d})}).attr(`className`,t0.grid.name);return v0(t,t0.grid,$1.grid,i),t},function(e){return e.transition(function(){return this.update(d)})},function(e){return e.remove()}).transitions()}H();var z0=function(){function e(e,t,n,r){this.set(e,t,n,r)}return Object.defineProperty(e.prototype,`left`,{get:function(){return this.x1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`top`,{get:function(){return this.y1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`right`,{get:function(){return this.x2},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`bottom`,{get:function(){return this.y2},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`width`,{get:function(){return this.defined(`x2`)&&this.defined(`x1`)?this.x2-this.x1:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`height`,{get:function(){return this.defined(`y2`)&&this.defined(`y1`)?this.y2-this.y1:void 0},enumerable:!1,configurable:!0}),e.prototype.rotatedPoints=function(e,t,n){var r=this,i=r.x1,a=r.y1,o=r.x2,s=r.y2,c=Math.cos(e),l=Math.sin(e),u=t-t*c+n*l,d=n-t*l-n*c;return[[c*i-l*s+u,l*i+c*s+d],[c*o-l*s+u,l*o+c*s+d],[c*i-l*a+u,l*i+c*a+d],[c*o-l*a+u,l*o+c*a+d]]},e.prototype.set=function(e,t,n,r){return n<e?(this.x2=e,this.x1=n):(this.x1=e,this.x2=n),r<t?(this.y2=t,this.y1=r):(this.y1=t,this.y2=r),this},e.prototype.defined=function(e){return this[e]!==Number.MAX_VALUE&&this[e]!==-Number.MAX_VALUE},e}();function B0(e,t){var n=e.getEulerAngles()||0;e.setEulerAngles(0);var r=e.getBounds(),i=z(r.min,2),a=i[0],o=i[1],s=z(r.max,2),c=s[0],l=s[1],u=e.getBBox(),d=u.width,f=u.height,p=0,m=0,h=a,g=o,_=iQ(e);if(_){f-=1.5;var v=_.style.textAlign,y=_.style.textBaseline;v===`center`?h=(a+c)/2:(v===`right`||v===`end`)&&(h=c),y===`middle`?g=(o+l)/2:y===`bottom`&&(g=l)}var b=z(BQ(t),4),x=b[0],S=x===void 0?0:x,C=b[1],w=C===void 0?0:C,T=b[2],E=T===void 0?S:T,D=b[3],O=D===void 0?w:D,k=new z0((p+=a)-O,(m+=o)-S,p+d+w,m+f+E);return e.setEulerAngles(n),k.rotatedPoints(GZ(n),h,g)}function V0(e,t){return t[0]<=Math.max(e[0][0],e[1][0])&&t[0]<=Math.min(e[0][0],e[1][0])&&t[1]<=Math.max(e[0][1],e[1][1])&&t[1]<=Math.min(e[0][1],e[1][1])}function H0(e,t,n){var r=(t[1]-e[1])*(n[0]-t[0])-(t[0]-e[0])*(n[1]-t[1]);return r===0?0:r<0?2:1}function U0(e,t){var n=H0(e[0],e[1],t[0]),r=H0(e[0],e[1],t[1]),i=H0(t[0],t[1],e[0]),a=H0(t[0],t[1],e[1]);return!!(n!==r&&i!==a||n===0&&V0(e,t[0])||r===0&&V0(e,t[1])||i===0&&V0(t,e[0])||a===0&&V0(t,e[1]))}function W0(e,t){var n=e.length;if(n<3)return!1;var r=[t,[9999,t[1]]],i=0,a=0;do{var o=[e[a],e[(a+1)%n]];if(U0(o,r)){if(H0(o[0],t,o[1])===0)return V0(o,t);i++}a=(a+1)%n}while(a!==0);return!!(i&1)}function G0(e,t){return t.every(function(t){return W0(e,t)})}function K0(e,t,n){var r=e.x1,i=e.x2,a=e.y1,o=e.y2;return G0([[r,a],[i,a],[i,o],[r,o]],B0(t,n))}H();function q0(e,t){var n=z(e,4),r=n[0],i=n[1],a=n[2],o=n[3],s=z(t,4),c=s[0],l=s[1],u=s[2],d=s[3],f=a-r,p=o-i,m=u-c,h=d-l,g=f*h-m*p;if(g===0)return!1;var _=g>0,v=r-c,y=i-l,b=f*y-p*v;if(b<0===_)return!1;var x=m*y-h*v;return!(x<0===_||b>g===_||x>g===_)}function J0(e,t){return[[e[0],e[1],e[2],e[3]],[e[2],e[3],e[4],e[5]],[e[4],e[5],e[6],e[7]],[e[6],e[7],e[0],e[1]]].some(function(e){return q0(t,e)})}function Y0(e,t,n){var r,i,a=B0(e,n).flat(1),o=B0(t,n).flat(1),s=[[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 c=_r(s),l=c.next();!l.done;l=c.next()){var u=l.value;if(J0(o,u))return!0}}catch(e){r={error:e}}finally{try{l&&!l.done&&(i=c.return)&&i.call(c)}finally{if(r)throw r.error}}return!1}H();function X0(e,t){var n=e.type,r=e.labelDirection,i=e.crossSize;if(!i)return!1;if(n===`arc`){var a=e.center,o=e.radius,s=z(a,2),c=s[0],l=s[1],u=r===`negative`?0:i,d=-o-u,f=o+u,p=z(BQ(t),4),m=p[0],h=p[1],g=p[2],_=p[3];return new z0(c+d-_,l+d-m,c+f+h,l+f+g)}var v=z(e.startPos,2),y=v[0],b=v[1],x=z(e.endPos,2),S=x[0],C=x[1],w=z(C0(e)?[-t,0,t,0]:[0,t,0,-t],4),T=w[0],E=w[1],D=w[2],O=w[3],k=yQ(g0(0,e),i),A=new z0(y,b,S,C);return A.x1+=O,A.y1+=T,A.x2+=E+k[0],A.y2+=D+k[1],A}function Z0(e,t,n){var r,i,a=t.crossPadding,o=new Set,s=null,c=X0(t,a),l=function(e){return c?K0(c,e):!0},u=function(e,t){return!e||!e.firstChild?!0:!Y0(e.firstChild,t.firstChild,BQ(n))};try{for(var d=_r(e),f=d.next();!f.done;f=d.next()){var p=f.value;l(p)?!s||u(s,p)?s=p:(o.add(s),o.add(p)):o.add(p)}}catch(e){r={error:e}}finally{try{f&&!f.done&&(i=d.return)&&i.call(d)}finally{if(r)throw r.error}}return Array.from(o)}H();function Q0(e,t){return t===void 0&&(t={}),R(e)?0:typeof e==`number`?e:Math.floor(nQ(e,t))}function $0(e,t,n,r){if(!(e.length<=0)){var i=t.suffix,a=i===void 0?`...`:i,o=t.minLength,s=t.maxLength,c=s===void 0?1/0:s,l=t.step,u=l===void 0?` `:l,d=t.margin,f=d===void 0?[0,0,0,0]:d,p=rQ(r.getTextShape(e[0])),m=Q0(u,p),h=o?Q0(o,p):m,g=Q0(c,p);(R(g)||g===1/0)&&(g=Math.max.apply(null,e.map(function(e){return e.getBBox().width})));var _=e.slice(),v=z(f,4);v[0],v[1],v[2],v[3];for(var y=function(t){if(_.forEach(function(e){r.ellipsis(r.getTextShape(e),t,a)}),_=Z0(e,n,f),_.length<1)return{value:void 0}},b=g;b>h+m;b-=m){var x=y(b);if(typeof x==`object`)return x.value}}}H();var e2={parity:function(e,t){var n=t.seq,r=n===void 0?2:n;return e.filter(function(e,t){return t%r?(zZ(e),!1):!0})}},t2=function(e){return e.filter($Z)};function n2(e,t,n,r){var i=e.length,a=t.keepHeader,o=t.keepTail;if(!(i<=1||i===2&&a&&o)){var s=e2.parity,c=function(e){return e.forEach(r.show),e},l=2,u=e.slice(),d=e.slice(),f=Math.min.apply(Math,B([1],z(e.map(function(e){return e.getBBox().width})),!1));if(n.type===`linear`&&(S0(n)||C0(n))){var p=VQ(e[0]).left,m=VQ(e[i-1]).right,h=Math.abs(m-p)||1;l=Math.max(Math.floor(i*f/h),l)}var g,_;for(a&&(g=u.splice(0,1)[0]),o&&(_=u.splice(-1,1)[0],u.reverse()),c(u);l<e.length&&Z0(t2(_?B(B([_],z(d),!1),[g],!1):B([g],z(d),!1)),n,t?.margin).length;){if(_&&!g&&l%2==0){var v=u.splice(0,1);v.forEach(r.hide)}else if(_&&g){var v=u.splice(0,1);v.forEach(r.hide)}d=s(c(u),{seq:l}),l++}}}H();function r2(e,t,n,r){var i,a,o=t.optionalAngles,s=o===void 0?[0,45,90]:o,c=t.margin,l=t.recoverWhenFailed,u=l===void 0?!0:l,d=e.map(function(e){return e.getLocalEulerAngles()}),f=function(){return Z0(e,n,c).length<1},p=function(t){return e.forEach(function(e,n){var i=Array.isArray(t)?t[n]:t;r.rotate(e,+i)})};try{for(var m=_r(s),h=m.next();!h.done;h=m.next()){var g=h.value;if(p(g),f())return}}catch(e){i={error:e}}finally{try{h&&!h.done&&(a=m.return)&&a.call(m)}finally{if(i)throw i.error}}u&&p(d)}H();function i2(e){var t=e.type,n=e.labelDirection;return t===`linear`&&S0(e)?n===`negative`?`bottom`:`top`:`middle`}function a2(e,t,n,r,i){var a=t.maxLines,o=a===void 0?3:a,s=t.recoverWhenFailed,c=s===void 0?!0:s,l=t.margin,u=l===void 0?[0,0,0,0]:l,d=JZ(t.wordWrapWidth??50,[i]),f=e.map(function(e){return e.attr(`maxLines`)||1}),p=Math.min.apply(Math,B([],z(f),!1)),m=function(){return Z0(e,n,u).length<1},h=i2(n),g=function(t){return e.forEach(function(e,n){var i=Array.isArray(t)?t[n]:t;r.wrap(e,d,i,h)})};if(!(p>o)){if(n.type===`linear`&&S0(n)){if(g(o),m())return}else for(var _=p;_<=o;_++)if(g(_),m())return;c&&g(f)}}var o2=new Map([[`hide`,n2],[`rotate`,r2],[`ellipsis`,$0],[`wrap`,a2]]);function s2(e,t,n){return t.labelOverlap.length<1?!1:n===`hide`?!UZ(e[0]):n===`rotate`?!e.some(function(e){return!!e.attr(`transform`)?.includes(`rotate`)}):n===`ellipsis`||n===`wrap`?e.filter(function(e){return e.querySelector(`text`)}).length>=1:!0}function c2(e,t,n,r){var i=t.labelOverlap,a=i===void 0?[]:i;a.length&&a.forEach(function(i){var a=i.type,o=o2.get(a);s2(e,t,a)&&o?.(e,i,t,r,n)})}function l2(){var e=[...arguments],t=function(e){return e===`positive`?-1:1};return e.reduce(function(e,n){return e*t(n)},1)}H();function u2(e){for(var t=e;t<0;)t+=360;return Math.round(t%360)}function d2(e,t){var n=z(e,2),r=n[0],i=n[1],a=z(t,2),o=a[0],s=a[1],c=z([r*o+i*s,r*s-i*o],2),l=c[0],u=c[1];return Math.atan2(u,l)}function f2(e){var t=(e+360)%180;return pQ(t,-90,90)||(t+=180),t}function p2(e,t,n){var r=n.labelAlign;if(t.style.transform?.includes(`rotate`))return t.getLocalEulerAngles();var i=0,a=g0(e.value,n),o=m0(e.value,n);return r===`horizontal`?0:(i=r===`perpendicular`?d2([1,0],a):d2([o[0]<0?-1:1,0],o),f2(KZ(i)))}function m2(e,t,n){var r=n.type,i=n.labelAlign,a=g0(e,n),o=u2(t),s=u2(KZ(d2([1,0],a))),c=`center`,l=`middle`;return r===`linear`?[90,270].includes(s)&&o===0?(c=`center`,l=a[1]===1?`top`:`bottom`):!(s%180)&&[90,270].includes(o)?c=`center`:s===0?(pQ(o,0,90,!1,!0)||pQ(o,0,90)||pQ(o,270,360))&&(c=`start`):s===90?pQ(o,0,90,!1,!0)?c=`start`:(pQ(o,90,180)||pQ(o,270,360))&&(c=`end`):s===270?pQ(o,0,90,!1,!0)?c=`end`:(pQ(o,90,180)||pQ(o,270,360))&&(c=`start`):s===180&&(o===90?c=`start`:(pQ(o,0,90)||pQ(o,270,360))&&(c=`end`)):i===`parallel`?l=pQ(s,0,180,!0)?`top`:`bottom`:i===`horizontal`?pQ(s,90,270,!1)?c=`end`:(pQ(s,270,360,!1)||pQ(s,0,90))&&(c=`start`):i===`perpendicular`&&(c=pQ(s,90,270)?`end`:`start`),{textAlign:c,textBaseline:l}}function h2(e,t,n){t.setLocalEulerAngles(e);var r=t.__data__.value,i=m2(r,e,n),a=t.querySelector(t0.labelItem.class);a&&b2(a,i)}function g2(e,t,n){var r=n.showTick,i=n.tickLength,a=n.tickDirection,o=n.labelDirection,s=n.labelSpacing,c=t.indexOf(e),l=JZ(s,[e,c,t]),u=z([g0(e.value,n),l2(o,a)],2),d=u[0],f=z(bQ(yQ(d,l+(u[1]===1?JZ(r?i:0,[e,c,t]):0)),x0(e.value,n)),2);return{x:f[0],y:f[1]}}function _2(e,t,n,r){var i=r.labelFormatter;return L(i)?function(){return lQ(JZ(i,[e,t,n,g0(e.value,r)]))}:function(){return lQ(e.label||``)}}function v2(e,t,n,r){var i=r.labelRender,a=(Jn(r,`endPos.0`,400)-Jn(r,`startPos.0`,0))/n.length,o=L(i)?JZ(i,[e,t,n,g0(e.value,r)]):e.label||``,s=a$(o)||30;return function(){return uQ(o,{width:a,height:s})}}var y2={html:[`fill`],text:[]};function b2(e,t){[`text`,`html`].includes(e.nodeName)&&e.attr(OQ(t,y2[e.nodeName]))}function x2(e,t){c2(this.node().childNodes,e,t,{hide:zZ,show:RZ,rotate:function(t,n){h2(+n,t,e)},ellipsis:function(e,t,n){e&&oQ(e,t||1/0,n)},wrap:function(e,t,n){e&&sQ(e,t,n)},getTextShape:function(e){return e.querySelector(t0.labelItem.class)}})}function S2(e,t,n,r,i){var a=n.indexOf(t),o=i.labelRender,s=i.classNamePrefix,c=$(e).append(o?v2(t,a,n,i):_2(t,a,n,i)).attr(`className`,t0.labelItem.name).node();v0($(c),t0.labelItem,$1.labelItem,s);var l=z(QQ(d0(r,[t,a,n])),2),u=l[0],d=l[1],f=d.transform,p=or(d,[`transform`]);t$(c,f);var m=p2(t,c,i);if(c.getLocalEulerAngles()||c.setLocalEulerAngles(m),b2(c,V(V({},m2(t.value,m,i)),u)),c.nodeName===`html`){var h=c.getBBox(),g=c.style.x||0;c.attr(`x`,g-h.width/2)}return e.attr(p),c}function C2(e,t,n,r,i){var a=n.classNamePrefix,o=f0(t,n.labelFilter),s=XQ(n,`label`),c,l=e.selectAll(t0.label.class).data(o,function(e,t){return t}).join(function(e){var r=e.append(`g`).attr(`className`,t0.label.name).transition(function(e){S2(this,e,t,s,n);var r=g2(e,t,n),i=r.x,a=r.y;return this.style.transform=`translate(${i}, ${a})`,null});return v0(r,t0.label,$1.label,a),r},function(e){return e.transition(function(e){var i=H1(this.querySelector(t0.labelItem.class),S2(this,e,t,s,n),r.update),a=g2(e,t,n),o=a.x,c=a.y,l=U1(this,{transform:`translate(${o}, ${c})`},r.update);return B(B([],z(i),!1),[l],!1)})},function(e){return c=e,e.transition(function(){var e=this,t=W1(this.childNodes[0],r.exit);return L1(t,function(){return $(e).remove()}),t}),c}).transitions();return R1(l,function(){x2.call(e,n,i)}),l}H();function w2(e,t){return h0(e,t.tickDirection,t)}function T2(e,t){var n=z(e,2),r=n[0],i=n[1];return[[0,0],[r*t,i*t]]}function E2(e,t,n,r,i){var a=i.tickLength,o=z(T2(r,JZ(a,[e,t,n])),2),s=z(o[0],2),c=s[0],l=s[1],u=z(o[1],2);return{x1:c,x2:u[0],y1:l,y2:u[1]}}function D2(e,t,n,r,i){var a=i.tickFormatter,o=i.classNamePrefix,s=w2(t.value,i),c=`line`;L(a)&&(c=function(){return JZ(a,[t,n,r,s])});var l=e.append(c).attr(`className`,t0.tickItem.name);return v0(l,t0.tickItem,$1.tickItem,o),l}function O2(e,t,n,r,i,a,o){var s=w2(e.value,a),c=E2(e,t,n,s,a),l=c.x1,u=c.x2,d=c.y1,f=c.y2,p=z(QQ(d0(o,[e,t,n,s])),2),m=p[0],h=p[1];r.node().nodeName===`line`&&r.styles(V({x1:l,x2:u,y1:d,y2:f},m)),i.attr(h),r.styles(m)}function k2(e,t,n,r,i,a){O2(e,t,n,D2($(this),e,t,n,r),this,r,i);var o=z(x0(e.value,r),2),s=o[0],c=o[1];return U1(this,{transform:`translate(${s}, ${c})`},a)}function A2(e,t,n,r){var i=n.classNamePrefix,a=f0(t,n.tickFilter),o=XQ(n,`tick`);return e.selectAll(t0.tick.class).data(a,function(e){return e.id||e.label}).join(function(e){var t=e.append(`g`).attr(`className`,t0.tick.name).transition(function(e,t){return k2.call(this,e,t,a,n,o,!1)});return v0(t,t0.tick,$1.tick,i),t},function(e){return e.transition(function(e,t){return this.removeChildren(),k2.call(this,e,t,a,n,o,r.update)})},function(e){return e.transition(function(){var e=this,t=W1(this.childNodes[0],r.exit);return L1(t,function(){return e.remove()}),t})}).transitions()}H();function j2(e,t,n){var r=n.titlePosition,i=r===void 0?`lb`:r,a=n.titleSpacing,o=i$(i),s=e.node().getLocalBounds(),c=z(s.min,2),l=c[0],u=c[1],d=z(s.halfExtents,2),f=d[0],p=d[1],m=z(t.node().getLocalBounds().halfExtents,2),h=m[0],g=m[1],_=z([l+f,u+p],2),v=_[0],y=_[1],b=z(BQ(a),4),x=b[0],S=b[1],C=b[2],w=b[3];if([`start`,`end`].includes(i)&&n.type===`linear`){var T=n.startPos,E=n.endPos,D=z(i===`start`?[T,E]:[E,T],2),O=D[0],k=D[1],A=z(yQ(TQ([-k[0]+O[0],-k[1]+O[1]]),x),2),j=A[0],ee=A[1];return{x:O[0]+j,y:O[1]+ee}}return o.includes(`t`)&&(y-=p+g+x),o.includes(`r`)&&(v+=f+h+S),o.includes(`l`)&&(v-=f+h+w),o.includes(`b`)&&(y+=p+g+C),{x:v,y}}function M2(e,t,n){var r=e.getGeometryBounds().halfExtents[1]*2;if(t===`vertical`){if(n===`left`)return`rotate(-90) translate(0, ${r/2})`;if(n===`right`)return`rotate(-90) translate(0, -${r/2})`}return``}function N2(e,t,n,r,i){var a=z(QQ(XQ(r,`title`)),2),o=a[0],s=a[1],c=s.transform,l=s.transformOrigin,u=or(s,[`transform`,`transformOrigin`]);t.styles(u);var d=c||M2(e.node(),o.direction,o.position);e.styles(V(V({},o),{transformOrigin:l})),t$(e.node(),d);var f=j2($(n._offscreen||n.querySelector(t0.mainGroup.class)),t,r),p=f.x,m=f.y;return U1(t.node(),{transform:`translate(${p}, ${m})`},i)}function P2(e,t,n,r){var i=n.titleText,a=n.classNamePrefix;return e.selectAll(t0.title.class).data([{title:i}].filter(function(e){return!!e.title}),function(e,t){return e.title}).join(function(o){var s=o.append(function(){return lQ(i)}).attr(`className`,t0.title.name).transition(function(){return N2($(this),e,t,n,r.enter)});return v0(s,t0.title,$1.title,a),s},function(i){return i.transition(function(){return N2($(this),e,t,n,r.update)})},function(e){return e.remove()}).transitions()}H();function F2(e,t,n,r){var i=e.showLine,a=e.showTick,o=e.showLabel,s=e.classNamePrefix,c=t.maybeAppendByClassName(t0.lineGroup,`g`);v0(c,t0.lineGroup,$1.lineGroup,s);var l=fQ(i,c,function(t){return N0(t,e,r)})||[],u=t.maybeAppendByClassName(t0.tickGroup,`g`);v0(u,t0.tickGroup,$1.tickGroup,s);var d=fQ(a,u,function(t){return A2(t,n,e,r)})||[],f=t.maybeAppendByClassName(t0.labelGroup,`g`);v0(f,t0.labelGroup,$1.labelGroup,s);var p=fQ(o,f,function(i){return C2(i,n,e,r,t.node())})||[];return B(B(B([],z(l),!1),z(d),!1),z(p),!1).filter(function(e){return!!e})}var I2=function(e){ar(t,e);function t(t){return e.call(this,t,e0)||this}return t.prototype.render=function(e,t,n){var r=this,i=e.titleText,a=e.data,o=e.animate,s=e.showTitle,c=e.showGrid,l=e.dataThreshold,u=e.truncRange,d=e.classNamePrefix,f=t.className||`axis`;d?t.attr(`className`,`${f} ${d}axis`):t.className||t.attr(`className`,`axis`);var p=PQ(a,l).filter(function(e){var t=e.value;return!(u&&t>u[0]&&t<u[1])}),m=I1(n===void 0?o:n),h=$(t).maybeAppendByClassName(t0.gridGroup,`g`);v0(h,t0.gridGroup,$1.gridGroup,d);var g=fQ(c,h,function(t){return R0(t,p,e,m)})||[],_=$(t).maybeAppendByClassName(t0.mainGroup,`g`);v0(_,t0.mainGroup,$1.mainGroup,d),i&&(!this.initialized&&m.enter||this.initialized&&m.update)&&F2(e,$(this.offscreenGroup),p,I1(!1));var v=F2(e,$(_.node()),p,m),y=$(t).maybeAppendByClassName(t0.titleGroup,`g`);v0(y,t0.titleGroup,$1.titleGroup,d);var b=fQ(s,y,function(t){return P2(t,r,e,m)})||[];return B(B(B([],z(g),!1),z(v),!1),z(b),!1).flat().filter(function(e){return!!e})},t}(s$);function L2(e,t,n){return n?`${e} ${n}legend-${t}`:e}function R2(e,t,n){var r=1.4*n;return[[`M`,e-n,t-r],[`L`,e+n,t-r],[`L`,e+n,t+r],[`L`,e-n,t+r],[`Z`]]}var z2=1.4,B2=.4;function V2(e,t,n){var r=n,i=r*z2,a=r/2,o=r/6,s=e+i*B2;return[[`M`,e,t],[`L`,s,t+a],[`L`,e+i,t+a],[`L`,e+i,t-a],[`L`,s,t-a],[`Z`],[`M`,s,t+o],[`L`,e+i-2,t+o],[`M`,s,t-o],[`L`,e+i-2,t-o]]}function H2(e,t,n){var r=n,i=r*z2,a=r/2,o=r/6,s=t+i*B2;return[[`M`,e,t],[`L`,e-a,s],[`L`,e-a,t+i],[`L`,e+a,t+i],[`L`,e+a,s],[`Z`],[`M`,e-o,s],[`L`,e-o,t+i-2],[`M`,e+o,s],[`L`,e+o,t+i-2]]}M$.registerSymbol(`hiddenHandle`,R2),M$.registerSymbol(`verticalHandle`,V2),M$.registerSymbol(`horizontalHandle`,H2);function U2(e,t,n){return e===void 0&&(e=`horizontal`),e===`horizontal`?t:n}var W2={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`};H();var G2=YZ({markerGroup:`marker-group`,marker:`marker`,labelGroup:`label-group`,label:`label`},`handle`),K2={showLabel:!0,formatter:function(e){return e.toString()},markerSize:25,markerStroke:`#c5c5c5`,markerFill:`#fff`,markerLineWidth:1,labelFontSize:12,labelFill:`#c5c5c5`,labelText:``,orientation:`vertical`,spacing:0};(function(e){ar(t,e);function t(t){return e.call(this,t,K2)||this}return t.prototype.render=function(e,t){var n=$(t).maybeAppendByClassName(G2.markerGroup,`g`);this.renderMarker(n);var r=$(t).maybeAppendByClassName(G2.labelGroup,`g`);this.renderLabel(r)},t.prototype.renderMarker=function(e){var t=this,n=this.attributes,r=n.orientation,i=n.classNamePrefix,a=n.markerSymbol,o=a===void 0?U2(r,`horizontalHandle`,`verticalHandle`):a;fQ(!!o,e,function(e){var n=XQ(t.attributes,`marker`),r=V({symbol:o},n),a=L2(G2.marker.name,W2.handleMarker,i);if(t.marker=e.maybeAppendByClassName(G2.marker,function(){return new M$({style:r,className:a})}).update(r),i){var s=t.marker.node().querySelector(`.marker`);if(s){var c=(s.getAttribute(`class`)||``).split(` `)[0],l=L2(c,W2.handleMarker,i);s.setAttribute(`class`,l)}}})},t.prototype.renderLabel=function(e){var t=this,n=this.attributes,r=n.showLabel,i=n.orientation,a=n.spacing,o=a===void 0?0:a,s=n.formatter,c=n.classNamePrefix;fQ(r,e,function(e){var n=XQ(t.attributes,`label`),r=n.text,a=or(n,[`text`]),l=e.select(G2.marker.class)?.node().getBBox()||{},u=l.width,d=u===void 0?0:u,f=l.height,p=z(U2(i,[0,(f===void 0?0:f)+o,`center`,`top`],[d+o,0,`start`,`middle`]),4),m=p[0],h=p[1],g=p[2],_=p[3],v=L2(G2.label.name,W2.handleLabel,c);e.maybeAppendByClassName(G2.label,`text`).attr(`className`,v).styles(V(V({},a),{x:m,y:h,text:s(r).toString(),textAlign:g,textBaseline:_}))})},t})(s$);var q2={showTitle:!0,padding:0,orientation:`horizontal`,backgroundFill:`transparent`,titleText:``,titleSpacing:4,titlePosition:`top-left`,titleFill:`#2C3542`,titleFontWeight:`bold`,titleFontFamily:`sans-serif`,titleFontSize:12},J2=QZ({},q2,{});QZ({},q2,ZQ(K2,`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`});var Y2=YZ({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`);H();var X2=YZ({text:`text`},`title`);function Z2(e,t){var n=e.attributes,r=n.position,i=n.spacing,a=n.inset,o=n.text,s=e.getBBox(),c=t.getBBox(),l=i$(r),u=z(BQ(o?i:0),4),d=u[0],f=u[1],p=u[2],m=u[3],h=z(BQ(a),4),g=h[0],_=h[1],v=h[2],y=h[3],b=z([m+f,d+p],2),x=b[0],S=b[1],C=z([y+_,g+v],2),w=C[0],T=C[1];if(l[0]===`l`)return new qZ(s.x,s.y,c.width+s.width+x+w,Math.max(c.height+T,s.height));if(l[0]===`t`)return new qZ(s.x,s.y,Math.max(c.width+w,s.width),c.height+s.height+S+T);var E=z([t.attributes.width||c.width,t.attributes.height||c.height],2),D=E[0],O=E[1];return new qZ(c.x,c.y,D+s.width+x+w,O+s.height+S+T)}function Q2(e,t){var n=Object.entries(t).reduce(function(t,n){var r=z(n,2),i=r[0],a=r[1];return e.node().attr(i)||(t[i]=a),t},{});e.styles(n)}function $2(e){var t,n,r,i,a=e,o=a.width,s=a.height,c=a.position,l=z([o/2,s/2],2),u=l[0],d=l[1],f=z([+u,+d,`center`,`middle`],4),p=f[0],m=f[1],h=f[2],g=f[3],_=i$(c);return _.includes(`l`)&&(t=z([0,`start`],2),p=t[0],h=t[1]),_.includes(`r`)&&(n=z([+o,`end`],2),p=n[0],h=n[1]),_.includes(`t`)&&(r=z([0,`top`],2),m=r[0],g=r[1]),_.includes(`b`)&&(i=z([+s,`bottom`],2),m=i[0],g=i[1]),{x:p,y:m,textAlign:h,textBaseline:g}}var e4=function(e){ar(t,e);function t(t){return e.call(this,t,{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,t=this.attributes,n=t.width,r=t.height,i=t.position,a=t.spacing,o=t.inset,s=e.querySelector(X2.text.class);if(!s)return new qZ(0,0,+n,+r);var c=s.getBBox(),l=c.width,u=c.height,d=z(BQ(a),4),f=d[0],p=d[1],m=d[2],h=d[3],g=z([0,0,+n,+r],4),_=g[0],v=g[1],y=g[2],b=g[3],x=i$(i);if(x.includes(`i`))return new qZ(_,v,y,b);x.forEach(function(e,t){var i,a,o,s;e===`t`&&(i=z(t===0?[u+m,+r-u-m]:[0,+r],2),v=i[0],b=i[1]),e===`r`&&(a=z([+n-l-h],1),y=a[0]),e===`b`&&(o=z([+r-u-f],1),b=o[0]),e===`l`&&(s=z(t===0?[l+p,+n-l-p]:[0,+n],2),_=s[0],y=s[1])});var S=z(BQ(o),4),C=S[0],w=S[1],T=S[2],E=S[3],D=z([E+w,C+T],2),O=D[0],k=D[1];return new qZ(_+E,v+C,y-O,b-k)},t.prototype.getBBox=function(){return this.title?this.title.getBBox():new qZ(0,0,0,0)},t.prototype.render=function(e,t){var n=this;e.width,e.height,e.position,e.spacing;var r=e.classNamePrefix,i=or(e,[`width`,`height`,`position`,`spacing`,`classNamePrefix`]),a=z(QQ(i),1)[0],o=$2(e),s=o.x,c=o.y,l=o.textAlign,u=o.textBaseline;fQ(!!i.text,$(t),function(e){var t=L2(X2.text.name,W2.title,r);n.title=e.maybeAppendByClassName(X2.text,`text`).attr(`className`,t).styles(a).call(Q2,{x:s,y:c,textAlign:l,textBaseline:u}).node()})},t}(s$);H();var t4=YZ({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`),n4=function(e){ar(t,e);function t(t){var n=e.call(this,t,{x:0,y:0,animate:{easing:`linear`,duration:200,fill:`both`},buttonCursor:`pointer`,buttonFill:`black`,buttonD:O$(0,0,6),buttonSize:12,controllerPadding:5,controllerSpacing:5,formatter:function(e,t){return`${e}/${t}`},defaultPage:0,loop:!1,orientation:`horizontal`,pageNumFill:`black`,pageNumFontSize:12,pageNumTextAlign:`start`,pageNumTextBaseline:`middle`})||this;return n.playState=`idle`,n.contentGroup=n.appendChild(new af({class:t4.contentGroup.name})),n.playWindow=n.contentGroup.appendChild(new af({class:t4.playWindow.name})),n.innerCurrPage=n.defaultPage,n}return Object.defineProperty(t.prototype,`defaultPage`,{get:function(){var e=this.attributes.defaultPage;return mn(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,t=z(n$(e.map(function(e){var t=e.getBBox();return[t.width,t.height]})).map(function(e){return Math.max.apply(Math,B([],z(e),!1))}),2),n=t[0],r=t[1],i=this.attributes,a=i.pageWidth,o=a===void 0?n:a,s=i.pageHeight;return{pageWidth:o,pageHeight:s===void 0?r:s}},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 t=e.prototype.getBBox.call(this),n=t.x,r=t.y,i=this.controllerShape,a=this.pageShape,o=a.pageWidth,s=a.pageHeight;return new qZ(n,r,o+i.width,s)},t.prototype.goTo=function(e){var t=this,n=this.attributes.animate,r=this,i=r.currPage,a=r.playState,o=r.playWindow,s=r.pageViews;if(a!==`idle`||e<0||s.length<=0||e>=s.length)return null;s[i].setLocalPosition(0,0),this.prepareFollowingPage(e);var c=z(this.getFollowingPageDiff(e),2),l=c[0],u=c[1];this.playState=`running`;var d=B1(o,[{transform:`translate(0, 0)`},{transform:`translate(${-l}, ${-u})`}],n);return L1(d,function(){t.innerCurrPage=e,t.playState=`idle`,t.setVisiblePages([e]),t.updatePageInfo()}),d},t.prototype.prev=function(){var e=this.attributes.loop,t=this.pageViews.length,n=this.currPage;if(!e&&n<=0)return null;var r=e?(n-1+t)%t:mn(n-1,0,t);return this.goTo(r)},t.prototype.next=function(){var e=this.attributes.loop,t=this.pageViews.length,n=this.currPage;if(!e&&n>=t-1)return null;var r=e?(n+1)%t:mn(n+1,0,t);return this.goTo(r)},t.prototype.renderClipPath=function(e){var t=this.pageShape,n=t.pageWidth,r=t.pageHeight;if(!n||!r){this.contentGroup.style.clipPath=void 0;return}this.clipPath=e.maybeAppendByClassName(t4.clipPath,`rect`).styles({width:n,height:r}),this.contentGroup.attr(`clipPath`,this.clipPath.node())},t.prototype.setVisiblePages=function(e){this.playWindow.children.forEach(function(t,n){e.includes(n)?RZ(t):zZ(t)})},t.prototype.adjustControllerLayout=function(){var e=this,t=e.prevBtnGroup,n=e.nextBtnGroup,r=e.pageInfoGroup,i=this.attributes,a=i.orientation,o=i.controllerPadding,s=r.getBBox(),c=s.width;s.height;var l=z(a===`horizontal`?[-180,0]:[-90,90],2),u=l[0],d=l[1];t.setLocalEulerAngles(u),n.setLocalEulerAngles(d);var f=t.getBBox(),p=f.width,m=f.height,h=n.getBBox(),g=h.width,_=h.height,v=Math.max(p,c,g),y=a===`horizontal`?{offset:[[0,0],[p/2+o,0],[p+c+o*2,0]],textAlign:`start`}:{offset:[[v/2,-m-o],[v/2,0],[v/2,_+o]],textAlign:`center`},b=z(y.offset,3),x=z(b[0],2),S=x[0],C=x[1],w=z(b[1],2),T=w[0],E=w[1],D=z(b[2],2),O=D[0],k=D[1],A=y.textAlign,j=r.querySelector(`text`);j&&(j.style.textAlign=A),t.setLocalPosition(S,C),r.setLocalPosition(T,E),n.setLocalPosition(O,k)},t.prototype.updatePageInfo=function(){var e,t=this,n=t.currPage,r=t.pageViews,i=t.attributes.formatter;r.length<2||((e=this.pageInfoGroup.querySelector(t4.pageInfo.class))==null||e.attr(`text`,i(n+1,r.length)),this.adjustControllerLayout())},t.prototype.getFollowingPageDiff=function(e){var t=this.currPage;if(t===e)return[0,0];var n=this.attributes.orientation,r=this.pageShape,i=r.pageWidth,a=r.pageHeight,o=e<t?-1:1;return n===`horizontal`?[o*i,0]:[0,o*a]},t.prototype.prepareFollowingPage=function(e){var t=this,n=t.currPage,r=t.pageViews;if(this.setVisiblePages([e,n]),e!==n){var i=z(this.getFollowingPageDiff(e),2),a=i[0],o=i[1];r[e].setLocalPosition(a,o)}},t.prototype.renderController=function(e){var t=this,n=this.attributes,r=n.controllerSpacing,i=n.classNamePrefix,a=i===void 0?``:i,o=this.pageShape,s=o.pageWidth,c=o.pageHeight,l=this.pageViews.length>=2,u=e.maybeAppendByClassName(t4.controller,`g`);if(BZ(u.node(),l),l){var d=XQ(this.attributes,`button`),f=XQ(this.attributes,`pageNum`),p=z(QQ(d),2),m=p[0],h=p[1],g=m.size,_=or(m,[`size`]),v=!u.select(t4.prevBtnGroup.class).node(),y=u.maybeAppendByClassName(t4.prevBtnGroup,`g`).styles(h);this.prevBtnGroup=y.node();var b=y.maybeAppendByClassName(t4.prevBtn,`path`);if(a){var x=L2(t4.prevBtn.name,W2.prevBtn,a);b.node().setAttribute(`class`,x)}var S=u.maybeAppendByClassName(t4.nextBtnGroup,`g`).styles(h);this.nextBtnGroup=S.node();var C=S.maybeAppendByClassName(t4.nextBtn,`path`);if(a){var w=L2(t4.nextBtn.name,W2.nextBtn,a);C.node().setAttribute(`class`,w)}[b,C].forEach(function(e){e.styles(V(V({},_),{transformOrigin:`center`})),FQ(e.node(),g,!0)});var T=u.maybeAppendByClassName(t4.pageInfoGroup,`g`);this.pageInfoGroup=T.node();var E=T.maybeAppendByClassName(t4.pageInfo,`text`);if(E.styles(f),a){var D=L2(t4.pageInfo.name,W2.pageInfo,a);E.node().setAttribute(`class`,D)}this.updatePageInfo(),u.node().setLocalPosition(s+r,c/2),v&&(this.prevBtnGroup.addEventListener(`click`,function(){t.prev()}),this.nextBtnGroup.addEventListener(`click`,function(){t.next()}))}},t.prototype.render=function(e,t){var n=e.x,r=n===void 0?0:n,i=e.y,a=i===void 0?0:i;this.attr(`transform`,`translate(${r}, ${a})`);var o=$(t);this.renderClipPath(o),this.renderController(o),this.setVisiblePages([this.defaultPage]),this.goTo(this.defaultPage)},t.prototype.bindEvents=function(){var e=this,t=Ln(function(){return e.render(e.attributes,e)},50);this.playWindow.addEventListener(ad.INSERTED,t),this.playWindow.addEventListener(ad.REMOVED,t)},t}(s$),r4,i4={CONTAINER:`component-poptip`,ARROW:`component-poptip-arrow`,TEXT:`component-poptip-text`},a4=(r4={},r4[`.${i4.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`},r4[`.${i4.TEXT}`]={"text-align":`center`},r4[`.${i4.CONTAINER}[data-position='top']`]={transform:`translate(-50%, -100%)`},r4[`.${i4.CONTAINER}[data-position='left']`]={transform:`translate(-100%, -50%)`},r4[`.${i4.CONTAINER}[data-position='right']`]={transform:`translate(0, -50%)`},r4[`.${i4.CONTAINER}[data-position='bottom']`]={transform:`translate(-50%, 0)`},r4[`.${i4.CONTAINER}[data-position='top-left']`]={transform:`translate(0,-100%)`},r4[`.${i4.CONTAINER}[data-position='top-right']`]={transform:`translate(-100%,-100%)`},r4[`.${i4.CONTAINER}[data-position='left-top']`]={transform:`translate(-100%, 0)`},r4[`.${i4.CONTAINER}[data-position='left-bottom']`]={transform:`translate(-100%, -100%)`},r4[`.${i4.CONTAINER}[data-position='right-top']`]={transform:`translate(0, 0)`},r4[`.${i4.CONTAINER}[data-position='right-bottom']`]={transform:`translate(0, -100%)`},r4[`.${i4.CONTAINER}[data-position='bottom-left']`]={transform:`translate(0, 0)`},r4[`.${i4.CONTAINER}[data-position='bottom-right']`]={transform:`translate(-100%, 0)`},r4[`.${i4.ARROW}`]={width:`4px`,height:`4px`,transform:`rotate(45deg)`,"background-color":`rgba(0, 0, 0)`,position:`absolute`,"z-index":-1},r4[`.${i4.CONTAINER}[data-position='top']`]={transform:`translate(-50%, calc(-100% - 5px))`},r4[`[data-position='top'] .${i4.ARROW}`]={bottom:`-2px`},r4[`.${i4.CONTAINER}[data-position='left']`]={transform:`translate(calc(-100% - 5px), -50%)`},r4[`[data-position='left'] .${i4.ARROW}`]={right:`-2px`},r4[`.${i4.CONTAINER}[data-position='right']`]={transform:`translate(5px, -50%)`},r4[`[data-position='right'] .${i4.ARROW}`]={left:`-2px`},r4[`.${i4.CONTAINER}[data-position='bottom']`]={transform:`translate(-50%, 5px)`},r4[`[data-position='bottom'] .${i4.ARROW}`]={top:`-2px`},r4[`.${i4.CONTAINER}[data-position='top-left']`]={transform:`translate(0, calc(-100% - 5px))`},r4[`[data-position='top-left'] .${i4.ARROW}`]={left:`10px`,bottom:`-2px`},r4[`.${i4.CONTAINER}[data-position='top-right']`]={transform:`translate(-100%, calc(-100% - 5px))`},r4[`[data-position='top-right'] .${i4.ARROW}`]={right:`10px`,bottom:`-2px`},r4[`.${i4.CONTAINER}[data-position='left-top']`]={transform:`translate(calc(-100% - 5px), 0)`},r4[`[data-position='left-top'] .${i4.ARROW}`]={right:`-2px`,top:`8px`},r4[`.${i4.CONTAINER}[data-position='left-bottom']`]={transform:`translate(calc(-100% - 5px), -100%)`},r4[`[data-position='left-bottom'] .${i4.ARROW}`]={right:`-2px`,bottom:`8px`},r4[`.${i4.CONTAINER}[data-position='right-top']`]={transform:`translate(5px, 0)`},r4[`[data-position='right-top'] .${i4.ARROW}`]={left:`-2px`,top:`8px`},r4[`.${i4.CONTAINER}[data-position='right-bottom']`]={transform:`translate(5px, -100%)`},r4[`[data-position='right-bottom'] .${i4.ARROW}`]={left:`-2px`,bottom:`8px`},r4[`.${i4.CONTAINER}[data-position='bottom-left']`]={transform:`translate(0, 5px)`},r4[`[data-position='bottom-left'] .${i4.ARROW}`]={top:`-2px`,left:`8px`},r4[`.${i4.CONTAINER}[data-position='bottom-right']`]={transform:`translate(-100%, 5px)`},r4[`[data-position='bottom-right'] .${i4.ARROW}`]={top:`-2px`,right:`8px`},r4),o4=void 0;function s4(e,t,n,r,i,a){if(i===void 0&&(i=!1),a===void 0&&(a=!1),a)return[e,t];var o=n.getBoundingClientRect(),s=o.x,c=o.y,l=o.width,u=o.height;switch(r){case`top`:return i?[s+l/2,c]:[e,c];case`left`:return i?[s,c+u/2]:[s,t];case`bottom`:return i?[s+l/2,c+u]:[e,c+u];case`right`:return i?[s+l,c+u/2]:[s+l,t];case`top-right`:case`right-top`:return[s+l,c];case`left-bottom`:case`bottom-left`:return[s,c+u];case`right-bottom`:case`bottom-right`:return[s+l,c+u];default:return[s,c]}}var c4=function(e){var t;return function(){var n=[...arguments];return t||=e.apply(o4,n),t}};function l4(e){var t=e&&document.getElementById(e);return t||(t=document.createElement(`div`),t.setAttribute(`id`,e),document.body.appendChild(t)),t}function u4(e){return c4(l4)(e)}H();var d4=function(e){ar(t,e);function t(n){var r=e.call(this,Wn({style:{id:`component-poptip`}},t.defaultOptions,n))||this;return r.visibility=`visible`,r.map=new Map,r.domStyles=``,r.initShape(),r.render(r.attributes,r),r}return Object.defineProperty(t.prototype,`visible`,{get:function(){return this.visibility===`visible`},enumerable:!1,configurable:!0}),t.prototype.render=function(e,t){this.visibility=this.style.visibility,this.updatePoptipElement()},t.prototype.update=function(e){this.attr(Wn({},this.style,e)),this.render(this.attributes,this)},t.prototype.bind=function(e,t){var n=this;if(e){var r=this.style.text,i=function(i){var a=e,o=n.style,s=r;if(t){var c=typeof t==`function`?t.call(null,i):t,l=c.html,u=c.target,d=or(c,[`html`,`target`]);o=Fn({},n.style,d),(u||u===!1)&&(a=u),typeof l==`string`&&(s=l)}var f=o.position,p=o.arrowPointAtCenter,m=o.follow,h=o.offset;if(a){var g=i,_=g.clientX,v=g.clientY,y=z(s4(_,v,a,f,p,m),2),b=y[0],x=y[1];n.showTip(b,x,{text:s,position:f,offset:h})}else n.hideTip()},a=function(){n.hideTip()};e.addEventListener(`mousemove`,i),e.addEventListener(`mouseleave`,a),this.map.set(e,[i,a])}},t.prototype.unbind=function(e){if(this.map.has(e)){var t=z(this.map.get(e)||[],2),n=t[0],r=t[1];n&&e.removeEventListener(`mousemove`,n),r&&e.removeEventListener(`mouseleave`,r),this.map.delete(e)}},t.prototype.clear=function(){this.container.innerHTML=``},t.prototype.destroy=function(){var t=this,n;B([],z(this.map.keys()),!1).forEach(function(e){return t.unbind(e)}),(n=this.container)==null||n.remove(),e.prototype.destroy.call(this)},t.prototype.showTip=function(e,t,n){var r=Jn(n,`text`);if(!(r&&typeof r!=`string`)&&(this.applyStyles(),e&&t&&n)){var i=n.offset,a=n.position;if(a&&this.container.setAttribute(`data-position`,a),this.setOffsetPosition(e,t,i),typeof r==`string`){var o=this.container.querySelector(`.${i4.TEXT}`);o&&(o.innerHTML=r)}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`${i4.CONTAINER}${e?` ${e}`:``}`},t.prototype.initShape=function(){var e=this,t=this.style.id;this.container=u4(t),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 t=this.style,n=t.id,r=t.template,i=t.text;this.container.setAttribute(`id`,n),this.container.className=this.getClassName(),e.innerHTML=`<span class="${i4.ARROW}"></span>`,un(r)?e.innerHTML+=r:r&&Nn(r)&&e.appendChild(r),i&&(e.getElementsByClassName(i4.TEXT)[0].textContent=i),this.applyStyles(),this.container.style.visibility=this.visibility},t.prototype.applyStyles=function(){var e=QZ({},a4,this.style.domStyles),t=Object.entries(e).reduce(function(e,t){var n=z(t,2),r=n[0],i=n[1];return`${e}${r}{${Object.entries(i).reduce(function(e,t){var n=z(t,2);return`${e}${n[0]}: ${n[1]};`},``)}}`},``);if(this.domStyles!==t){this.domStyles=t;var n=this.container.querySelector(`style`);n&&this.container.removeChild(n),n=document.createElement(`style`),n.innerHTML=t,this.container.appendChild(n)}},t.prototype.setOffsetPosition=function(e,t,n){n===void 0&&(n=this.style.offset);var r=z(n,2),i=r[0],a=i===void 0?0:i,o=r[1],s=o===void 0?0:o;this.container.style.left=`${e+a}px`,this.container.style.top=`${t+s}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:a4,template:`<div class="${i4.TEXT}"></div>`}},t}(s$);H();var f4=YZ({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`),p4={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 m4(e){var t=e.querySelector(f4.marker.class);return t?t.style:{}}var h4=function(e){ar(t,e);function t(t,n){var r=e.call(this,t,{span:[1,1],marker:function(){return new $d({style:{r:6}})},markerSize:10,labelFill:`#646464`,valueFill:`#646464`,labelFontSize:12,valueFontSize:12,labelTextBaseline:`middle`,valueTextBaseline:`middle`})||this;return r.keyFields={},r.keyFields=n||{},r}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,t=this.valueGroup,n=this.attributes,r=n.markerSize,i=n.focus,a=n.focusMarkerSize,o=e.node().getBBox(),s=o.width,c=o.height,l=t.node().getBBox(),u=l.width,d=l.height;return{markerWidth:r,labelWidth:s,valueWidth:u,focusWidth:i?a??12:0,height:Math.max(r,c,d)}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`span`,{get:function(){var e=this.attributes.span;if(!e)return[1,1];var t=z(BQ(e),2),n=t[0],r=t[1],i=this.showValue?r:0,a=n+i;return[n/a,i/a]},enumerable:!1,configurable:!0}),t.prototype.setAttribute=function(t,n){e.prototype.setAttribute.call(this,t,n)},Object.defineProperty(t.prototype,`shape`,{get:function(){var e,t=this.attributes,n=t.markerSize,r=t.width,i=this.actualSpace,a=i.markerWidth,o=i.focusWidth,s=i.height,c=this.actualSpace,l=c.labelWidth,u=c.valueWidth,d=z(this.spacing,3),f=d[0],p=d[1],m=d[2];if(r){var h=r-n-f-p-o-m,g=z(this.span,2),_=g[0],v=g[1];e=z([_*h,v*h],2),l=e[0],u=e[1]}return{width:a+l+u+f+p+o+m,height:s,markerWidth:a,labelWidth:l,valueWidth:u,focusWidth:o}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`spacing`,{get:function(){var e=this.attributes,t=e.spacing,n=e.focus;if(!t)return[0,0,0];var r=z(BQ(t),3),i=r[0],a=r[1],o=r[2];return[i,this.showValue?a:0,n?o:0]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`layout`,{get:function(){var e=this.shape,t=e.markerWidth,n=e.labelWidth,r=e.valueWidth,i=e.focusWidth,a=e.width,o=e.height,s=z(this.spacing,3),c=s[0],l=s[1],u=s[2];return{height:o,width:a,markerWidth:t,labelWidth:n,valueWidth:r,focusWidth:i,position:[t/2,t+c,t+n+c+l,t+n+r+c+l+u+i/2]}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scaleSize`,{get:function(){var e=m4(this.markerGroup.node()),t=this.attributes,n=t.markerSize,r=t.markerStrokeWidth,i=r===void 0?e.strokeWidth:r,a=t.markerLineWidth,o=a===void 0?e.lineWidth:a,s=t.markerStroke,c=s===void 0?e.stroke:s,l=+(i||o||+!!c)*Math.sqrt(2),u=this.markerGroup.node().getBBox(),d=u.width,f=u.height;return(1-l/Math.max(d,f))*n},enumerable:!1,configurable:!0}),t.prototype.renderMarker=function(e){var t=this,n=this.attributes,r=n.marker,i=n.classNamePrefix,a=XQ(this.attributes,`marker`);this.markerGroup=e.maybeAppendByClassName(f4.markerGroup,`g`).style(`zIndex`,0),fQ(!!r,this.markerGroup,function(){var e=t.markerGroup.node(),n=e.childNodes?.[0],o=L2(f4.marker.name,W2.marker,i),s=typeof r==`string`?new M$({style:{symbol:r},className:o}):r();n?s.nodeName===n.nodeName?n instanceof M$?n.update(V(V({},a),{symbol:r})):(UQ(n,s),$(n).styles(a)):(n.remove(),s instanceof M$||(s.className=L2(f4.marker.name,W2.marker,i)),$(s).styles(a),e.appendChild(s)):(s instanceof M$||(s.className=L2(f4.marker.name,W2.marker,i),$(s).styles(a)),e.appendChild(s)),t.markerGroup.node().scale(1/t.markerGroup.node().getScale()[0]);var c=FQ(t.markerGroup.node(),t.scaleSize,!0);t.markerGroup.node().style._transform=`scale(${c})`})},t.prototype.renderLabel=function(e){var t=XQ(this.attributes,`label`),n=t.text,r=or(t,[`text`]),i=this.attributes.classNamePrefix;this.labelGroup=e.maybeAppendByClassName(f4.labelGroup,`g`).style(`zIndex`,0);var a=L2(f4.label.name,W2.label,i),o=this.labelGroup.maybeAppendByClassName(f4.label,function(){return lQ(n)});o.node().setAttribute(`class`,a),o.styles(r)},t.prototype.renderValue=function(e){var t=this,n=XQ(this.attributes,`value`),r=n.text,i=or(n,[`text`]),a=this.attributes.classNamePrefix;this.valueGroup=e.maybeAppendByClassName(f4.valueGroup,`g`).style(`zIndex`,0),fQ(this.showValue,this.valueGroup,function(){var e=L2(f4.value.name,W2.value,a),n=t.valueGroup.maybeAppendByClassName(f4.value,function(){return lQ(r)});n.node().setAttribute(`class`,e),n.styles(i)})},t.prototype.createPoptip=function(){var e=this.attributes.poptip||{};e.render;var t=new d4({style:QZ(p4,or(e,[`render`]))});return this.poptipGroup=t,t},t.prototype.bindPoptip=function(e){var t=this,n=this.attributes.poptip;n&&(this.poptipGroup||this.createPoptip()).bind(e,function(){var e=t.attributes,r=e.labelText,i=e.valueText,a=e.markerFill,o=typeof r==`string`?r:r?.attr(`text`),s=typeof i==`string`?i:i?.attr(`text`);if(typeof n.render==`function`)return{html:n.render(V(V({},t.keyFields),{label:o,value:s,color:a}))};var c=``;return(typeof o==`string`||typeof o==`number`)&&(c+=`<div class="component-poptip-label">${o}</div>`),(typeof s==`string`||typeof s==`number`)&&(c+=`<div class="component-poptip-value">${s}</div>`),{html:c}})},t.prototype.renderFocus=function(e){var t=this,n=this.attributes,r=n.focus,i=n.focusMarkerSize,a=n.classNamePrefix,o={x:0,y:0,size:i,opacity:.6,symbol:`focus`,stroke:`#aaaaaa`,lineWidth:1};Mn(r)||(this.focusGroup=e.maybeAppendByClassName(f4.focusGroup,`g`).style(`zIndex`,0),fQ(r,this.focusGroup,function(){var n=L2(f4.focus.name,W2.focusIcon,a),r=new M$({style:V(V({},o),{symbol:`focus`}),className:n}),i=new $d({style:{r:o.size/2,fill:`transparent`}}),s=t.focusGroup.node();s.appendChild(i),s.appendChild(r),r.update({opacity:0}),e.node().addEventListener(`pointerenter`,function(){r.update({opacity:1})}),e.node().addEventListener(`pointerleave`,function(){r.update({opacity:0})})}))},t.prototype.renderPoptip=function(e){var t=this;this.attributes.poptip&&[e.maybeAppendByClassName(f4.value,`g`).node(),e.maybeAppendByClassName(f4.label,`g`).node()].forEach(function(e){e&&t.bindPoptip(e)})},t.prototype.renderBackground=function(e){var t=this.shape,n=t.width,r=t.height,i=XQ(this.attributes,`background`);this.background=e.maybeAppendByClassName(f4.backgroundGroup,`g`).style(`zIndex`,-1);var a=this.background.maybeAppendByClassName(f4.background,`rect`);a.styles(V({width:n,height:r},i));var o=this.attributes.classNamePrefix,s=o===void 0?``:o;if(s){var c=L2(f4.background.name,W2.background,s);a.node().setAttribute(`class`,c)}},t.prototype.adjustLayout=function(){var e=this.layout,t=e.labelWidth,n=e.valueWidth,r=e.height,i=z(e.position,4),a=i[0],o=i[1],s=i[2],c=i[3],l=r/2;this.markerGroup.styles({transform:`translate(${a}, ${l})${this.markerGroup.node().style._transform}`}),this.labelGroup.styles({transform:`translate(${o}, ${l})`}),this.focusGroup&&this.focusGroup.styles({transform:`translate(${c}, ${l})`}),oQ(this.labelGroup.select(f4.label.class).node(),Math.ceil(t)),this.showValue&&(this.valueGroup.styles({transform:`translate(${s}, ${l})`}),oQ(this.valueGroup.select(f4.value.class).node(),Math.ceil(n)))},t.prototype.render=function(e,t){var n=$(t),r=e.x,i=r===void 0?0:r,a=e.y,o=a===void 0?0:a;n.styles({transform:`translate(${i}, ${o})`}),this.renderMarker(n),this.renderLabel(n),this.renderValue(n),this.renderBackground(n),this.renderPoptip(n),this.renderFocus(n),this.adjustLayout()},t}(s$);H();var g4=YZ({page:`item-page`,navigator:`navigator`,item:`item`},`items`),_4=function(e,t,n){return n===void 0&&(n=!0),e?t(e):n},v4=function(e){ar(t,e);function t(t){var n=e.call(this,t,{data:[],gridRow:1/0,gridCol:void 0,padding:0,width:1e3,height:100,rowPadding:0,colPadding:0,layout:`flex`,orientation:`horizontal`,click:nr,mouseenter:nr,mouseleave:nr})||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,t=e.gridRow,n=e.gridCol,r=e.data;if(!t&&!n)throw Error(`gridRow and gridCol can not be set null at the same time`);return t&&n?[t,n]:t?[t,r.length]:[r.length,n]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`renderData`,{get:function(){var e=this.attributes,t=e.data,n=e.layout,r=e.poptip,i=e.focus,a=e.focusMarkerSize,o=e.classNamePrefix,s=XQ(this.attributes,`item`);return t.map(function(e,c){var l=e.id,u=l===void 0?c:l,d=e.label,f=e.value;return{id:`${u}`,index:c,style:V({layout:n,labelText:d,valueText:f,poptip:r,focus:i,focusMarkerSize:a,classNamePrefix:o},Object.fromEntries(Object.entries(s).map(function(n){var r=z(n,2),i=r[0],a=r[1];return[i,JZ(a,[e,c,t])]})))}})},enumerable:!1,configurable:!0}),t.prototype.getGridLayout=function(){var e=this,t=this.attributes,n=t.orientation,r=t.width,i=t.rowPadding,a=t.colPadding,o=z(this.navigatorShape,1)[0],s=z(this.grid,2),c=s[0],l=s[1],u=l*c,d=0;return this.pageViews.children.map(function(t,s){var f,p,m=Math.floor(s/u),h=s%u,g=e.ifHorizontal(l,c),_=[Math.floor(h/g),h%g];n===`vertical`&&_.reverse();var v=z(_,2),y=v[0],b=v[1],x=(r-o-(l-1)*a)/l,S=t.getBBox().height,C=z([0,0],2),w=C[0],T=C[1];return n===`horizontal`?(f=z([d,y*(S+i)],2),w=f[0],T=f[1],d=b===l-1?0:d+x+a):(p=z([b*(x+a),d],2),w=p[0],T=p[1],d=y===c-1?0:d+S+i),{page:m,index:s,row:y,col:b,pageIndex:h,width:x,height:S,x:w,y:T}})},t.prototype.getFlexLayout=function(){var e=this.attributes,t=e.width,n=e.height,r=e.rowPadding,i=e.colPadding,a=z(this.navigatorShape,1)[0],o=z(this.grid,2),s=o[0],c=o[1],l=z([t-a,n],2),u=l[0],d=l[1],f=z([0,0,0,0,0,0,0,0],8),p=f[0],m=f[1],h=f[2],g=f[3],_=f[4],v=f[5],y=f[6],b=f[7];return this.pageViews.children.map(function(e,t){var n,a,o,l,f=e.getBBox(),x=f.width,S=f.height,C=y===0?0:i,w=y+C+x;return w<=u&&_4(_,function(e){return e<c})?(n=z([y+C,b,w],3),p=n[0],m=n[1],y=n[2],{width:x,height:S,x:p,y:m,page:h,index:t,pageIndex:g++,row:v,col:_++}):(a=z([v+1,0,0,b+S+r],4),v=a[0],_=a[1],y=a[2],b=a[3],b+S<=d&&_4(v,function(e){return e<s})?(o=z([y,b,x],3),p=o[0],m=o[1],y=o[2],{width:x,height:S,x:p,y:m,page:h,index:t,pageIndex:g++,row:v,col:_++}):(l=z([0,0,x,0,h+1,0,0,0],8),p=l[0],m=l[1],y=l[2],b=l[3],h=l[4],g=l[5],v=l[6],_=l[7],{width:x,height:S,x:p,y:m,page:h,index:t,pageIndex:g++,row:v,col:_++}))})},Object.defineProperty(t.prototype,`itemsLayout`,{get:function(){this.navigatorShape=[0,0];var e=this.attributes.layout===`grid`?this.getGridLayout:this.getFlexLayout,t=e.call(this);return t.slice(-1)[0].page>0?(this.navigatorShape=[55,0],e.call(this)):t},enumerable:!1,configurable:!0}),t.prototype.ifHorizontal=function(e,t){var n=this.attributes.orientation;return U2(n,e,t)},t.prototype.flattenPage=function(e){e.querySelectorAll(g4.item.class).forEach(function(t){e.appendChild(t)}),e.querySelectorAll(g4.page.class).forEach(function(t){e.removeChild(t).destroy()})},t.prototype.renderItems=function(e){var t=this.attributes,n=t.click,r=t.mouseenter,i=t.mouseleave,a=t.classNamePrefix;this.flattenPage(e);var o=this.dispatchCustomEvent.bind(this),s=L2(g4.item.name,W2.item,a);$(e).selectAll(g4.item.class).data(this.renderData,function(e){return e.id}).join(function(e){return e.append(function(e){var t=e.style,n=or(e,[`style`]);return new h4({style:t},n)}).attr(`className`,s).on(`click`,function(){n?.(this),o(`itemClick`,{item:this})}).on(`pointerenter`,function(){r?.(this),o(`itemMouseenter`,{item:this})}).on(`pointerleave`,function(){i?.(this),o(`itemMouseleave`,{item:this})})},function(e){return e.each(function(e){var t=e.style;this.update(t)})},function(e){return e.remove()})},t.prototype.relayoutNavigator=function(){var e=this.attributes,t=e.layout,n=e.width,r=this.pageViews.children[0]?.getBBox().height||0,i=z(this.navigatorShape,2),a=i[0],o=i[1];this.navigator.update(t===`grid`?{pageWidth:n-a,pageHeight:r-o}:{})},t.prototype.adjustLayout=function(){var e=this,t=Object.entries(dQ(this.itemsLayout,`page`)).map(function(e){var t=z(e,2);return{page:t[0],layouts:t[1]}}),n=B([],z(this.navigator.getContainer().children),!1);t.forEach(function(t){var r=t.layouts,i=e.pageViews.appendChild(new af({className:g4.page.name}));r.forEach(function(e){var t=e.x,r=e.y,a=e.index,o=e.width,s=e.height,c=n[a];i.appendChild(c),Yn(c,`__layout__`,e),c.update({x:t,y:r,width:o,height:s})})}),this.relayoutNavigator()},t.prototype.renderNavigator=function(e){var t=this.attributes,n=t.orientation,r=t.classNamePrefix,i=XQ(this.attributes,`nav`),a=QZ({orientation:n,classNamePrefix:r},i),o=this;return e.selectAll(g4.navigator.class).data([`nav`]).join(function(e){return e.append(function(){return new n4({style:a})}).attr(`className`,g4.navigator.name).each(function(){o.navigator=this})},function(e){return e.each(function(){this.update(a)})},function(e){return e.remove()}),this.navigator},t.prototype.getBBox=function(){return this.navigator.getBBox()},t.prototype.render=function(e,t){var n=this.attributes.data;if(!(!n||n.length===0)){var r=this.renderNavigator($(t));this.renderItems(r.getContainer()),this.adjustLayout()}},t.prototype.dispatchCustomEvent=function(e,t){var n=new Yu(e,{detail:t});this.dispatchEvent(n)},t}(s$);H();var y4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.update=function(e){this.attr(e)},t}(sf),b4=function(e){ar(t,e);function t(t){return e.call(this,t,J2)||this}return t.prototype.renderTitle=function(e,t,n){var r=this.attributes,i=r.showTitle,a=r.titleText,o=r.classNamePrefix,s=z(QQ(XQ(this.attributes,`title`)),2),c=s[0],l=s[1];this.titleGroup=e.maybeAppendByClassName(Y2.titleGroup,`g`).styles(l);var u=V(V({width:t,height:n},c),{text:i?a:``,classNamePrefix:o});this.title=this.titleGroup.maybeAppendByClassName(Y2.title,function(){return new e4({style:u})}).update(u)},t.prototype.renderCustom=function(e){var t=this.attributes.data,n={innerHTML:this.attributes.render(t),pointerEvents:`auto`};e.maybeAppendByClassName(Y2.html,function(){return new y4({className:Y2.html.name,style:n})}).update(n)},t.prototype.renderItems=function(e,t){var n=t.x,r=t.y,i=t.width,a=t.height,o=z(QQ(XQ(this.attributes,`title`,!0)),2),s=o[0],c=o[1],l=V(V({},s),{width:i,height:a,x:0,y:0});this.itemsGroup=e.maybeAppendByClassName(Y2.itemsGroup,`g`).styles(V(V({},c),{transform:`translate(${n}, ${r})`}));var u=this;this.itemsGroup.selectAll(Y2.items.class).data([`items`]).join(function(e){return e.append(function(){return new v4({style:l})}).attr(`className`,Y2.items.name).each(function(){u.items=$(this)})},function(e){return e.update(l)},function(e){return e.remove()})},t.prototype.adjustLayout=function(){if(this.attributes.showTitle){var e=this.title.node().getAvailableSpace(),t=e.x,n=e.y;this.itemsGroup.node().style.transform=`translate(${t}, ${n})`}},Object.defineProperty(t.prototype,`availableSpace`,{get:function(){var e=this.attributes,t=e.showTitle,n=e.width,r=e.height;return t?this.title.node().getAvailableSpace():new qZ(0,0,n,r)},enumerable:!1,configurable:!0}),t.prototype.getBBox=function(){var t=this.title?.node(),n=this.items?.node();return!t||!n?e.prototype.getBBox.call(this):Z2(t,n)},t.prototype.render=function(e,t){var n=this.attributes,r=n.width,i=n.height,a=n.x,o=a===void 0?0:a,s=n.y,c=s===void 0?0:s,l=n.classNamePrefix,u=n.render,d=$(t),f=t.className||`legend-category`;l?t.attr(`className`,`${f} ${l}legend`):t.className||t.attr(`className`,`legend-category`),t.style.transform=`translate(${o}, ${c})`,u?this.renderCustom(d):(this.renderTitle(d,r,i),this.renderItems(d,this.availableSpace),this.adjustLayout())},t}(s$),x4={backgroundFill:`#262626`,backgroundLineCap:`round`,backgroundLineWidth:1,backgroundStroke:`#333`,backgroundZIndex:-1,formatter:function(e){return e.toString()},labelFill:`#fff`,labelFontSize:12,labelTextBaseline:`middle`,padding:[2,4],position:`right`,radius:0,zIndex:999};H();var S4=YZ({background:`background`,labelGroup:`label-group`,label:`label`},`indicator`),C4=function(e){ar(t,e);function t(t){var n=e.call(this,t,x4)||this;return n.point=[0,0],n.group=n.appendChild(new af({})),n.isMutationObserved=!0,n}return t.prototype.renderBackground=function(){if(this.label){var e=this.attributes,t=e.position,n=e.padding,r=z(BQ(n),4),i=r[0],a=r[1],o=r[2],s=r[3],c=this.label.node().getLocalBounds(),l=c.min,u=c.max,d=new qZ(l[0]-s,l[1]-i,u[0]+a-l[0]+s,u[1]+o-l[1]+i),f=this.getPath(t,d),p=XQ(this.attributes,`background`);this.background=$(this.group).maybeAppendByClassName(S4.background,`path`).styles(V(V({},p),{d:f})),this.group.appendChild(this.label.node())}},t.prototype.renderLabel=function(){var e=this.attributes,t=e.formatter,n=e.labelText,r=z(QQ(XQ(this.attributes,`label`)),2),i=r[0],a=r[1];i.text;var o=or(i,[`text`]);this.label=$(this.group).maybeAppendByClassName(S4.labelGroup,`g`).styles(a),n&&this.label.maybeAppendByClassName(S4.label,function(){return lQ(t(n))}).style(`text`,t(n).toString()).selectAll(`text`).styles(o)},t.prototype.adjustLayout=function(){var e=z(this.point,2),t=e[0],n=e[1],r=this.attributes,i=r.x,a=r.y;this.group.attr(`transform`,`translate(${i-t}, ${a-n})`)},t.prototype.getPath=function(e,t){var n=this.attributes.radius,r=t.x,i=t.y,a=t.width,o=t.height,s=[[`M`,r+n,i],[`L`,r+a-n,i],[`A`,n,n,0,0,1,r+a,i+n],[`L`,r+a,i+o-n],[`A`,n,n,0,0,1,r+a-n,i+o],[`L`,r+n,i+o],[`A`,n,n,0,0,1,r,i+o-n],[`L`,r,i+n],[`A`,n,n,0,0,1,r+n,i],[`Z`]],c={top:4,right:6,bottom:0,left:2}[e],l=this.createCorner([s[c].slice(-2),s[c+1].slice(-2)]);return s.splice.apply(s,B([c+1,1],z(l),!1)),s[0][0]=`M`,s},t.prototype.createCorner=function(e,t){t===void 0&&(t=10);var n=.8,r=HQ.apply(void 0,B([],z(e),!1)),i=z(e,2),a=z(i[0],2),o=a[0],s=a[1],c=z(i[1],2),l=c[0],u=c[1],d=z(r?[l-o,[o,l]]:[u-s,[s,u]],2),f=d[0],p=z(d[1],2),m=p[0],h=p[1],g=f/2,_=f/Math.abs(f),v=t*_,y=v/2,b=v*Math.sqrt(3)/2*n,x=z([m,m+g-y,m+g,m+g+y,h],5),S=x[0],C=x[1],w=x[2],T=x[3],E=x[4];return r?(this.point=[w,s-b],[[`L`,S,s],[`L`,C,s],[`L`,w,s-b],[`L`,T,s],[`L`,E,s]]):(this.point=[o+b,w],[[`L`,o,S],[`L`,o,C],[`L`,o+b,w],[`L`,o,T],[`L`,o,E]])},t.prototype.applyVisibility=function(){this.attributes.visibility===`hidden`?zZ(this):RZ(this)},t.prototype.bindEvents=function(){this.label.on(ad.BOUNDS_CHANGED,this.renderBackground)},t.prototype.render=function(){this.renderLabel(),this.renderBackground(),this.adjustLayout(),this.applyVisibility()},t}(s$);H();function w4(e){return e===void 0&&(e=``),{CONTAINER:`${e}tooltip`,TITLE:`${e}tooltip-title`,LIST:`${e}tooltip-list`,LIST_ITEM:`${e}tooltip-list-item`,NAME:`${e}tooltip-list-item-name`,MARKER:`${e}tooltip-list-item-marker`,NAME_LABEL:`${e}tooltip-list-item-name-label`,VALUE:`${e}tooltip-list-item-value`,CROSSHAIR_X:`${e}tooltip-crosshair-x`,CROSSHAIR_Y:`${e}tooltip-crosshair-y`}}var T4={overflow:`hidden`,"white-space":`nowrap`,"text-overflow":`ellipsis`};function E4(e){var t;e===void 0&&(e=``);var n=w4(e);return t={},t[`.${n.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[`.${n.TITLE}`]={color:`rgba(0, 0, 0, 0.45)`},t[`.${n.LIST}`]={margin:`0px`,"list-style-type":`none`,padding:`0px`},t[`.${n.LIST_ITEM}`]={"list-style-type":`none`,display:`flex`,"line-height":`2em`,"align-items":`center`,"justify-content":`space-between`,"white-space":`nowrap`},t[`.${n.MARKER}`]={width:`8px`,height:`8px`,"border-radius":`50%`,display:`inline-block`,"margin-right":`4px`},t[`.${n.NAME}`]={display:`flex`,"align-items":`center`,"max-width":`216px`},t[`.${n.NAME_LABEL}`]=V({flex:1},T4),t[`.${n.VALUE}`]=V({display:`inline-block`,float:`right`,flex:1,"text-align":`right`,"min-width":`28px`,"margin-left":`30px`,color:`rgba(0, 0, 0, 0.85)`},T4),t[`.${n.CROSSHAIR_X}`]={position:`absolute`,width:`1px`,"background-color":`rgba(0, 0, 0, 0.25)`},t[`.${n.CROSSHAIR_Y}`]={position:`absolute`,height:`1px`,"background-color":`rgba(0, 0, 0, 0.25)`},t}H();var D4=function(e){ar(t,e);function t(t){var n=this,r=t.style?.template?.prefixCls,i=w4(r);return n=e.call(this,t,{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="${i.CONTAINER}"></div>`,title:`<div class="${i.TITLE}"></div>`,item:`<li class="${i.LIST_ITEM}" data-index={index}>
69
+ <span class="${i.NAME}">
70
+ <span class="${i.MARKER}" style="background:{color}"></span>
71
+ <span class="${i.NAME_LABEL}" title="{name}">{name}</span>
72
+ </span>
73
+ <span class="${i.VALUE}" title="{value}">{value}</span>
74
+ </li>`},style:E4(r)})||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(){return{width:this.element.offsetWidth,height:this.element.offsetHeight}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`HTMLTooltipItemsElements`,{get:function(){var e=this.attributes,t=e.data,n=e.template;return t.map(function(e,t){var r=e.name,i=r===void 0?``:r,a=e.color,o=a===void 0?`black`:a,s=e.index,c=or(e,[`name`,`color`,`index`]),l=V({name:i,color:o,index:s??t},c);return Li(Cn(n.item,l))})},enumerable:!1,configurable:!0}),t.prototype.render=function(e,t){this.renderHTMLTooltipElement(),this.updatePosition()},t.prototype.destroy=function(){var t;(t=this.element)==null||t.remove(),e.prototype.destroy.call(this)},t.prototype.show=function(e,t){var n=this;if(e!==void 0&&t!==void 0){var r=this.element.style.visibility===`hidden`,i=function(){n.attributes.x=e??n.attributes.x,n.attributes.y=t??n.attributes.y,n.updatePosition()};r?this.closeTransition(i):i()}this.element.style.visibility=`visible`},t.prototype.hide=function(e,t){e===void 0&&(e=0),t===void 0&&(t=0),!(this.attributes.enterable&&this.isCursorEntered(e,t))&&(this.element.style.visibility=`hidden`)},t.prototype.initShape=function(){var e=this.attributes.template;this.element=Li(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:r$(this.element,e))}},t.prototype.renderHTMLTooltipElement=function(){var e,t=this.attributes,n=t.template,r=t.title,i=t.enterable,a=t.style,o=t.content,s=w4(n.prefixCls),c=this.element;if(this.element.style.pointerEvents=i?`auto`:`none`,o)this.renderCustomContent();else{r?(c.innerHTML=n.title,c.getElementsByClassName(s.TITLE)[0].innerHTML=r):(e=c.getElementsByClassName(s.TITLE)?.[0])==null||e.remove();var l=this.HTMLTooltipItemsElements,u=document.createElement(`ul`);u.className=s.LIST,r$(u,l);var d=this.element.querySelector(`.${s.LIST}`);d?d.replaceWith(u):c.appendChild(u)}JQ(c,a)},t.prototype.getRelativeOffsetFromCursor=function(e){var t=this.attributes,n=t.position,r=t.offset,i=(e||n).split(`-`),a={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]},o=this.elementSize,s=o.width,c=o.height,l=[-s/2,-c/2];return i.forEach(function(e){var t=z(l,2),n=t[0],i=t[1],o=z(a[e],2),u=o[0],d=o[1];l=[n+(s/2+r[0])*u,i+(c/2+r[1])*d]}),l},t.prototype.setOffsetPosition=function(e){var t=z(e,2),n=t[0],r=t[1],i=this.attributes,a=i.x,o=a===void 0?0:a,s=i.y,c=s===void 0?0:s,l=i.container,u=l.x,d=l.y;this.element.style.left=`${+o+u+n}px`,this.element.style.top=`${+c+d+r}px`},t.prototype.updatePosition=function(){var e=this.attributes.showDelay,t=e===void 0?60:e,n=Date.now();this.timestamp>0&&n-this.timestamp<t||(this.timestamp=n,this.setOffsetPosition(this.autoPosition(this.getRelativeOffsetFromCursor())))},t.prototype.autoPosition=function(e){var t=z(e,2),n=t[0],r=t[1],i=this.attributes,a=i.x,o=i.y,s=i.bounding,c=i.position;if(!s)return[n,r];var l=this.element,u=l.offsetWidth,d=l.offsetHeight,f=z([+a+n,+o+r],2),p=f[0],m=f[1],h={left:`right`,right:`left`,top:`bottom`,bottom:`top`},g=s.x,_=s.y,v=s.width,y=s.height,b={left:p<g,right:p+u>g+v,top:m<_,bottom:m+d>_+y},x=[];c.split(`-`).forEach(function(e){b[e]?x.push(h[e]):x.push(e)});var S=x.join(`-`);return this.getRelativeOffsetFromCursor(S)},t.prototype.isCursorEntered=function(e,t){if(this.element){var n=this.element.getBoundingClientRect(),r=n.x,i=n.y,a=n.width,o=n.height;return new qZ(r,i,a,o).isPointIn(e,t)}return!1},t.prototype.closeTransition=function(e){var t=this,n=this.element.style.transition;this.element.style.transition=`none`,e(),setTimeout(function(){t.element.style.transition=n},10)},t.tag=`tooltip`,t}(s$);H();var O4=function(e){ar(t,e);function t(n){var r=e.call(this,QZ({},t.defaultOptions,n))||this;return r.hoverColor=`#f5f5f5`,r.selectedColor=`#e6f7ff`,r.background=r.appendChild(new _f({})),r.label=r.background.appendChild(new af({})),r}return Object.defineProperty(t.prototype,`padding`,{get:function(){return BQ(this.style.padding)},enumerable:!1,configurable:!0}),t.prototype.renderLabel=function(){var e=this.style,t=e.label,n=e.value,r=XQ(this.attributes,`label`);$(this.label).maybeAppend(`.label`,function(){return lQ(t)}).attr(`className`,`label`).styles(r),this.label.attr(`__data__`,n)},t.prototype.renderBackground=function(){var e=this.label.getBBox(),t=z(this.padding,4),n=t[0],r=t[1],i=t[2],a=t[3],o=e.width,s=e.height,c=o+a+r,l=s+n+i,u=XQ(this.attributes,`background`),d=this.style,f=d.width,p=f===void 0?0:f,m=d.height,h=m===void 0?0:m,g=d.selected;this.background.attr(V(V({},u),{width:Math.max(c,p),height:Math.max(l,h),fill:g?this.selectedColor:`#fff`})),this.label.attr({transform:`translate(${a}, ${(l-s)/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 t=this;this.addEventListener(`click`,function(){var n=e.style,r=n.label,i=n.value,a=n.onClick;a?.(i,{label:r,value:i},t)})},t.defaultOptions={style:{value:``,label:``,cursor:`pointer`}},t}(s$);H();var k4=function(e){ar(t,e);function t(n){var r=e.call(this,QZ({},t.defaultOptions,n))||this;r.currentValue=t.defaultOptions.style?.defaultValue,r.isPointerInSelect=!1,r.select=r.appendChild(new _f({className:`select`,style:{cursor:`pointer`,width:0,height:0}})),r.dropdown=r.appendChild(new _f({className:`dropdown`}));var i=r.style.defaultValue;return i&&r.style.options?.some(function(e){return e.value===i})&&(r.currentValue=i),r}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 BQ(this.style.dropdownPadding)},enumerable:!1,configurable:!0}),t.prototype.renderSelect=function(){var e=this,t=this.style,n=t.x,r=t.y,i=t.width,a=t.height,o=t.bordered,s=t.showDropdownIcon,c=XQ(this.attributes,`select`),l=XQ(this.attributes,`placeholder`);this.select.attr(V(V({x:n,y:r,width:i,height:a},c),{fill:`#fff`,strokeWidth:+!!o}));var u=this.dropdownPadding;s&&$(this.select).maybeAppend(`.dropdown-icon`,`path`).style(`d`,`M-5,-3.5 L0,3.5 L5,-3.5`).style(`transform`,`translate(${n+i-10-u[1]-u[3]}, ${r+a/2})`).style(`lineWidth`,1).style(`stroke`,this.select.style.stroke);var d=this.style.options?.find(function(t){return t.value===e.currentValue}),f=V({x:n+u[3]},l);$(this.select).selectAll(`.placeholder`).data(d?[]:[1]).join(function(e){return e.append(`text`).attr(`className`,`placeholder`).styles(f).style(`y`,function(){return r+(a-this.getBBox().height)/2})},function(e){return e.styles(f)},function(e){return e.remove()});var p=XQ(this.attributes,`optionLabel`),m=V({x:n+u[3]},p);$(this.select).selectAll(`.value`).data(d?[d]:[]).join(function(e){return e.append(function(e){return lQ(e.label)}).attr(`className`,`value`).styles(m).style(`y`,function(){return r+(a-this.getBBox().height)/2})},function(e){return e.styles(m)},function(e){return e.remove()})},t.prototype.renderDropdown=function(){var e=this,t=this.style,n=t.x,r=t.y,i=t.width,a=t.height,o=t.options,s=t.onSelect,c=t.open,l=XQ(this.attributes,`dropdown`),u=XQ(this.attributes,`option`),d=this.dropdownPadding;$(this.dropdown).maybeAppend(`.dropdown-container`,`g`).attr(`className`,`dropdown-container`).selectAll(`.dropdown-item`).data(o,function(e){return e.value}).join(function(t){return t.append(function(t){return new O4({className:`dropdown-item`,style:V(V(V({},t),u),{width:i-d[1]-d[3],selected:t.value===e.currentValue,onClick:function(t,n,r){e.setValue(t),s?.(t,n,r),e.dispatchEvent(new Yu(`change`,{detail:{value:t,option:n,item:r}})),zZ(e.dropdown)}})})}).each(function(e,t){var n=(this.parentNode?.children).reduce(function(e,n,r){return r<t&&(e+=n.getBBox().height),e},0);this.attr(`transform`,`translate(${d[3]}, ${d[0]+n})`)})},function(t){return t.update(function(t){return{selected:t.value===e.currentValue}})},function(e){return e.remove()});var f=(this.dropdown.getElementsByClassName(`dropdown-container`)?.[0])?.getBBox(),p=l.spacing;this.dropdown.attr(V({transform:`translate(${n}, ${r+a+p})`,width:f.width+d[1]+d[3],height:f.height+d[0]+d[2]},l)),!c&&zZ(this.dropdown)},t.prototype.render=function(){this.renderSelect(),this.renderDropdown()},t.prototype.bindEvents=function(){var e=this;this.addEventListener(`click`,function(e){e.stopPropagation()}),this.select.addEventListener(`click`,function(){e.dropdown.style.visibility===`visible`?zZ(e.dropdown):RZ(e.dropdown)}),this.addEventListener(`pointerenter`,function(){e.isPointerInSelect=!0}),this.addEventListener(`pointerleave`,function(){e.isPointerInSelect=!1}),document==null||document.addEventListener(`click`,function(){e.isPointerInSelect||zZ(e.dropdown)})},t.defaultOptions={style:{x:0,y:0,width:140,height:32,options:[],bordered:!0,defaultValue:``,selectRadius:8,selectStroke:`#d9d9d9`,showDropdownIcon:!0,placeholderText:`请选择`,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}(s$);H();var A4=function(e){ar(t,e);function t(n){var r=e.call(this,QZ({},{style:{backgroundOpacity:t.backgroundOpacities.default}},t.defaultOptions,n))||this;return r.showBackground=!0,r.background=r.appendChild(new _f({})),r.icon=r.appendChild(new af({})),r}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 BQ(this.attributes.size/5)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`iconSize`,{get:function(){var e=this.attributes.size,t=z(this.padding,4),n=t[0],r=t[1],i=t[2],a=t[3];return Math.max(e-Math.max(a+r,n+i),this.lineWidth*2+1)},enumerable:!1,configurable:!0}),t.prototype.renderBackground=function(){var e=this.attributes,t=e.x,n=e.y,r=e.size,i=r/2,a=XQ(this.attributes,`background`);this.background.attr(V({x:t-i,y:n-i,width:r,height:r},a))},t.prototype.showIndicator=function(){if(this.label){var e=this.attributes.size,t=this.background.getBBox(),n=t.x,r=t.y;this.indicator.update({x:n+e/2,y:r-5,labelText:this.label,visibility:`visible`})}},t.prototype.hideIndicator=function(){this.indicator.update({visibility:`hidden`})},t.prototype.connectedCallback=function(){e.prototype.connectedCallback.call(this);var t=this.attributes.size,n=this.background.getBBox(),r=n.x,i=n.y,a=this.ownerDocument?.defaultView;a&&(this.indicator=a.appendChild(new C4({style:{x:r+t/2,y:i-t/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?.(e)}),this.showBackground){var r=function(){return e.background.attr({opacity:t.backgroundOpacities.default})},i=function(){return e.background.attr({opacity:t.backgroundOpacities.hover})},a=function(){return e.background.attr({opacity:t.backgroundOpacities.active})};this.addEventListener(`pointerenter`,function(){i(),e.showIndicator()}),this.addEventListener(`pointerleave`,function(){r(),e.hideIndicator()}),this.addEventListener(`pointerdown`,function(){a()}),this.addEventListener(`pointerup`,function(){r()})}},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}(s$),j4=function(e,t){return t===void 0&&(t=`#565758`),new ff({style:{fill:t,d:`M ${e},${e} L -${e},0 L ${e},-${e} Z`,transformOrigin:`center`}})},M4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.arcPath=function(e,t,n){var r=z([n,n],2),i=r[0],a=r[1],o=function(r){return[e+n*Math.cos(r),t+n*Math.sin(r)]},s=z(o(-5/4*Math.PI),2),c=s[0],l=s[1],u=z(o(1/4*Math.PI),2);return`M${c},${l},A${i},${a},0,1,1,${u[0]},${u[1]}`},Object.defineProperty(t.prototype,`label`,{get:function(){return`重置`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=this.lineWidth,o=a+.5;$(this.icon).maybeAppend(`.reset`,`path`).styles({stroke:r,lineWidth:a,d:this.arcPath(t,n,i/2-a),markerStart:j4(o,r)})},t}(A4),N4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`快退`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=i/2,o=i/2/3**.5,s=[[t,n],[t,n-o],[t-a,n],[t,n+o],[t,n],[t+a,n-o],[t+a,n+o],[t,n]];$(this.icon).maybeAppend(`.backward`,`polygon`).styles({points:s,fill:r})},t}(A4),P4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`快进`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=i/2,o=i/2/3**.5,s=[[t,n],[t,n-o],[t+a,n],[t,n+o],[t,n],[t-a,n-o],[t-a,n+o],[t,n]];$(this.icon).maybeAppend(`.forward`,`polygon`).styles({points:s,fill:r})},t}(A4),F4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`播放`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=i/3*3**.5*.8,o=[[t+a,n],[t-a/2,n-i/2*.8],[t-a/2,n+i/2*.8],[t+a,n]];$(this.icon).maybeAppend(`.play`,`polygon`).styles({points:o,fill:r})},t}(A4),I4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`暂停`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=i/3,o=[[t-a,n-i/2],[t-a,n+i/2],[t-a/2,n+i/2],[t-a/2,n-i/2],[t-a,n-i/2],[t+a/2,n-i/2],[t+a/2,n+i/2],[t+a,n+i/2],[t+a,n-i/2]];$(this.icon).maybeAppend(`.pause`,`polygon`).styles({points:o,fill:r})},t}(A4),L4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`范围时间`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this,a=i.iconSize,o=i.lineWidth,s=o;$(this.icon).maybeAppend(`.left-line`,`line`).styles({x1:t-a/2,y1:n-a/2,x2:t-a/2,y2:n+a/2,stroke:r,lineWidth:o}),$(this.icon).maybeAppend(`.right-line`,`line`).styles({x1:t+a/2,y1:n-a/2,x2:t+a/2,y2:n+a/2,stroke:r,lineWidth:o}),$(this.icon).maybeAppend(`.left-arrow`,`line`).styles({x1:t,y1:n,x2:t-a/2+s*2,y2:n,stroke:r,lineWidth:o,markerEnd:j4(o*2,r)}),$(this.icon).maybeAppend(`.right-arrow`,`line`).styles({x1:t,y1:n,x2:t+a/2-s*2,y2:n,stroke:r,lineWidth:o,markerEnd:j4(o*2,r)})},t}(A4),R4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`单一时间`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this,a=i.iconSize,o=i.lineWidth;$(this.icon).maybeAppend(`.line`,`line`).styles({x1:t,y1:n-a/2,x2:t,y2:n+a/2,stroke:r,lineWidth:o});var s=o;$(this.icon).maybeAppend(`.left-arrow`,`line`).styles({x1:t-a/2-s*2,y1:n,x2:t-s*2,y2:n,stroke:r,lineWidth:o,markerEnd:j4(o*2,r)}),$(this.icon).maybeAppend(`.right-arrow`,`line`).styles({x1:t+a/2+s*2,y1:n,x2:t+s*2,y2:n,stroke:r,lineWidth:o,markerEnd:j4(o*2,r)})},t}(A4),z4=function(e){return[[-e/2,-e/2],[-e/2,e/2],[e/2,e/2]]},B4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`折线图`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this,a=i.iconSize,o=i.lineWidth,s=o,c=(a-s*2-o)/4,l=(a-s*2-o)/2,u=z([t-a/2+s,n+a/2-s*2],2),d=u[0],f=u[1];$(this.icon).maybeAppend(`.coordinate`,`polyline`).styles({points:z4(a).map(function(e){var r=z(e,2),i=r[0],a=r[1];return[i+t,a+n]}),stroke:r,lineWidth:o}),$(this.icon).maybeAppend(`.line`,`polyline`).styles({points:[[d,f],[d+c,f-l],[d+c*2,f],[d+c*4,f-l*2]],stroke:r,lineWidth:o})},t}(A4),V4=function(e){ar(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`条形图`},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,t=this.attributes,n=t.x,r=t.y,i=t.color,a=this,o=a.iconSize,s=a.lineWidth,c=s,l=(o-c)/e.length,u=(o-c*2)/4,d=z([n-o/2+c*2,r+o/2-c],2),f=d[0],p=d[1];$(this.icon).maybeAppend(`.coordinate`,`polyline`).styles({points:z4(o).map(function(e){var t=z(e,2),i=t[0],a=t[1];return[i+n,a+r]}),stroke:i,lineWidth:s}),$(this.icon).maybeAppend(`.bars`,`g`).selectAll(`.column`).data(this.data.map(function(e,t){return{value:e,index:t}})).join(function(e){return e.append(`line`).attr(`className`,`column`).style(`x1`,function(e){return f+l*e.index}).style(`y1`,p).style(`x2`,function(e){return f+l*e.index}).style(`y2`,function(e){return p-u*e.value}).styles({y1:p,stroke:i,lineWidth:s})})},t}(A4),H4=function(e){ar(t,e);function t(t){var n=e.call(this,QZ({},{style:{color:`#d8d9d9`}},t))||this;return n.showBackground=!1,n}return t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this,a=i.iconSize,o=i.lineWidth;$(this.icon).maybeAppend(`.split`,`line`).styles({x1:t,y1:n-a/2,x2:t,y2:n+a/2,stroke:r,lineWidth:o})},t}(A4),U4=function(e){ar(t,e);function t(){var t=e.apply(this,B([],z(arguments),!1))||this;return t.showBackground=!1,t}return Object.defineProperty(t.prototype,`padding`,{get:function(){return BQ(0)},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.iconSize,t=this.attributes,n=t.x,r=t.y,i=t.speed,a=i===void 0?1:i,o=Qn(this.attributes,[`x`,`y`,`transform`,`transformOrigin`,`width`,`height`,`size`,`color`,`speed`]),s=mn(e,20,1/0),c=20,l=V(V({},o),{x:n-s/2,y:r-c/2,width:s,height:c,defaultValue:a,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}]});$(this.icon).maybeAppend(`.speed`,function(){return new k4({style:l})}).attr(`className`,`speed`).each(function(){this.update(l)})},t.tag=`SpeedSelect`,t}(A4),W4=function(e){ar(t,e);function t(t){var n=e.call(this,t)||this;return n.icon=n.appendChild(new af({})),n.currentType=n.attributes.type,n}return t.prototype.getType=function(){return this.currentType},t.prototype.render=function(){var e=this,t=this.attributes;t.onChange;var n=or(t,[`onChange`]);$(this.icon).selectAll(`.icon`).data([this.currentType]).join(function(t){return t.append(function(t){var n=e.toggles.find(function(e){return z(e,1)[0]===t})?.[1];if(!n)throw Error(`Invalid type: ${t}`);return new n({})}).attr(`className`,`icon`).styles(n,!1).update({})},function(e){return e.styles({restStyles:n}).update({})},function(e){return e.remove()})},t.prototype.bindEvents=function(){var e=this,t=this.attributes.onChange;this.addEventListener(`click`,function(n){n.preventDefault(),n.stopPropagation();var r=(e.toggles.findIndex(function(t){return z(t,1)[0]===e.currentType})+1)%e.toggles.length,i=e.toggles[r][0];t?.(e.currentType),e.currentType=i,e.render()})},t.tag=`ToggleIcon`,t}(s$),G4=function(e){ar(t,e);function t(t){var n=e.call(this,QZ({},{style:{type:`play`}},t))||this;return n.toggles=[[`play`,F4],[`pause`,I4]],n}return t}(W4),K4=function(e){ar(t,e);function t(t){var n=e.call(this,QZ({},{style:{type:`range`}},t))||this;return n.toggles=[[`range`,L4],[`value`,R4]],n}return t}(W4),q4=function(e){ar(t,e);function t(t){var n=e.call(this,QZ({},{style:{type:`column`}},t))||this;return n.toggles=[[`line`,B4],[`column`,V4]],n}return t}(W4);H();var J4={reset:M4,speed:U4,backward:N4,playPause:G4,forward:P4,selectionType:K4,chartType:q4,split:H4},Y4=function(e){ar(t,e);function t(n){var r=e.call(this,QZ({},t.defaultOptions,n))||this;return r.background=r.appendChild(new _f({})),r.functions=r.appendChild(new af({})),r}return Object.defineProperty(t.prototype,`padding`,{get:function(){return BQ(this.attributes.padding)},enumerable:!1,configurable:!0}),t.prototype.renderBackground=function(){var e=this.style,t=e.x,n=e.y,r=e.width,i=e.height,a=XQ(this.attributes,`background`);this.background.attr(V({x:t,y:n,width:r,height:i},a))},t.prototype.renderFunctions=function(){var e=this,t,n=this.attributes,r=n.functions,i=n.iconSize,a=n.iconSpacing,o=n.x,s=n.y,c=n.width,l=n.height,u=n.align,d=z(this.padding,4),f=d[1],p=d[3],m=r.reduce(function(e,t){return e.length&&t.length?e.concat.apply(e,B([`split`],z(t),!1)):e.concat.apply(e,B([],z(t),!1))},[]),h=m.length*(i+a)-a,g={left:p+i/2,center:(c-h)/2+i/2,right:c-h-p-f+i/2}[u]||0;(t=this.speedSelect)==null||t.destroy(),this.functions.removeChildren(),m.forEach(function(t,n){var r=J4[t],c={x:o+n*(i+a)+g,y:s+l/2,size:i};if(r===U4?(c.speed=e.attributes.speed,c.onSelect=function(n){return e.handleFunctionChange(t,{value:n})}):[G4,K4,q4].includes(r)?(c.onChange=function(n){return e.handleFunctionChange(t,{value:n})},r===G4&&(c.type=e.attributes.state===`play`?`pause`:`play`),r===K4&&(c.type=e.attributes.selectionType===`range`?`value`:`range`),r===q4&&(c.type=e.attributes.chartType===`line`?`column`:`line`)):c.onClick=function(){return e.handleFunctionChange(t,{value:t})},r===U4){var u=e.ownerDocument?.defaultView;u&&(e.speedSelect=new r({style:V(V({},c),{zIndex:100})}),u.appendChild(e.speedSelect))}else e.functions.appendChild(new r({style:c}))})},t.prototype.disconnectedCallback=function(){var t;e.prototype.disconnectedCallback.call(this),(t=this.speedSelect)==null||t.destroy()},t.prototype.render=function(){this.renderBackground(),this.renderFunctions()},t.prototype.handleFunctionChange=function(e,t){var n=this.attributes.onChange;n?.(e,t)},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}(s$);H();var X4=function(e){ar(t,e);function t(n){var r=e.call(this,QZ({},t.defaultOptions,n))||this;return r.bindEvents(),r}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}($d),Z4=function(e){ar(t,e);function t(n){return e.call(this,QZ({},t.defaultOptions,n))||this}return t.prototype.renderBackground=function(){var e=this.attributes,t=e.x,n=e.y,r=e.width,i=e.height,a=XQ(this.attributes,`background`);$(this).maybeAppend(`background`,`rect`).attr(`className`,`background`).styles(V({x:t-r/2,y:n-i/2,width:r,height:i},a))},t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.iconSize,i=XQ(this.attributes,`icon`),a=1,o=r/2;$(this).maybeAppend(`icon-left-line`,`line`).attr(`className`,`icon-left-line`).styles(V({x1:t-a,y1:n-o,x2:t-a,y2:n+o},i)),$(this).maybeAppend(`icon-right-line`,`line`).attr(`className`,`icon-right-line`).styles(V({x1:t+a,y1:n-o,x2:t+a,y2:n+o},i))},t.prototype.renderBorder=function(){var e=this.attributes,t=e.x,n=e.y,r=e.width,i=e.height,a=e.type,o=XQ(this.attributes,`border`),s=a===`start`?r/2:-r/2;$(this).maybeAppend(`border`,`line`).attr(`className`,`border`).styles(V({x1:s+t,y1:n-i/2,x2:s+t,y2:n+i/2},o))},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}(s$);function Q4(e,t){return typeof e==`number`?e3(e):$4(e,t)}function $4(e,t){var n=new Date(e);switch(t){case`half-hour`:case`hour`:case`four-hour`:return[0,6,12,18].includes(n.getHours())&&n.getMinutes()===0?$Q(n,`HH:mm
75
+ YYYY-MM-DD`):$Q(n,`HH:mm`);case`half-day`:return n.getHours()<12?`AM
76
+ ${$Q(n,`YYYY-MM-DD`)}`:`PM`;case`day`:return[1,10,20].includes(n.getDate())?$Q(n,`DD
77
+ YYYY-MM`):$Q(n,`DD`);case`week`:return n.getDate()<=7?$Q(n,`DD
78
+ YYYY-MM`):$Q(n,`DD`);case`month`:return[0,6].includes(n.getMonth())?$Q(n,`MM月
79
+ YYYY`):$Q(n,`MM月`);case`season`:return[0].includes(n.getMonth())?$Q(n,`MM月
80
+ YYYY`):$Q(n,`MM月`);case`year`:return $Q(n,`YYYY`);default:return $Q(n,`YYYY-MM-DD HH:mm`)}}function e3(e){var t=String(Math.floor(e/3600)).padStart(2,`0`),n=String(Math.floor(e%3600/60)).padStart(2,`0`),r=String(Math.floor(e%60)).padStart(2,`0`);return e<3600?`${n}:${r}`:`${t}:${n}:${r}`}H();var t3=function(e){ar(t,e);function t(n){var r=e.call(this,QZ({},t.defaultOptions,n))||this;r.axis=r.appendChild(new I2({style:{type:`linear`,startPos:[0,0],endPos:[0,0],data:[],showArrow:!1,animate:!1}})),r.timeline=r.appendChild(new Q1({style:{onChange:function(e){r.handleSliderChange(e)}}})),r.controller=r.appendChild(new Y4({})),r.states={},r.handleSliderChange=function(e){var t=(function(){var e=r.states.values;return Array.isArray(e)?B([],z(e),!1):e})();r.setBySliderValues(e),r.dispatchOnChange(t)};var i=r.attributes,a=i.selectionType,o=i.chartType,s=i.speed,c=i.state,l=i.playMode,u=i.values;return r.states={chartType:o,playMode:l,selectionType:a,speed:s,state:c},r.setByTimebarValues(u),r}return Object.defineProperty(t.prototype,`data`,{get:function(){return this.attributes.data.sort(function(e,t){return e.time<t.time?-1:+(e.time>t.time)})},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`space`,{get:function(){var e=this.attributes,t=e.x,n=e.y,r=e.width,i=e.height,a=e.type,o=e.controllerHeight,s=mn(+i-o,0,+i),c=new qZ(t,n+ +i-o,+r,o),l,u=0;a===`chart`?(u=35,l=new qZ(t,n+s-u,+r,u)):l=new qZ;var d=a===`time`?10:s,f=new qZ(t,n+(a===`time`?s:s-d),+r,d-u);return{axisBBox:l,controllerBBox:c,timelineBBox:f}},enumerable:!1,configurable:!0}),t.prototype.setBySliderValues=function(e){var t=this.data,n=z(Array.isArray(e)?e:[0,e],2),r=n[0],i=n[1],a=t.length,o=t[Math.floor(r*a)],s=t[Math.ceil(i*a)-+!Array.isArray(e)];this.states.values=[o?.time??t[0].time,s?.time??1/0]},t.prototype.setByTimebarValues=function(e){var t=this.data,n=z(Array.isArray(e)?e:[void 0,e],2),r=n[0],i=n[1],a=t.find(function(e){return e.time===r}),o=t.find(function(e){return e.time===i});this.states.values=[a?.time??t[0]?.time,o?.time??1/0]},t.prototype.setByIndex=function(e){var t=this.data,n=z(e,2),r=n[0],i=n[1];this.states.values=[t[r]?.time??t[0].time,this.data[i]?.time??1/0]},Object.defineProperty(t.prototype,`sliderValues`,{get:function(){var e=this.states,t=e.values,n=e.selectionType,r=z(Array.isArray(t)?t:[void 0,t],2),i=r[0],a=r[1],o=this.data,s=o.length,c=n===`value`;return[function(){var e=o.findIndex(function(e){return e.time===i});return c?0:e>-1?e/s:0}(),function(){if(a===1/0)return 1;var e=o.findIndex(function(e){return e.time===a});return e>-1?e/s:c?.5:1}()]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`values`,{get:function(){var e=this.states,t=e.values,n=e.selectionType,r=z(Array.isArray(t)?t:[this.data[0].time,t],2),i=r[0],a=r[1];return n===`value`?a:[i,a]},enumerable:!1,configurable:!0}),t.prototype.getDatumByRatio=function(e){var t=this.data,n=t.length;return t[Math.floor(e*(n-1))]},Object.defineProperty(t.prototype,`chartHandleIconShape`,{get:function(){var e=this.states.selectionType,t=this.space.timelineBBox.height;return e===`range`?function(e){return new Z4({style:{type:e,height:t,iconSize:t/6}})}:function(){return new uf({style:{x1:0,y1:-t/2,x2:0,y2:t/2,lineWidth:2,stroke:`#c8c8c8`}})}},enumerable:!1,configurable:!0}),t.prototype.getChartStyle=function(e){var t=this,n=e.x,r=e.y,i=e.width,a=e.height,o=this.states,s=o.selectionType,c=o.chartType,l=this.data,u=this.attributes,d=u.type,f=u.labelFormatter,p=XQ(this.attributes,`chart`);p.type;var m=or(p,[`type`]),h=s===`range`;if(d===`time`)return V({handleIconShape:function(){return new X4({})},selectionFill:`#2e7ff8`,selectionFillOpacity:1,showLabelOnInteraction:!0,handleLabelDy:h?-15:0,autoFitLabel:h,handleSpacing:h?-15:0,trackFill:`#edeeef`,trackLength:i,trackOpacity:.5,trackRadius:a/2,trackSize:a/2,type:s,values:this.sliderValues,formatter:function(e){if(f)return f(e);var n=t.getDatumByRatio(e).time;return typeof n==`number`?e3(n):$Q(n,`YYYY-MM-DD HH:mm:ss`)},transform:`translate(${n}, ${r})`,zIndex:1},m);var g=s===`range`?5:0,_=l.map(function(e){return e.value});return V({handleIconOffset:g,handleIconShape:this.chartHandleIconShape,selectionFill:`#fff`,selectionFillOpacity:.5,selectionType:`invert`,sparklineSpacing:.1,sparklineColumnLineWidth:0,sparklineColor:`#d4e5fd`,sparklineAreaOpacity:1,sparklineAreaLineWidth:0,sparklineData:_,sparklineType:c,sparklineScale:.8,trackLength:i,trackSize:a,type:s,values:this.sliderValues,transform:`translate(${n}, ${r})`,zIndex:1},m)},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 t=this.data,n=this.attributes,r=n.interval,i=n.labelFormatter,a=XQ(this.attributes,`axis`),o=e.x,s=e.y,c=e.width,l=B(B([],z(t),!1),[{time:0}],!1).map(function(e,t,n){var r=e.time;return{label:`${r}`,value:t/(n.length-1),time:r}});return V({startPos:[o,s],endPos:[o+c,s],data:l,labelFilter:function(e,t){return t<l.length-1},labelFormatter:function(e){var t=e.time;return i?i(t):Q4(t,r)}},a)},t.prototype.renderAxis=function(e){e===void 0&&(e=this.space.axisBBox),this.attributes.type===`chart`&&this.axis.update(this.getAxisStyle(e))},t.prototype.renderController=function(e){e===void 0&&(e=this.space.controllerBBox);var t=this.attributes.type,n=this.states,r=n.state,i=n.speed,a=n.selectionType,o=n.chartType,s=XQ(this.attributes,`controller`),c=this,l=V(V(V({},e),{iconSize:20,speed:i,state:r,selectionType:a,chartType:o,onChange:function(e,t){var n=t.value;switch(e){case`reset`:c.internalReset();break;case`speed`:c.handleSpeedChange(n);break;case`backward`:c.internalBackward();break;case`playPause`:n===`play`?c.internalPlay():c.internalPause();break;case`forward`:c.internalForward();break;case`selectionType`:c.handleSelectionTypeChange(n);break;case`chartType`:c.handleChartTypeChange(n);break;default:break}}}),s);t===`time`&&(l.functions=[[`reset`,`speed`],[`backward`,`playPause`,`forward`],[`selectionType`]]),this.controller.update(l)},t.prototype.dispatchOnChange=function(e){var t=this.data,n=this.attributes.onChange,r=this.states,i=r.values,a=r.selectionType,o=z(i,2),s=o[0],c=o[1],l=c===1/0?t.at(-1).time:c;(!e||!function(e,t){return Array.isArray(e)?Array.isArray(t)?e[0]===t[0]&&(e[1]===t[1]||e[1]===1/0||t[1]===1/0):!1:Array.isArray(t)?!1:e===t}(e,a===`range`?[s,l]:l))&&n?.(a===`range`?[s,l]:l)},t.prototype.internalReset=function(e){var t,n,r=this.states.selectionType;this.internalPause(),this.setBySliderValues(r===`range`?[0,1]:[0,0]),this.renderController(),this.updateSelection(),e||((n=(t=this.attributes)?.onReset)==null||n.call(t),this.dispatchOnChange())},t.prototype.reset=function(){this.internalReset()},t.prototype.moveSelection=function(e,t){var n=this.data,r=n.length,i=this.states,a=i.values,o=i.selectionType,s=i.playMode,c=z(a,2),l=c[0],u=c[1],d=n.findIndex(function(e){return e.time===l}),f=n.findIndex(function(e){return e.time===u});f===-1&&(f=r);var p=e===`backward`?-1:1,m;o===`range`?s===`acc`?(m=[d,f+p],p===-1&&d===f&&(m=[d,r])):m=[d+p,f+p]:m=[d,f+p];var h=function(e){var t=z(e.sort(function(e,t){return e-t}),2),n=t[0],i=t[1],a=function(e){return mn(e,0,r)};return i>r?o===`value`?[0,0]:s===`acc`?[a(n),a(n)]:[0,a(i-n)]:n<0?s===`acc`?[0,a(i)]:[a(n+r-i),r]:[a(n),a(i)]}(m);return this.setByIndex(h),this.updateSelection(),h},t.prototype.internalBackward=function(e){var t,n,r=this.moveSelection(`backward`,e);return e||((n=(t=this.attributes)?.onBackward)==null||n.call(t),this.dispatchOnChange()),r},t.prototype.backward=function(){this.internalBackward()},t.prototype.internalPlay=function(e){var t=this,n,r,i=this.data,a=this.attributes.loop,o=this.states.speed,s=o===void 0?1:o;this.playInterval=window.setInterval(function(){t.internalForward()[1]===i.length&&!a&&(t.internalPause(),t.renderController())},1e3/s),this.states.state=`play`,!e&&((r=(n=this.attributes)?.onPlay)==null||r.call(n))},t.prototype.play=function(){this.internalPlay()},t.prototype.internalPause=function(e){var t,n;clearInterval(this.playInterval),this.states.state=`pause`,!e&&((n=(t=this.attributes)?.onPause)==null||n.call(t))},t.prototype.pause=function(){this.internalPause()},t.prototype.internalForward=function(e){var t,n,r=this.moveSelection(`forward`,e);return e||((n=(t=this.attributes)?.onForward)==null||n.call(t),this.dispatchOnChange()),r},t.prototype.forward=function(){this.internalForward()},t.prototype.handleSpeedChange=function(e){var t,n;this.states.speed=e,this.states.state===`play`&&(this.internalPause(!0),this.internalPlay(!0)),(n=(t=this.attributes)?.onSpeedChange)==null||n.call(t,e)},t.prototype.handleSelectionTypeChange=function(e){var t,n;this.states.selectionType=e,this.renderChart(),(n=(t=this.attributes)?.onSelectionTypeChange)==null||n.call(t,e)},t.prototype.handleChartTypeChange=function(e){var t,n;this.states.chartType=e,this.renderChart(),(n=(t=this.attributes)?.onChartTypeChange)==null||n.call(t,e)},t.prototype.render=function(){var e=this.space,t=e.axisBBox,n=e.controllerBBox,r=e.timelineBBox;this.renderController(n),this.renderAxis(t),this.renderChart(r),this.states.state===`play`&&this.internalPlay()},t.prototype.destroy=function(){e.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}(s$);function n3(e){let{width:t,height:n,renderer:r}=e,i=r3(e);return[i,new Lf({width:t,height:n,container:i,renderer:r||new sb})]}function r3(e){var t;let{container:n,className:r,graphCanvas:i}=e;if(n)return typeof n==`string`?document.getElementById(n):n;let a=iY(r,!1),{width:o,height:s,containerStyle:c}=e,[l,u]=i3(e);return Object.assign(a.style,Object.assign({position:`absolute`,left:l+`px`,top:u+`px`,width:o+`px`,height:s+`px`},c)),(t=i.getContainer())==null||t.appendChild(a),a}function i3(e){let{width:t,height:n,placement:r,graphCanvas:i}=e,[a,o]=i.getSize(),[s,c]=p_(r);return[s*(a-t),c*(o-n)]}var a3=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},o3=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.typePrefix=`__data__`,this.draw=!1,this.fieldMap={node:new Map,edge:new Map,combo:new Map},this.selectedItems=[],this.bindEvents=()=>{let{graph:e}=this.context;e.on(Z.AFTER_DRAW,this.createElement)},this.changeState=(e,t)=>{let{graph:n}=this.context,{typePrefix:r}=this,i=Jn(e,[r,`id`]),a=Jn(e,[r,`style`,`labelText`]),[o]=i.split(`__`),s=this.fieldMap[o].get(a)||[];n.setElementState(Object.fromEntries(s?.map(e=>[e,t])))},this.click=e=>{if(this.options.trigger===`hover`)return;let t=Jn(e,[this.typePrefix,`id`]);this.selectedItems.includes(t)?(this.selectedItems=this.selectedItems.filter(e=>e!==t),this.changeState(e,[])):(this.selectedItems.push(t),this.changeState(e,`selected`))},this.mouseleave=e=>{this.options.trigger!==`click`&&(this.selectedItems=[],this.changeState(e,[]))},this.mouseenter=e=>{if(this.options.trigger===`click`)return;let t=Jn(e,[this.typePrefix,`id`]);this.selectedItems.includes(t)?this.selectedItems=this.selectedItems.filter(e=>e!==t):(this.selectedItems.push(t),this.changeState(e,`active`))},this.setFieldMap=(e,t,n)=>{if(!e)return;let r=this.fieldMap[n];if(r)if(!r.has(e))r.set(e,[t]);else{let n=r.get(e);n&&(n.push(t),r.set(e,n))}},this.getEvents=()=>({mouseenter:this.mouseenter,mouseleave:this.mouseleave,click:this.click}),this.getMarkerData=(e,t)=>{if(!e)return[];let{model:n,element:r}=this.context,{nodes:i,edges:a,combos:o}=n.getData(),s={},c=t=>L(e)?e(t):e,l={node:`circle`,edge:`line`,combo:`rect`},u={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=(e,t)=>r?.getElementComputedStyle(e,t),f=(e,t)=>{e.forEach(e=>{let{id:n}=e,i=Jn(e,[`data`,c(e)]),a=r?.getElementType(t,e)||`circle`,o=d(t,e),f=(t===`edge`?o?.stroke:o?.fill)||`#1783ff`;n&&i&&i.replace(/\s+/g,``)&&(this.setFieldMap(i,n,t),s[i]||(s[i]={id:`${t}__${n}`,label:i,marker:u[a]||l[t],elementType:t,lineWidth:1,stroke:f,fill:f}))})};switch(t){case`node`:f(i,`node`);break;case`edge`:f(a,`edge`);break;case`combo`:f(o,`combo`);break;default:return[]}return Object.values(s)},this.createElement=()=>{if(this.draw){this.updateElement();return}let e=this.options,{width:t,height:n,nodeField:r,edgeField:i,comboField:a,trigger:o,position:s,container:c,containerStyle:l,className:u}=e,d=a3(e,[`width`,`height`,`nodeField`,`edgeField`,`comboField`,`trigger`,`position`,`container`,`containerStyle`,`className`]),f=this.getMarkerData(r,`node`),p=this.getMarkerData(i,`edge`),m=this.getMarkerData(a,`combo`),h=[...f,...m,...p],g=new b4({className:`legend`,style:Object.assign({width:t,height:n,data:h,itemMarkerLineWidth:({lineWidth:e})=>e,itemMarker:({marker:e})=>e,itemMarkerStroke:({stroke:e})=>e,itemMarkerFill:({fill:e})=>e,gridCol:f.length},d,this.getEvents())});this.category=g,this.upsertCanvas().appendChild(g),this.draw=!0},this.bindEvents()}update(e){super.update(e),this.clear(),this.createElement()}clear(){var e,t;(e=this.canvas)==null||e.destroy(),(t=this.container)==null||t.remove(),this.canvas=void 0,this.container=void 0,this.draw=!1}updateElement(){this.category&&this.category.update({itemMarkerOpacity:({id:e})=>!this.selectedItems.length||this.selectedItems.includes(e)?1:.5,itemLabelOpacity:({id:e})=>!this.selectedItems.length||this.selectedItems.includes(e)?1:.5})}upsertCanvas(){if(this.canvas)return this.canvas;let e=this.context.canvas,[t,n]=e.getSize(),{width:r=t,height:i=n,position:a,container:o,containerStyle:s,className:c}=this.options,[l,u]=n3({width:r,height:i,graphCanvas:e,container:o,containerStyle:s,placement:a,className:`legend`});return this.container=l,c&&l.classList.add(c),this.canvas=u,this.canvas}destroy(){this.clear(),this.context.graph.off(Z.AFTER_DRAW,this.createElement),super.destroy()}};o3.defaultOptions={position:`bottom`,trigger:`hover`,orientation:`horizontal`,layout:`flex`,itemSpacing:4,rowPadding:10,colPadding:10,itemMarkerSize:16,itemLabelFontSize:16,width:240,height:160};var s3=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.onDraw=e=>{e?.data?.render||this.onRender()},this.landmarkMap=new Map,this.mask=null,this.isMaskDragging=!1,this.onMaskDragStart=e=>{this.mask&&(this.isMaskDragging=!0,this.mask.setPointerCapture(e.pointerId),this.mask.addEventListener(`pointermove`,this.onMaskDrag),this.mask.addEventListener(`pointerup`,this.onMaskDragEnd),this.mask.addEventListener(`pointercancel`,this.onMaskDragEnd))},this.onMaskDrag=e=>{if(!this.mask||!this.isMaskDragging)return;let{size:[t,n]}=this.options,{movementX:r,movementY:i}=e,{left:a,top:o,width:s,height:c}=this.mask.style,[,,l,u]=this.maskBBox,d=parseInt(a)+r,f=parseInt(o)+i,p=parseInt(s),m=parseInt(c);d<0&&(d=0),f<0&&(f=0),d+p>t&&(d=l3(t-p,0)),f+m>n&&(f=l3(n-m,0)),p<l&&(r>0?(d=l3(d-r,0),p=c3(p+r,t)):r<0&&(p=c3(p-r,t))),m<u&&(i>0?(f=l3(f-i,0),m=c3(m+i,n)):i<0&&(m=c3(m-i,n))),Object.assign(this.mask.style,{left:d+`px`,top:f+`px`,width:p+`px`,height:m+`px`});let h=parseInt(a)-d,g=parseInt(o)-f;if(h===0&&g===0)return;let _=this.context.canvas.getCamera().getZoom()/this.canvas.getCamera().getZoom();this.context.graph.translateBy([h*_,g*_],!1)},this.onMaskDragEnd=e=>{this.mask&&(this.isMaskDragging=!1,this.mask.releasePointerCapture(e.pointerId),this.mask.removeEventListener(`pointermove`,this.onMaskDrag),this.mask.removeEventListener(`pointerup`,this.onMaskDragEnd),this.mask.removeEventListener(`pointercancel`,this.onMaskDragEnd))},this.onTransform=$n(()=>{this.isMaskDragging||(this.updateMask(),this.setCamera())},32,{leading:!0}),this.setOnRender(),this.bindEvents()}update(e){this.unbindEvents(),super.update(e),`delay`in e&&this.setOnRender(),this.bindEvents()}setOnRender(){this.onRender=Ln(()=>{this.renderMinimap(),this.renderMask()},this.options.delay)}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_DRAW,this.onDraw),e.on(Z.AFTER_RENDER,this.onRender),e.on(Z.AFTER_ANIMATE,this.onRender),e.on(Z.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){let{graph:e}=this.context;e.off(Z.AFTER_DRAW,this.onDraw),e.off(Z.AFTER_RENDER,this.onRender),e.off(Z.AFTER_ANIMATE,this.onRender),e.off(Z.AFTER_TRANSFORM,this.onTransform)}renderMinimap(){let e=this.getElements(),t=this.initCanvas();this.setShapes(t,e)}getElements(){let{filter:e}=this.options,{model:t,element:n}=this.context,r=t.getData(),i={nodes:r.nodes.filter(e=>n?.getElement(Q(e))),edges:r.edges.filter(e=>{let t=n?.getElement(Q(e));return t&&Zx(t)}),combos:r.combos.filter(e=>n?.getElement(Q(e)))};if(!e)return i;let{nodes:a,edges:o,combos:s}=i;return{nodes:a.filter(t=>e(Q(t),`node`)),edges:o.filter(t=>e(Q(t),`edge`)),combos:s.filter(t=>e(Q(t),`combo`))}}setShapes(e,t){let{nodes:n,edges:r,combos:i}=t,{shape:a}=this.options,{element:o}=this.context,s=(t,n)=>{let r=Q(t),i=o?.getElement(r);if(!i)return;let s=i.getShape(`key`),c;if(typeof a==`string`){let e=a;c=i.getShape(e).cloneNode()}else{let e=a(r,n,i);c=e===i?e.cloneNode(!0):e}c.setPosition(s.getPosition()),i.style.zIndex&&(c.style.zIndex=i.style.zIndex),c.id=i.id,e.appendChild(c)};e.removeChildren(),r.forEach(e=>s(e,`edge`)),i.forEach(e=>s(e,`combo`)),n.forEach(e=>s(e,`node`))}initCanvas(){let{renderer:e,size:[t,n]}=this.options;if(this.canvas){let{width:r,height:i}=this.canvas.getConfig();(t!==r||n!==i)&&this.canvas.resize(t,n),e&&this.canvas.setRenderer(e)}else{let{className:r,position:i,container:a,containerStyle:o}=this.options,[s,c]=n3({renderer:e,width:t,height:n,placement:i,className:`minimap`,container:a,containerStyle:o,graphCanvas:this.context.canvas});r&&s.classList.add(r),this.container=s,this.canvas=c}return this.setCamera(),this.canvas}createLandmark(e,t,n){let r=`${e.join(`,`)}-${t.join(`,`)}-${n}`;if(this.landmarkMap.has(r))return this.landmarkMap.get(r);let i=this.canvas.getCamera().createLandmark(r,{position:e,focalPoint:t,zoom:n});return this.landmarkMap.set(r,i),i}setCamera(){let{canvas:e}=this.context,t=this.canvas?.getCamera();if(!t)return;let{size:[n,r],padding:i}=this.options,[a,o,s,c]=Mh(i),{min:l,max:u,center:d}=e.getBounds(`elements`),f=u[0]-l[0],p=u[1]-l[1],m=n-c-o,h=r-a-s,g=m/f,_=h/p,v=Math.min(g,_),y=this.createLandmark(d,d,v);t.gotoLandmark(y,0)}get maskBBox(){let{canvas:e}=this.context,t=e.getSize(),n=e.getCanvasByViewport([0,0]),r=e.getCanvasByViewport(t),i=this.canvas.canvas2Viewport(y_(n)),a=this.canvas.canvas2Viewport(y_(r)),o=a.x-i.x,s=a.y-i.y;return[i.x,i.y,o,s]}calculateMaskBBox(){let{size:[e,t]}=this.options,[n,r,i,a]=this.maskBBox;return n<0&&(i=c3(i+n,e),n=0),r<0&&(a=c3(a+r,t),r=0),n+i>e&&(i=l3(e-n,0)),r+a>t&&(a=l3(t-r,0)),[c3(n,e),c3(r,t),l3(i,0),l3(a,0)]}renderMask(){let{maskStyle:e}=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({},e),{cursor:`move`,position:`absolute`,pointerEvents:`auto`})),this.updateMask()}updateMask(){if(!this.mask)return;let[e,t,n,r]=this.calculateMaskBBox();Object.assign(this.mask.style,{top:t+`px`,left:e+`px`,width:n+`px`,height:r+`px`})}destroy(){var e,t,n;this.unbindEvents(),(e=this.canvas)==null||e.destroy(),(t=this.mask)==null||t.remove(),(n=this.container)==null||n.remove(),super.destroy()}};s3.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};var c3=(e,t)=>Math.min(e,t),l3=(e,t)=>Math.max(e,t),u3=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},d3={x1:0,y1:0,x2:0,y2:0,visibility:`hidden`},f3=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.initSnapline=()=>{let e=this.context.canvas.getLayer(`transient`);this.horizontalLine||=e.appendChild(new uf({style:Object.assign(Object.assign({},d3),this.options.horizontalLineStyle)})),this.verticalLine||=e.appendChild(new uf({style:Object.assign(Object.assign({},d3),this.options.verticalLineStyle)}))},this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!0,this.autoSnapToLine=(e,t,n)=>u3(this,void 0,void 0,function*(){let{verticalX:r,horizontalY:i}=n,{tolerance:a}=this.options,{min:[o,s],max:[c,l],center:[u,d]}=t,f=0,p=0;r!==null&&(p3(c,r)<a&&(f=r-c),p3(o,r)<a&&(f=r-o),p3(u,r)<a&&(f=r-u),f!==0&&(this.isVerticalSticking=!0)),i!==null&&(p3(l,i)<a&&(p=i-l),p3(s,i)<a&&(p=i-s),p3(d,i)<a&&(p=i-d),p!==0&&(this.isHorizontalSticking=!0)),(f!==0||p!==0)&&(yield this.context.graph.translateElementBy({[e]:[f,p]},!1))}),this.enableSnap=e=>{let{target:t}=e,n=.5;if(this.isHorizontalSticking||this.isVerticalSticking){let[r,i]=this.getDelta(e);if(this.isHorizontalSticking&&this.isVerticalSticking&&Math.abs(r)<=n&&Math.abs(i)<=n)return this.context.graph.translateElementBy({[t.id]:[-r,-i]},!1),!1;if(this.isHorizontalSticking&&Math.abs(i)<=n)return this.context.graph.translateElementBy({[t.id]:[0,-i]},!1),!1;if(this.isVerticalSticking&&Math.abs(r)<=n)return this.context.graph.translateElementBy({[t.id]:[-r,0]},!1),!1;this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!1,setTimeout(()=>{this.enableStick=!0},200)}return this.enableStick},this.calcSnaplineMetadata=(e,t)=>{let{tolerance:n,shape:r}=this.options,{min:[i,a],max:[o,s],center:[c,l]}=t,u=null,d=null,f=null,p=null,m=null,h=null;return this.getNodes().some(t=>{if(qn(e.id,t.id))return!1;let{min:[g,_],max:[v,y],center:[b,x]}=m3(t,r).getRenderBounds();return u===null&&(p3(b,c)<n?u=b:p3(g,i)<n||p3(g,o)<n?u=g:(p3(v,o)<n||p3(v,i)<n)&&(u=v),u!==null&&(d=Math.min(_,a),f=Math.max(y,s))),p===null&&(p3(x,l)<n?p=x:p3(_,a)<n||p3(_,s)<n?p=_:(p3(y,s)<n||p3(y,a)<n)&&(p=y),p!==null&&(m=Math.min(g,i),h=Math.max(v,o))),u!==null&&p!==null}),{verticalX:u,verticalMinY:d,verticalMaxY:f,horizontalY:p,horizontalMinX:m,horizontalMaxX:h}},this.onDragStart=()=>{this.initSnapline()},this.onDrag=e=>u3(this,void 0,void 0,function*(){let{target:t}=e;if(this.options.autoSnap&&!this.enableSnap(e))return;let n=m3(t,this.options.shape).getRenderBounds(),r=this.calcSnaplineMetadata(t,n);this.hideSnapline(),(r.verticalX!==null||r.horizontalY!==null)&&this.updateSnapline(r),this.options.autoSnap&&(yield this.autoSnapToLine(t.id,n,r))}),this.onDragEnd=()=>{this.hideSnapline()},this.bindEvents()}getNodes(){let{filter:e}=this.options,t=(this.context.element?.getNodes()||[]).filter(e=>Zx(e)&&this.context.viewport?.isInViewport(e.getRenderBounds()));return e?t.filter(t=>e(t)):t}hideSnapline(){this.horizontalLine.style.visibility=`hidden`,this.verticalLine.style.visibility=`hidden`}getLineWidth(e){let{lineWidth:t}=this.options[`${e}LineStyle`];return+(t||d3.lineWidth||1)/this.context.graph.getZoom()}updateSnapline(e){let{verticalX:t,verticalMinY:n,verticalMaxY:r,horizontalY:i,horizontalMinX:a,horizontalMaxX:o}=e,[s,c]=this.context.canvas.getSize(),{offset:l}=this.options;i===null?this.horizontalLine.style.visibility=`hidden`:Object.assign(this.horizontalLine.style,{x1:l===1/0?0:a-l,y1:i,x2:l===1/0?s:o+l,y2:i,visibility:`visible`,lineWidth:this.getLineWidth(`horizontal`)}),t===null?this.verticalLine.style.visibility=`hidden`:Object.assign(this.verticalLine.style,{x1:t,y1:l===1/0?0:n-l,x2:t,y2:l===1/0?c:r+l,visibility:`visible`,lineWidth:this.getLineWidth(`vertical`)})}getDelta(e){let t=this.context.graph.getZoom();return Zg([e.dx,e.dy],t)}bindEvents(){return u3(this,void 0,void 0,function*(){let{graph:e}=this.context;e.on($m.DRAG_START,this.onDragStart),e.on($m.DRAG,this.onDrag),e.on($m.DRAG_END,this.onDragEnd)})}unbindEvents(){let{graph:e}=this.context;e.off($m.DRAG_START,this.onDragStart),e.off($m.DRAG,this.onDrag),e.off($m.DRAG_END,this.onDragEnd)}destroyElements(){var e,t;(e=this.horizontalLine)==null||e.destroy(),(t=this.verticalLine)==null||t.destroy()}destroy(){this.destroyElements(),this.unbindEvents(),super.destroy()}};f3.defaultOptions={tolerance:5,offset:20,autoSnap:!0,shape:`key`,verticalLineStyle:{stroke:`#1783FF`},horizontalLineStyle:{stroke:`#1783FF`},filter:()=>!0};var p3=(e,t)=>Math.abs(e-t),m3=(e,t)=>typeof t==`function`?t(e):e.getShape(t),h3=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},g3=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},_3=[`timestamp`,`time`,`date`,`datetime`],v3=class e extends rY{get padding(){return Mh(this.options.padding)}constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.backup(),this.upsertTimebar()}play(){var e;(e=this.timebar)==null||e.play()}pause(){var e;(e=this.timebar)==null||e.pause()}forward(){var e;(e=this.timebar)==null||e.forward()}backward(){var e;(e=this.timebar)==null||e.backward()}reset(){var e;(e=this.timebar)==null||e.reset()}update(e){super.update(e),this.backup(),this.upsertTimebar()}backup(){this.originalData=y3(this.context.graph.getData())}upsertTimebar(){let{canvas:e}=this.context,t=this.options,{onChange:n,timebarType:r,data:i,x:a,y:o,width:s,height:c,mode:l}=t,u=g3(t,[`onChange`,`timebarType`,`data`,`x`,`y`,`width`,`height`,`mode`]),d=e.getSize(),[f]=this.padding;this.upsertCanvas().ready.then(()=>{var e;let t=Object.assign(Object.assign({x:d[0]/2-s/2,y:f,onChange:e=>{let t=(Qt(e)?e:[e,e]).map(e=>On(e)?e.getTime():e);this.options.mode===`modify`?this.filterElements(t):this.hiddenElements(t),n?.(t)}},u),{data:i.map(e=>hn(e)?{time:e,value:0}:e),width:s,height:c,type:r});this.timebar?this.timebar.update(t):(this.timebar=new t3({style:t}),(e=this.canvas)==null||e.appendChild(this.timebar))})}upsertCanvas(){if(this.canvas)return this.canvas;let{className:e,height:t,position:n}=this.options,r=this.context.canvas,[i]=r.getSize(),[a,,o]=this.padding,[s,c]=n3({width:i,height:t+a+o,graphCanvas:r,className:`timebar`,placement:n});return this.container=s,e&&s.classList.add(e),this.canvas=c,this.canvas}filterElements(e){return h3(this,void 0,void 0,function*(){if(!this.originalData)return;let{elementTypes:t,getTime:n}=this.options,{graph:r,element:i}=this.context,a=y3(this.originalData);t.forEach(t=>{let r=`${t}s`;a[r]=(this.originalData[r]||[]).filter(t=>!!b3(n(t),e))});let o=[...a.nodes,...a.combos].map(e=>Q(e));a.edges=a.edges.filter(e=>{let t=e.source,n=e.target;return o.includes(t)&&o.includes(n)}),r.setData(a),yield i.draw({animation:!1,silence:!0})?.finished})}hiddenElements(e){let{graph:t}=this.context,{elementTypes:n,getTime:r}=this.options,i=[],a=[];n.forEach(t=>{let n=`${t}s`;(this.originalData?.[n]||[]).forEach(t=>{let n=Q(t);b3(r(t),e)?a.push(n):i.push(n)})}),t.hideElement(i,!1),t.showElement(a,!1)}destroy(){var e,t,n;let{graph:r}=this.context;this.originalData&&r.setData(Object.assign({},this.originalData)),(e=this.timebar)==null||e.destroy(),(t=this.canvas)==null||t.destroy(),(n=this.container)==null||n.remove(),this.originalData=void 0,this.container=void 0,this.timebar=void 0,this.canvas=void 0,super.destroy()}};v3.defaultOptions={position:`bottom`,enable:!0,timebarType:`time`,className:`g6-timebar`,width:450,height:60,zIndex:3,elementTypes:[`node`],padding:10,mode:`modify`,getTime:e=>x3(e,_3,void 0),loop:!1};var y3=e=>{let{nodes:t=[],edges:n=[],combos:r=[]}=e;return{nodes:[...t],edges:[...n],combos:[...r]}},b3=(e,t)=>{if(hn(t))return e===t;let[n,r]=t;return e>=n&&e<=r},x3=(e,t,n)=>{for(let n=0;n<t.length;n++){let r=t[n],i=e.data?.[r];if(i)return i}return n},S3=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},C3={fill:`#1D2129`,wordWrap:!0,maxLines:1,textOverflow:`ellipsis`,textBaseline:`top`,textAlign:`start`,x:0},w3=Object.assign(Object.assign({},C3),{fillOpacity:.9,fontSize:16,fontWeight:`bold`}),T3=Object.assign(Object.assign({},C3),{fillOpacity:.65,fontSize:12,fontWeight:`normal`}),E3={align:`left`,spacing:8,size:44,padding:[16,24,0,24]},D3=`title`,O3=`subtitle`,k3=class extends rY{get padding(){return Mh(this.options.padding)}constructor(e,t){let n=Object.assign({},E3,t);super(e,n),this.onRender=()=>{let e=this.updateCanvas();this.renderTitle(e)},this.bindEvents()}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_RENDER,this.onRender),e.on(Z.AFTER_ANIMATE,this.onRender)}unbindEvents(){let{graph:e}=this.context;e.off(Z.AFTER_RENDER,this.onRender),e.off(Z.AFTER_ANIMATE,this.onRender)}destroy(){var e,t;this.unbindEvents(),(e=this.canvas)==null||e.destroy(),(t=this.container)==null||t.remove(),super.destroy()}updateCanvas(){let{size:e,className:t,align:n}=this.options,[r]=this.context.canvas.getSize(),[i=0,,a=0]=this.padding,o=e+i+a;if(this.canvas){let{width:e,height:t}=this.canvas.getConfig();(r!==e||o!==t)&&this.canvas.resize(r,o)}else{let e={left:`left-top`,center:`top`,right:`right-top`},[i,a]=n3({width:r,height:o,placement:e[n]||e.left,className:`title-canvas`,graphCanvas:this.context.canvas});t&&i.classList.add(t),this.container=i,this.canvas=a}return this.canvas}renderTitle(e){let t=new A3({options:this.options,ctx:this.context});e.removeChildren(),t.getTitle().forEach(t=>{t&&e.appendChild(t)})}},A3=class{get padding(){return Mh(this.options.padding)}constructor(e){let{options:t,ctx:n}=e;this.options=t,this.context=n}getTitle(){let e=this.options,t=D3,n=e[t],r=O3,i=e[r],{spacing:a=44,padding:o,align:s}=e,c=S3(e,[typeof t==`symbol`?t:t+``,typeof r==`symbol`?r:r+``,`spacing`,`padding`,`align`]),l=n,u=i,d=iv(c,D3),f=iv(c,O3),[p]=this.context.graph.getSize(),[m=0,h=0,,g=0]=this.padding,_=p,v=_-g-h,y=null,b=g,x=`left`;switch(s){case`left`:b=g,x=`left`;break;case`center`:b=_/2,x=`center`;break;case`right`:b=_-h,x=`right`;break;default:b=g,x=`left`}let S=new Cv({className:D3,style:Object.assign(Object.assign(Object.assign(Object.assign({},w3),{wordWrapWidth:v-5,x:b,y:m,textAlign:x}),d),{text:l})}),C=S.getBBox();return u&&(y=new Cv({className:`subTitle`,style:Object.assign(Object.assign(Object.assign(Object.assign({},T3),{wordWrapWidth:v-5,x:b,y:C.height+a+m,textAlign:x}),f),{text:u})})),[S,y]}};function j3(e){let t={top:`unset`,right:`unset`,bottom:`unset`,left:`unset`};return e.split(`-`).forEach(e=>{t[e]=`8px`}),t.flexDirection=e.startsWith(`top`)||e.startsWith(`bottom`)?`row`:`column`,t}var M3=`
81
+ .g6-toolbar {
82
+ position: absolute;
83
+ z-index: 100;
84
+ display: flex;
85
+ flex-direction: row;
86
+ align-items: center;
87
+ justify-content: center;
88
+ border-radius: 4px;
89
+ box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
90
+ opacity: 0.65;
91
+ }
92
+ .g6-toolbar .g6-toolbar-item {
93
+ display: inline-block;
94
+ width: 16px;
95
+ height: 16px;
96
+ padding: 4px;
97
+ cursor: pointer;
98
+ box-sizing: content-box;
99
+ }
100
+
101
+ .g6-toolbar .g6-toolbar-item:hover {
102
+ background-color: #f0f0f0;
103
+ }
104
+
105
+ .g6-toolbar .g6-toolbar-item svg {
106
+ display: inline-block;
107
+ width: 100%;
108
+ height: 100%;
109
+ pointer-events: none;
110
+ }
111
+ `,N3=`
112
+ <svg>
113
+ <symbol id="zoom-in" viewBox="64 64 896 896">
114
+ <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>
115
+ </symbol>
116
+ <symbol id="zoom-out" viewBox="64 64 896 896">
117
+ <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>
118
+ </symbol>
119
+ <symbol id="edit" viewBox="64 64 896 896">
120
+ <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>
121
+ </symbol>
122
+ <symbol id="delete" viewBox="64 64 896 896">
123
+ <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>
124
+ </symbol>
125
+ <symbol id="redo" viewBox="64 64 896 896">
126
+ <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>
127
+ </symbol>
128
+ <symbol id="undo" viewBox="64 64 896 896">
129
+ <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>
130
+ </symbol>
131
+ <symbol id="export" viewBox="64 64 896 896">
132
+ <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>
133
+ </symbol>
134
+ <symbol id="auto-fit" viewBox="64 64 896 896">
135
+ <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>
136
+ <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>
137
+ </symbol>
138
+ <symbol id="reset" viewBox="64 64 896 896">
139
+ <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>
140
+ </symbol>
141
+ <symbol id="exit-fullscreen" viewBox="0 0 1024 1024">
142
+ <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>
143
+ <symbol id="request-fullscreen" viewBox="0 0 1024 1024">
144
+ <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>
145
+ </svg>
146
+ `,P3=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},F3=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$element=iY(`toolbar`,!1),this.onToolbarItemClick=e=>{let{onClick:t}=this.options;if(e.target instanceof Element&&e.target.className.includes(`g6-toolbar-item`)){let n=e.target.getAttribute(`value`);t?.(n,e.target)}};let r=this.context.canvas.getContainer();this.$element.style.display=`flex`,r.appendChild(this.$element),aY(`g6-toolbar-css`,`style`,{},M3,document.head),aY(`g6-toolbar-svgicon`,`div`,{display:`none`},N3),this.$element.addEventListener(`click`,this.onToolbarItemClick),this.update(n)}update(e){let t=Object.create(null,{update:{get:()=>super.update}});return P3(this,void 0,void 0,function*(){t.update.call(this,e);let{className:n,position:r,style:i}=this.options;this.$element.className=`g6-toolbar ${n||``}`,Object.assign(this.$element.style,i,j3(r)),this.$element.innerHTML=yield this.getDOMContent()})}destroy(){this.$element.removeEventListener(`click`,this.onToolbarItemClick),this.$element.remove(),super.destroy()}getDOMContent(){return P3(this,void 0,void 0,function*(){return(yield this.options.getItems()).map(e=>`
147
+ <div class="g6-toolbar-item" value="${e.value}" title="${e.title??``}">
148
+ <svg aria-hidden="true" focusable="false">
149
+ <use xlink:href="#${e.id}"></use>
150
+ </svg>
151
+ </div>`).join(``)})}};F3.defaultOptions={position:`top-left`};var I3=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},L3=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.currentTarget=null,this.tooltipElement=null,this.container=null,this.isEnable=(e,t)=>{let{enable:n}=this.options;return typeof n==`function`?n(e,t):n},this.onClick=e=>{let{target:{id:t}}=e;this.currentTarget===t?this.hide(e):this.show(e)},this.onPointerMove=e=>{let{target:t}=e;!this.currentTarget||t.id===this.currentTarget||this.show(e)},this.onPointerLeave=e=>{this.hide(e)},this.onCanvasMove=e=>{this.hide(e)},this.onPointerOver=e=>{this.show(e)},this.showById=e=>I3(this,void 0,void 0,function*(){let t={target:{id:e}};yield this.show(t)}),this.getElementData=(e,t)=>{let{model:n}=this.context;switch(t){case`node`:return n.getNodeData([e]);case`edge`:return n.getEdgeData([e]);case`combo`:return n.getComboData([e]);default:return[]}},this.show=e=>I3(this,void 0,void 0,function*(){var t,n;let{client:r,target:{id:i}}=e;if(nS(e.target))return;let a=this.context.graph.getElementType(i),{getContent:o,title:s}=this.options,c=this.getElementData(i,a);if(!this.tooltipElement)return;if(!this.isEnable(e,c)){this.hide(e);return}let l={};if(o){if(l.content=yield o(e,c),!l.content)return}else{let e=this.context.graph.getElementRenderStyle(i),t=a===`node`?e.fill:e.stroke;l={title:s||a,data:c.map(e=>({name:`ID`,value:e.id||`${e.source} -> ${e.target}`,color:t}))}}this.currentTarget=i;let u,d;if(r)u=r.x,d=r.y;else{let e=Jn(c,`0.style`,{x:0,y:0});u=e.x,d=e.y}(n=(t=this.options).onOpenChange)==null||n.call(t,!0),this.tooltipElement.update(Object.assign(Object.assign(Object.assign({},this.tooltipStyleProps),{x:u,y:d,style:{".tooltip":{visibility:`visible`}}}),l))}),this.hide=e=>{var t,n,r,i,a;if(!e){(n=(t=this.options).onOpenChange)==null||n.call(t,!1),(r=this.tooltipElement)==null||r.hide(),this.currentTarget=null;return}if(!this.tooltipElement||!this.currentTarget)return;let{client:{x:o,y:s}}=e;(a=(i=this.options).onOpenChange)==null||a.call(i,!1),this.tooltipElement.hide(o,s),this.currentTarget=null},this.initTooltip=()=>{var e;let t=new D4({className:`tooltip`,style:this.tooltipStyleProps});return(e=this.container)==null||e.appendChild(t.HTMLTooltipElement),t},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(e){var t;this.unbindEvents(),super.update(e),this.tooltipElement&&((t=this.container)==null||t.removeChild(this.tooltipElement.HTMLTooltipElement)),this.tooltipElement=this.initTooltip(),this.bindEvents()}render(){let{canvas:e}=this.context,t=e.getContainer();t&&(this.container=t,this.tooltipElement=this.initTooltip())}unbindEvents(){let{graph:e}=this.context,t=this.getEvents();Object.keys(t).forEach(n=>{e.off(n,t[n])})}bindEvents(){let{graph:e}=this.context,t=this.getEvents();Object.keys(t).forEach(n=>{e.on(n,t[n])})}get tooltipStyleProps(){let{canvas:e}=this.context,{center:t}=e.getBounds(),{top:n,left:r}=e.getContainer().getBoundingClientRect(),{style:i,position:a,enterable:o,container:s={x:-r,y:-n},title:c,offset:l}=this.options,[u,d]=t,[f,p]=e.getSize();return{x:u,y:d,container:s,title:c,bounding:{x:0,y:0,width:f,height:p},position:a,enterable:o,offset:l,style:i}}destroy(){var e;this.unbindEvents(),this.tooltipElement&&((e=this.container)==null||e.removeChild(this.tooltipElement.HTMLTooltipElement)),super.destroy()}};L3.defaultOptions={trigger:`hover`,position:`top-right`,enterable:!1,enable:!0,offset:[10,10],style:{".tooltip":{visibility:`hidden`}}};var R3=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},z3;function B3(e,t){return z3||=document.createElement(`canvas`),z3.width=e,z3.height=t,z3.getContext(`2d`).clearRect(0,0,e,t),z3}function V3(e,t,n,r){return R3(this,void 0,void 0,function*(){let i=B3(e,t),a=i.getContext(`2d`),{rotate:o,opacity:s,textFill:c,textFontSize:l,textFontFamily:u,textFontVariant:d,textFontWeight:f,textAlign:p,textBaseline:m}=r;return a.textAlign=p,a.textBaseline=m,a.translate(e/2,t/2),a.font=`${l}px ${u} ${d} ${f}`,o&&a.rotate(o),s&&(a.globalAlpha=s),c&&(a.fillStyle=c,a.fillText(`${n}`,0,0)),i.toDataURL()})}function H3(e,t,n,r){return R3(this,void 0,void 0,function*(){let i=B3(e,t),a=i.getContext(`2d`),{rotate:o,opacity:s}=r;o&&a.rotate(o),s&&(a.globalAlpha=s);let c=new Image;return c.crossOrigin=`anonymous`,c.src=n,new Promise(n=>{c.onload=function(){let r=e>c.width?(e-c.width)/2:0,o=t>c.height?(t-c.height)/2:0;a.drawImage(c,0,0,c.width,c.height,r,o,e-r*2,t-o*2),n(i.toDataURL())}})})}var U3=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},W3=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},G3=class e extends rY{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$element=iY(`watermark`),this.context.canvas.getContainer().appendChild(this.$element),this.update(n)}update(e){let t=Object.create(null,{update:{get:()=>super.update}});return U3(this,void 0,void 0,function*(){t.update.call(this,e);let n=this.options,{width:r,height:i,text:a,imageURL:o}=n,s=W3(n,[`width`,`height`,`text`,`imageURL`]);Object.keys(s).forEach(t=>{t.startsWith(`background`)&&(this.$element.style[t]=e[t])});let c=o?yield H3(r,i,o,s):yield V3(r,i,a,s);this.$element.style.backgroundImage=`url(${c})`})}destroy(){super.destroy(),this.$element.remove()}};G3.defaultOptions={width:200,height:100,opacity:.2,rotate:Math.PI/12,text:``,textFill:`#000`,textFontSize:16,textAlign:`center`,textBaseline:`middle`,backgroundRepeat:`repeat`};var K3=[`#7E92B5`,`#F4664A`,`#FFBE3A`],q3={type:`group`,color:[`#1783FF`,`#00C9C9`,`#F08F56`,`#D580FF`,`#7863FF`,`#DB9D0D`,`#60C42D`,`#FF80CA`,`#2491B3`,`#17C76F`]},J3={type:`group`,color:[`#99ADD1`,`#1783FF`,`#00C9C9`,`#F08F56`,`#D580FF`,`#7863FF`,`#DB9D0D`,`#60C42D`,`#FF80CA`,`#2491B3`,`#17C76F`]};function Y3(e){let{bgColor:t,textColor:n,nodeColor:r,nodeColorDisabled:i,nodeStroke:a,nodeHaloStrokeOpacityActive:o=.15,nodeHaloStrokeOpacitySelected:s=.25,nodeOpacityDisabled:c=.06,nodeIconOpacityInactive:l=.85,nodeOpacityInactive:u=.25,nodeBadgePalette:d=K3,nodePaletteOptions:f=q3,edgeColor:p,edgeColorDisabled:m,edgePaletteOptions:h=J3,comboColor:g,comboColorDisabled:_,comboStroke:v,comboStrokeDisabled:y,edgeColorInactive:b}=e;return{background:t,node:{palette:f,style:{donutOpacity:1,badgeBackgroundOpacity:1,badgeFill:`#fff`,badgeFontSize:8,badgePadding:[0,4],badgePalette:d,fill:r,fillOpacity:1,halo:!1,iconFill:`#fff`,iconOpacity:1,labelBackground:!1,labelBackgroundFill:t,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelFill:n,labelFillOpacity:.85,labelLineHeight:16,labelPadding:[0,2],labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelOffsetY:2,lineWidth:0,portFill:r,portLineWidth:1,portStroke:a,portStrokeOpacity:.65,size:32,stroke:a,strokeOpacity:1,zIndex:2},state:{selected:{halo:!0,haloLineWidth:24,haloStrokeOpacity:s,labelFontSize:12,labelFontWeight:`bold`,lineWidth:4,stroke:a},active:{halo:!0,haloLineWidth:12,haloStrokeOpacity:o},highlight:{labelFontWeight:`bold`,lineWidth:4,stroke:a,strokeOpacity:.85},inactive:{badgeBackgroundOpacity:u,donutOpacity:u,fillOpacity:u,iconOpacity:l,labelFill:n,labelFillOpacity:u,strokeOpacity:u},disabled:{badgeBackgroundOpacity:.25,donutOpacity:c,fill:i,fillOpacity:c,iconFill:i,iconOpacity:.25,labelFill:n,labelFillOpacity:.25,strokeOpacity:c}},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:h,style:{badgeBackgroundFill:p,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:n,labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelPlacement:`center`,labelTextBaseline:`middle`,lineWidth:1,stroke:p,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:b,fillOpacity:.08,labelOpacity:.25,strokeOpacity:.08,badgeBackgroundOpacity:.25},disabled:{stroke:m,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:g,halo:!1,haloLineWidth:12,haloStroke:v,haloStrokeOpacity:.25,labelBackground:!1,labelBackgroundFill:t,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[2,4,2,4],labelFill:n,labelFontSize:12,labelFontWeight:400,labelOpacity:1,lineDash:0,lineWidth:1,fillOpacity:.04,strokeOpacity:1,padding:10,stroke:v},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:_,fillOpacity:.25,labelOpacity:.25,stroke:y,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`]}]}}}}var X3=Y3({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`}),Z3=Y3({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`}),Q3=class extends Ug{beforeDraw(e,t){return e}afterLayout(e,t){}},$3=class extends Q3{beforeDraw(e){let{model:t}=this.context,n=e.add.combos,r=e=>{let n=[];return e.forEach((e,r)=>{let i=t.getAncestorsData(r,`combo`).map(e=>Q(e)).reverse();n.push([r,e,i.length])}),new Map(n.sort(([,,e],[,,t])=>t-e).map(([e,t])=>[e,t]))};return e.add.combos=r(n),e.update.combos=r(e.update.combos),e}};function e6(e,t,n,r,i){let a=Q(r),o=`${n}s`,s=i?r:e.add[o].get(a)||e.update[o].get(a)||e.remove[o].get(a)||r;Object.entries(e).forEach(([e,n])=>{t===e?n[o].set(a,s):n[o].delete(a)})}function t6(e,t){return Object.keys(e).every(n=>e[n]===t[n])}var n6=class extends Q3{beforeDraw(e,t){if(t.stage===`visibility`||!this.context.model.model.hasTreeStructure(`combo`))return e;let{model:n}=this.context,{add:r,update:i}=e,a=[...e.update.combos.entries(),...e.add.combos.entries()];for(;a.length;){let[t,o]=a.pop();if(ev(o)){let o=n.getDescendantsData(t),{internal:s,external:c}=Yb(o.map(Q),e=>n.getRelatedEdgesData(e));o.forEach(t=>{let r=Q(t),i=a.findIndex(([e])=>e===r);i!==-1&&a.splice(i,1),e6(e,`remove`,n.getElementType(r),t)}),s.forEach(t=>e6(e,`remove`,`edge`,t)),c.forEach(e=>{let t=Q(e);this.context.element?.getElement(t)?i.edges.set(t,e):r.edges.set(t,e)})}else{let r=n.getChildrenData(t),{edges:i}=Yb(r.map(Q),e=>n.getRelatedEdgesData(e));[...r,...i].forEach(t=>{let r=Q(t),i=n.getElementType(r);this.context.element?.getElement(r)?e6(e,`update`,i,t):e6(e,`add`,i,t),i===`combo`&&a.push([r,t])})}}return e}},r6=(e,t,n,r)=>{let i=`${n}s`,a=Q(r);!e.add[i].has(a)&&!e.update[i].has(a)&&e[t][i].set(Q(r),r)},i6=class extends Q3{getElement(e){return this.context.element.getElement(e)}handleExpand(e,t){if(r6(t,`add`,`node`,e),ev(e))return;let n=Q(e);r6(t,`add`,`node`,e),this.context.model.getRelatedEdgesData(n).forEach(e=>{e6(t,`add`,`edge`,e)}),this.context.model.getChildrenData(n).forEach(e=>{this.handleExpand(e,t)})}beforeDraw(e){let{graph:t,model:n}=this.context;if(!n.model.hasTreeStructure(`tree`))return e;let{add:{nodes:r,edges:i},update:{nodes:a}}=e,o=new Map,s=new Map;r.forEach((e,t)=>{ev(e)&&o.set(t,e)}),i.forEach(e=>{if(t.getElementType(e.source)!==`node`)return;let n=t.getNodeData(e.source);ev(n)&&o.set(e.source,n)}),a.forEach((e,t)=>{let n=this.getElement(t);if(!n)return;let r=n.attributes.collapsed;ev(e)?r||o.set(t,e):r&&s.set(t,e)});let c=new Set;return o.forEach((t,r)=>{n.getDescendantsData(r).forEach(t=>{let r=Q(t);c.has(r)||(e6(e,`remove`,`node`,t),n.getRelatedEdgesData(r).forEach(t=>{e6(e,`remove`,`edge`,t)}),c.add(r))})}),s.forEach((t,r)=>{if(n.getAncestorsData(r,`tree`).some(ev)){e6(e,`remove`,`node`,t);return}this.handleExpand(t,e)}),e}};function a6(e,t,n){rh[e][t]&&ch.warn(`The extension ${t} of ${e} has been registered before, and will be overridden.`),Object.assign(rh[e],{[t]:n})}var o6=function(){function e(t){b(this,e),this.dragndropPluginOptions=t}return S(e,[{key:`apply`,value:function(t){var n=this,r=t.renderingService,i=t.renderingContext.root.ownerDocument,a=i.defaultView,o=function(e){var t=e.target,r=t===i,o=r&&n.dragndropPluginOptions.isDocumentDraggable?i:t.closest&&t.closest(`[draggable=true]`);if(o){var s=!1,c=e.timeStamp,l=[e.clientX,e.clientY],u=null,d=[e.clientX,e.clientY],f=function(){var e=xa(ya().mark(function e(a){var f,p,m,h,g,_;return ya().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(s){e.next=2;break}if(f=a.timeStamp-c,p=gi([a.clientX,a.clientY],l),!(f<=n.dragndropPluginOptions.dragstartTimeThreshold||p<=n.dragndropPluginOptions.dragstartDistanceThreshold)){e.next=1;break}return e.abrupt(`return`);case 1:a.type=`dragstart`,o.dispatchEvent(a),s=!0;case 2:if(a.type=`drag`,a.dx=a.clientX-d[0],a.dy=a.clientY-d[1],o.dispatchEvent(a),d=[a.clientX,a.clientY],r){e.next=4;break}return m=n.dragndropPluginOptions.overlap===`pointer`?[a.canvasX,a.canvasY]:t.getBounds().center,e.next=3,i.elementsFromPoint(m[0],m[1]);case 3:h=e.sent,g=h[h.indexOf(t)+1],_=g?.closest(`[droppable=true]`)||(n.dragndropPluginOptions.isDocumentDroppable?i:null),u!==_&&(u&&(a.type=`dragleave`,a.target=u,u.dispatchEvent(a)),_&&(a.type=`dragenter`,a.target=_,_.dispatchEvent(a)),u=_,u&&(a.type=`dragover`,a.target=u,u.dispatchEvent(a)));case 4:case`end`:return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}();a.addEventListener(`pointermove`,f);var p=function(e){if(s){e.detail={preventClick:!0};var t=e.clone();u&&(t.type=`drop`,t.target=u,u.dispatchEvent(t)),t.type=`dragend`,o.dispatchEvent(t),s=!1}a.removeEventListener(`pointermove`,f)};t.addEventListener(`pointerup`,p,{once:!0}),t.addEventListener(`pointerupoutside`,p,{once:!0})}};r.hooks.init.tap(e.tag,function(){a.addEventListener(`pointerdown`,o)}),r.hooks.destroy.tap(e.tag,function(){a.removeEventListener(`pointerdown`,o)})}}])}();o6.tag=`Dragndrop`;var s6=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return b(this,t),e=k(this,t),e.name=`dragndrop`,e.options=n,e}return T(t,e),S(t,[{key:`init`,value:function(){this.addRenderingPlugin(new o6(y({overlap:`pointer`,isDocumentDraggable:!1,isDocumentDroppable:!1,dragstartDistanceThreshold:0,dragstartTimeThreshold:0},this.options)))}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins()}},{key:`setOptions`,value:function(e){Object.assign(this.plugins[0].dragndropPluginOptions,e)}}])}(Ca),c6=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},l6=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},u6=[`main`],d6=[`background`,`main`,`label`,`transient`];function f6(e){return e.main}var p6=class{getConfig(){return this.config}getLayer(e=`main`){return this.extends.layers[e]||f6(this.getLayers())}getLayers(){return this.extends.layers}getRenderer(e){return this.extends.renderers[e]}getCamera(e=`main`){return this.getLayer(e).getCamera()}getRoot(e=`main`){return this.getLayer(e).getRoot()}getContextService(e=`main`){return this.getLayer(e).getContextService()}setCursor(e){this.config.cursor=e,this.getLayer().setCursor(e)}get document(){return this.getLayer().document}get context(){return this.getLayer().context}constructor(e){this.config={enableMultiLayer:!0},Object.assign(this.config,e);let t=this.config,{renderer:n,background:r,cursor:i,enableMultiLayer:a}=t,o=l6(t,[`renderer`,`background`,`cursor`,`enableMultiLayer`]),s=a?d6:u6,c=m6(n,s),l=Object.fromEntries(s.map(e=>[e,new Lf(Object.assign(Object.assign({},o),{supportsMutipleCanvasesInOneContainer:a,renderer:c[e],background:a?e===`background`?r:void 0:r}))]));h6(l),this.extends={config:this.config,renderer:n,renderers:c,layers:l}}get ready(){return Promise.all(Object.entries(this.getLayers()).map(([,e])=>e.ready))}resize(e,t){Object.assign(this.extends.config,{width:e,height:t}),Object.values(this.getLayers()).forEach(n=>{let r=n.getCamera(),i=r.getPosition(),a=r.getFocalPoint();n.resize(e,t),r.setPosition(i),r.setFocalPoint(a)})}getBounds(e){return Bh(Object.values(this.getLayers()).map(t=>e?t.getRoot().childNodes.find(t=>t.classList.includes(e)):t.getRoot()).filter(e=>e?.childNodes.length>0).map(e=>e.getBounds()))}getContainer(){let e=this.extends.config.container;return typeof e==`string`?document.getElementById(e):e}getSize(){return[this.extends.config.width||0,this.extends.config.height||0]}appendChild(e,t){let n=e.style?.$layer||`main`;return this.getLayer(n).appendChild(e,t)}setRenderer(e){if(e===this.extends.renderer)return;let t=m6(e,this.config.enableMultiLayer?d6:u6);this.extends.renderers=t,Object.entries(t).forEach(([e,t])=>this.getLayer(e).setRenderer(t)),h6(this.getLayers())}getCanvasByViewport(e){return v_(this.getLayer().viewport2Canvas(y_(e)))}getViewportByCanvas(e){return v_(this.getLayer().canvas2Viewport(y_(e)))}getViewportByClient(e){return v_(this.getLayer().client2Viewport(y_(e)))}getClientByViewport(e){return v_(this.getLayer().viewport2Client(y_(e)))}getClientByCanvas(e){return this.getClientByViewport(this.getViewportByCanvas(e))}getCanvasByClient(e){let t=this.getLayer(),n=t.client2Viewport(y_(e));return v_(t.viewport2Canvas(n))}toDataURL(){return c6(this,arguments,void 0,function*(e={}){let t=globalThis.devicePixelRatio||1,{mode:n=`viewport`}=e,r=l6(e,[`mode`]),[i,a,o,s]=[0,0,0,0];if(n===`viewport`)[o,s]=this.getSize();else if(n===`overall`){let e=this.getBounds(),t=Ih(e);[i,a]=e.min,[o,s]=t}let c=Li(`<div id="virtual-image"></div>`),l=new Lf({width:o,height:s,renderer:new sb,devicePixelRatio:t,container:c,background:this.extends.config.background});yield l.ready,l.appendChild(this.getLayer(`background`).getRoot().cloneNode(!0)),l.appendChild(this.getRoot().cloneNode(!0));let u=this.getLayer(`label`).getRoot().cloneNode(!0),d=l.viewport2Canvas({x:0,y:0}),f=this.getCanvasByViewport([0,0]);u.translate([f[0]-d.x,f[1]-d.y]),u.scale(1/this.getCamera().getZoom()),l.appendChild(u),l.appendChild(this.getLayer(`transient`).getRoot().cloneNode(!0));let p=this.getCamera(),m=l.getCamera();if(n===`viewport`)m.setZoom(p.getZoom()),m.setPosition(p.getPosition()),m.setFocalPoint(p.getFocalPoint());else if(n===`overall`){let[e,t,n]=m.getPosition(),[r,o,s]=m.getFocalPoint();m.setPosition([e+i,t+a,n]),m.setFocalPoint([r+i,o+a,s])}let h=l.getContextService();return new Promise(e=>{l.addEventListener(Of.RERENDER,()=>c6(this,void 0,void 0,function*(){yield new Promise(e=>setTimeout(e,300)),e(yield h.toDataURL(r))}))})})}destroy(){Object.values(this.getLayers()).forEach(e=>{e.getCamera().cancelLandmarkAnimation(),e.destroy()})}};function m6(e,t){return Object.fromEntries(t.map(t=>{let n=e?.(t)||new sb;return n instanceof sb&&n.setConfig({enableDirtyRectangleRendering:!1}),t===`main`?n.registerPlugin(new s6({isDocumentDraggable:!0,isDocumentDroppable:!0,dragstartDistanceThreshold:10,dragstartTimeThreshold:100})):n.unregisterPlugin(n.getPlugin(`dom-interaction`)),[t,n]}))}function h6(e){Object.entries(e).forEach(([e,t])=>{let n=t.getContextService().getDomElement();n?.style&&(n.style.gridArea=`1 / 1 / 2 / 2`,n.style.outline=`none`,n.tabIndex=1,e!==`main`&&(n.style.pointerEvents=`none`)),n?.parentElement&&(n.parentElement.style.display=`grid`,n.parentElement.style.isolation=`isolate`)})}var g6=e=>e?parseInt(e):0;function _6(e){let t=getComputedStyle(e),n=e.clientWidth||g6(t.width),r=e.clientHeight||g6(t.height),i=g6(t.paddingLeft)+g6(t.paddingRight),a=g6(t.paddingTop)+g6(t.paddingBottom);return[n-i,r-a]}function v6(e){if(!e)return[0,0];let t=640,n=480,[r,i]=_6(e);return t=r||t,n=i||n,[Math.max(hn(t)?t:1,1),Math.max(hn(n)?n:1,1)]}var y6=class{constructor(e){this.type=e}},b6=class extends y6{constructor(e,t){super(e),this.data=t}},x6=class extends y6{constructor(e,t,n,r){super(e),this.animationType=t,this.animation=n,this.data=r}},S6=class extends y6{constructor(e,t,n){super(e),this.elementType=t,this.data=n}},C6=class extends y6{constructor(e,t){super(e),this.data=t}};function w6(e,t){e.emit(t.type,t)}function T6(e){if(!e)return null;if(e instanceof Sf)return{type:`canvas`,element:e};let t=e;for(;t;){if(kx(t))return{type:`node`,element:t};if(Ax(t))return{type:`edge`,element:t};if(jx(t))return{type:`combo`,element:t};t=t.parentElement}return null}function E6(e){return e?.style?.zIndex||0}var D6=`cachedStyle`,O6=e=>`__${e}__`;function k6(e,t){let n=Array.isArray(t)?t:[t];Jn(e,D6)||Yn(e,D6,{}),n.forEach(t=>{Yn(Jn(e,D6),O6(t),e.attributes[t])})}function A6(e,t){return Jn(e,[D6,O6(t)])}function j6(e,t){return O6(t)in(Jn(e,D6)||{})}var M6=class{constructor(e){this.tasks=[],this.animations=new Set,this.context=e}getTasks(){let e=[...this.tasks];return this.tasks=[],e}add(e,t){this.tasks.push([e,t])}animate(e,t,n){var r,i,a;(r=t?.before)==null||r.call(t);let o=this.getTasks().map(([t,r])=>{var i,a,o;let{element:s,elementType:c,stage:l}=t,u=hh(this.context.options,c,l,e);(i=r?.before)==null||i.call(r);let d=u.length?vh(s,this.inferStyle(t,n),u):null;return d?((a=r?.beforeAnimate)==null||a.call(r,d),d.finished.then(()=>{var e,t;(e=r?.afterAnimate)==null||e.call(r,d),(t=r?.after)==null||t.call(r),this.animations.delete(d)})):(o=r?.after)==null||o.call(r),d}).filter(Boolean);o.forEach(e=>this.animations.add(e));let s=uh(o);return s?((i=t?.beforeAnimate)==null||i.call(t,s),s.finished.then(()=>{var e,n;(e=t?.afterAnimate)==null||e.call(t,s),(n=t?.after)==null||n.call(t),this.release()})):(a=t?.after)==null||a.call(t),s}inferStyle(e,t){let{element:n,elementType:r,stage:i,originalStyle:a,updatedStyle:o={}}=e;e.modifiedStyle||=Object.assign(Object.assign({},a),o);let{modifiedStyle:s}=e,c={},l={};if(i===`enter`)Object.assign(c,{opacity:0});else if(i===`exit`)Object.assign(l,{opacity:0});else if(i===`show`)Object.assign(c,{opacity:0}),Object.assign(l,{opacity:A6(n,`opacity`)??fh(`opacity`)});else if(i===`hide`)Object.assign(c,{opacity:A6(n,`opacity`)??fh(`opacity`)}),Object.assign(l,{opacity:0});else if(i===`collapse`){let{collapse:e}=t||{},{target:i,descendants:o,position:c}=e;if(r===`node`){if(o.includes(n.id)){let[e,t,n]=c;Object.assign(l,{x:e,y:t,z:n})}}else if(r===`combo`){if(n.id===i||o.includes(n.id)){let[e,t]=c;Object.assign(l,{x:e,y:t,childrenNode:a.childrenNode})}}else r===`edge`&&Object.assign(l,{sourceNode:s.sourceNode,targetNode:s.targetNode})}else if(i===`expand`){let{expand:e}=t||{},{target:i,descendants:a,position:o}=e;if(r===`node`){if(n.id===i||a.includes(n.id)){let[e,t,n]=o;Object.assign(c,{x:e,y:t,z:n})}}else if(r===`combo`){if(n.id===i||a.includes(n.id)){let[e,t,n]=o;Object.assign(c,{x:e,y:t,z:n,childrenNode:s.childrenNode})}}else r===`edge`&&Object.assign(c,{sourceNode:s.sourceNode,targetNode:s.targetNode})}return[Object.keys(c).length>0?Object.assign({},a,c):a,Object.keys(l).length>0?Object.assign({},s,l):s]}stop(){this.animations.forEach(e=>e.cancel())}clear(){this.tasks=[]}release(){let{canvas:e}=this.context,t=e.document?.timeline?.animationsWithPromises;t&&(e.document.timeline.animationsWithPromises=t.filter(e=>e.playState!==`finished`))}destroy(){this.stop(),this.animations.clear(),this.tasks=[]}},N6=class{constructor(e){this.batchCount=0,this.context=e}emit(e){let{graph:t}=this.context;t.emit(e.type,e)}startBatch(e=!0){this.batchCount++,this.batchCount===1&&this.emit(new b6(Z.BATCH_START,{initiate:e}))}endBatch(){this.batchCount--,this.batchCount===0&&this.emit(new b6(Z.BATCH_END))}get isBatching(){return this.batchCount>0}destroy(){this.context=null}},P6=class extends Hg{constructor(e){super(e),this.currentTarget=null,this.currentTargetType=null,this.category=`behavior`,this.forwardCanvasEvents=e=>{let{target:t}=e,n=T6(t);if(!n)return;let{graph:r,canvas:i}=this.context,{type:a,element:o}=n;if(`destroyed`in o&&(nS(o)||o.destroyed))return;let{type:s,detail:c,button:l}=e,u=Object.assign(Object.assign({},e),{target:o,targetType:a,originalTarget:t});s===X.POINTER_MOVE&&(this.currentTarget!==o&&(this.currentTarget&&r.emit(`${this.currentTargetType}:${X.POINTER_LEAVE}`,Object.assign(Object.assign({},u),{type:X.POINTER_LEAVE,target:this.currentTarget,targetType:this.currentTargetType})),o&&(Object.assign(u,{type:X.POINTER_ENTER}),r.emit(`${a}:${X.POINTER_ENTER}`,u))),this.currentTarget=o,this.currentTargetType=a),s===X.CLICK&&l===2||(r.emit(`${a}:${s}`,u),r.emit(s,u)),s===X.CLICK&&c===2&&(Object.assign(u,{type:X.DBLCLICK}),r.emit(`${a}:${X.DBLCLICK}`,u),r.emit(X.DBLCLICK,u)),s===X.POINTER_DOWN&&l===2&&(Object.assign(u,{type:X.CONTEXT_MENU,preventDefault:()=>{var e;(e=i.getContainer())==null||e.addEventListener(X.CONTEXT_MENU,e=>e.preventDefault(),{once:!0})}}),r.emit(`${a}:${X.CONTEXT_MENU}`,u),r.emit(X.CONTEXT_MENU,u))},this.forwardContainerEvents=e=>{this.context.graph.emit(e.type,e)},this.forwardEvents(),this.setBehaviors(this.context.options.behaviors||[])}setBehaviors(e){this.setExtensions(e)}forwardEvents(){let e=this.context.canvas.getContainer();e&&[Xm.KEY_DOWN,Xm.KEY_UP].forEach(t=>{e.addEventListener(t,this.forwardContainerEvents)});let t=this.context.canvas.document;t&&[X.CLICK,X.DBLCLICK,X.POINTER_OVER,X.POINTER_LEAVE,X.POINTER_ENTER,X.POINTER_MOVE,X.POINTER_OUT,X.POINTER_DOWN,X.POINTER_UP,X.CONTEXT_MENU,X.DRAG_START,X.DRAG,X.DRAG_END,X.DRAG_ENTER,X.DRAG_OVER,X.DRAG_LEAVE,X.DROP,X.WHEEL].forEach(e=>{t.addEventListener(e,this.forwardCanvasEvents)})}destroy(){let e=this.context.canvas.getContainer();e&&[Xm.KEY_DOWN,Xm.KEY_UP].forEach(t=>{e.removeEventListener(t,this.forwardContainerEvents)}),this.context.canvas.document.removeAllEventListeners(),super.destroy()}},F6=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function I6(e){let{id:t=Q(e),style:n,data:r}=e,i=F6(e,[`id`,`style`,`data`]),a=Object.assign(Object.assign({},e),{style:Object.assign({},n),data:Object.assign({},r)});return Dh(e)?Object.assign({id:t,data:a},i):{id:t,data:a}}function L6(e){return e.data}function R6(e){if(e.hasTreeStructure(`tree`))return;e.attachTreeStructure(th);let t=e.getAllEdges();for(let n of t){let{source:t,target:r}=n;e.setParent(r,t,th)}}var z6=class{constructor(){this.latestRemovedComboIds=new Set,this.comboIds=new Set,this.changes=[],this.batchCount=0,this.isTraceless=!1,this.enableUpdateNodeLikeHierarchy=!0,this.model=new TS}pushChange(e){if(this.isTraceless)return;let{type:t}=e;if(t===Km.NodeUpdated||t===Km.EdgeUpdated||t===Km.ComboUpdated){let{value:n,original:r}=e;this.changes.push({value:sS(n),original:sS(r),type:t})}else this.changes.push({value:sS(e.value),type:t})}getChanges(){return this.changes}clearChanges(){this.changes=[]}batch(e){this.batchCount++,this.model.batch(e),this.batchCount--}isBatching(){return this.batchCount>0}silence(e){this.isTraceless=!0,e(),this.isTraceless=!1}isCombo(e){return this.comboIds.has(e)||this.latestRemovedComboIds.has(e)}getData(){return{nodes:this.getNodeData(),edges:this.getEdgeData(),combos:this.getComboData()}}getNodeData(e){return this.model.getAllNodes().reduce((t,n)=>{let r=L6(n);return this.isCombo(Q(r))||(e===void 0||e.includes(Q(r)))&&t.push(r),t},[])}getEdgeDatum(e){return L6(this.model.getEdge(e))}getEdgeData(e){return this.model.getAllEdges().reduce((t,n)=>{let r=L6(n);return(e===void 0||e.includes(Q(r)))&&t.push(r),t},[])}getComboData(e){return this.model.getAllNodes().reduce((t,n)=>{let r=L6(n);return this.isCombo(Q(r))&&(e===void 0||e.includes(Q(r)))&&t.push(r),t},[])}getRootsData(e=th){return this.model.getRoots(e).map(L6)}getAncestorsData(e,t){let{model:n}=this;return!n.hasNode(e)||!n.hasTreeStructure(t)?[]:n.getAncestors(e,t).map(L6)}getDescendantsData(e){let t=this.getElementDataById(e),n=[];return q_(t,e=>{e!==t&&n.push(e)},e=>this.getChildrenData(Q(e)),`TB`),n}getParentData(e,t){let{model:n}=this;if(!t){ch.warn(`The hierarchy structure key is not specified`);return}if(!n.hasNode(e)||!n.hasTreeStructure(t))return;let r=n.getParent(e,t);return r?L6(r):void 0}getChildrenData(e){let t=this.getElementType(e)===`node`?th:eh,{model:n}=this;return!n.hasNode(e)||!n.hasTreeStructure(t)?[]:n.getChildren(e,t).map(L6)}getElementsDataByType(e){return e===`node`?this.getNodeData():e===`edge`?this.getEdgeData():e===`combo`?this.getComboData():[]}getElementDataById(e){return this.getElementType(e)===`edge`?this.getEdgeDatum(e):this.getNodeLikeDatum(e)}getNodeLikeDatum(e){return L6(this.model.getNode(e))}getNodeLikeData(e){return this.model.getAllNodes().reduce((t,n)=>{let r=L6(n);return e?e.includes(Q(r))&&t.push(r):t.push(r),t},[])}getElementDataByState(e,t){return this.getElementsDataByType(e).filter(e=>e.states?.includes(t))}getElementState(e){return this.getElementDataById(e)?.states||[]}hasNode(e){return this.model.hasNode(e)&&!this.isCombo(e)}hasEdge(e){return this.model.hasEdge(e)}hasCombo(e){return this.model.hasNode(e)&&this.isCombo(e)}getRelatedEdgesData(e,t=`both`){return this.model.getRelatedEdges(e,t).map(L6)}getNeighborNodesData(e){return this.model.getNeighbors(e).map(L6)}setData(e){let{nodes:t=[],edges:n=[],combos:r=[]}=e,{nodes:i,edges:a,combos:o}=this.getData(),s=zg(i,t,e=>Q(e),cS),c=zg(a,n,e=>Q(e),cS),l=zg(o,r,e=>Q(e),cS);this.batch(()=>{let e={nodes:s.enter,edges:c.enter,combos:l.enter};this.addData(e),this.computeZIndex(e,`add`,!0);let t={nodes:s.update,edges:c.update,combos:l.update};this.updateData(t),this.computeZIndex(t,`update`,!0);let n={nodes:s.exit.map(Q),edges:c.exit.map(Q),combos:l.exit.map(Q)};this.removeData(n)})}addData(e){let{nodes:t,edges:n,combos:r}=e;this.batch(()=>{this.addComboData(r),this.addNodeData(t),this.addEdgeData(n)}),this.computeZIndex(e,`add`)}addNodeData(e=[]){e.length&&(this.model.addNodes(e.map(e=>(this.pushChange({value:e,type:Km.NodeAdded}),I6(e)))),this.updateNodeLikeHierarchy(e),this.computeZIndex({nodes:e},`add`))}addEdgeData(e=[]){e.length&&(this.model.addEdges(e.map(e=>(this.pushChange({value:e,type:Km.EdgeAdded}),I6(e)))),this.computeZIndex({edges:e},`add`))}addComboData(e=[]){if(!e.length)return;let{model:t}=this;t.hasTreeStructure(`combo`)||t.attachTreeStructure(eh),t.addNodes(e.map(e=>(this.comboIds.add(Q(e)),this.pushChange({value:e,type:Km.ComboAdded}),I6(e)))),this.updateNodeLikeHierarchy(e),this.computeZIndex({combos:e},`add`)}addChildrenData(e,t){let n=this.getNodeLikeDatum(e),r=t.map(Q);this.addNodeData(t),this.updateNodeData([{id:e,children:[...n.children||[],...r]}]),this.addEdgeData(r.map(t=>({source:e,target:t})))}computeZIndex(e,t,n=!1){!n&&this.isBatching()||this.batch(()=>{let{nodes:n=[],edges:r=[],combos:i=[]}=e;i.forEach(e=>{let n=Q(e);if(t===`add`&&hn(e.style?.zIndex)||t===`update`&&!(`combo`in e))return;let r=this.getParentData(n,eh),i=r?(r.style?.zIndex??0)+1:0;this.preventUpdateNodeLikeHierarchy(()=>{this.updateComboData([{id:n,style:{zIndex:i}}])})}),n.forEach(e=>{let n=Q(e);if(t===`add`&&hn(e.style?.zIndex)||t===`update`&&!(`combo`in e)&&!(`children`in e))return;let r=0,i=this.getParentData(n,eh);if(i)r=(i.style?.zIndex||0)+1;else{let e=this.getParentData(n,th);e&&(r=e?.style?.zIndex||0)}this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:n,style:{zIndex:r}}])})}),r.forEach(e=>{if(hn(e.style?.zIndex))return;let{id:t,source:n,target:r}=e;if(!t)t=Q(e);else{let e=this.getEdgeDatum(t);n=e.source,r=e.target}if(!n||!r)return;let i=this.getNodeLikeDatum(n)?.style?.zIndex||0,a=this.getNodeLikeDatum(r)?.style?.zIndex||0;this.updateEdgeData([{id:Q(e),style:{zIndex:Math.max(i,a)-1}}])})})}getFrontZIndex(e){let t=this.getElementType(e),n=this.getElementDataById(e),r=this.getData();if(Object.assign(r,{[`${t}s`]:r[`${t}s`].filter(t=>Q(t)!==e)}),t===`combo`&&!ev(n)){let t=new Set(this.getAncestorsData(e,eh).map(Q));r.nodes=r.nodes.filter(e=>!t.has(Q(e))),r.combos=r.combos.filter(e=>!t.has(Q(e))),r.edges=r.edges.filter(({source:e,target:n})=>!t.has(e)&&!t.has(n))}return Math.max(n.style?.zIndex||0,0,...Object.values(r).flat().map(e=>(e?.style?.zIndex||0)+1))}updateNodeLikeHierarchy(e){if(!this.enableUpdateNodeLikeHierarchy)return;let{model:t}=this;e.forEach(e=>{let n=Q(e),r=kg(e);r!==void 0&&(t.hasTreeStructure(`combo`)||t.attachTreeStructure(eh),r===null&&this.refreshComboData(n),this.setParent(n,kg(e),eh));let i=e.children||[];if(i.length){t.hasTreeStructure(`tree`)||t.attachTreeStructure(th);let e=i.filter(e=>t.hasNode(e));e.forEach(e=>this.setParent(e,n,th)),e.length!==i.length&&this.updateNodeData([{id:n,children:e}])}})}preventUpdateNodeLikeHierarchy(e){this.enableUpdateNodeLikeHierarchy=!1,e(),this.enableUpdateNodeLikeHierarchy=!0}updateData(e){let{nodes:t,edges:n,combos:r}=e;this.batch(()=>{this.updateNodeData(t),this.updateComboData(r),this.updateEdgeData(n)}),this.computeZIndex(e,`update`)}updateNodeData(e=[]){if(!e.length)return;let{model:t}=this;this.batch(()=>{let n=[];e.forEach(e=>{let r=Q(e),i=L6(t.getNode(r));if(cS(i,e))return;let a=oS(i,e);this.pushChange({value:a,original:i,type:Km.NodeUpdated}),t.mergeNodeData(r,a),n.push(a)}),this.updateNodeLikeHierarchy(n)}),this.computeZIndex({nodes:e},`update`)}refreshData(){let{nodes:e,edges:t,combos:n}=this.getData();e.forEach(e=>{this.pushChange({value:e,original:e,type:Km.NodeUpdated})}),t.forEach(e=>{this.pushChange({value:e,original:e,type:Km.EdgeUpdated})}),n.forEach(e=>{this.pushChange({value:e,original:e,type:Km.ComboUpdated})})}syncNodeLikeDatum(e){let{model:t}=this,n=Q(e);if(!t.hasNode(n))return;let r=oS(L6(t.getNode(n)),e);t.mergeNodeData(n,r)}syncEdgeDatum(e){let{model:t}=this,n=Q(e);if(!t.hasEdge(n))return;let r=oS(L6(t.getEdge(n)),e);t.mergeEdgeData(n,r)}updateEdgeData(e=[]){if(!e.length)return;let{model:t}=this;this.batch(()=>{e.forEach(e=>{let n=Q(e),r=L6(t.getEdge(n));if(cS(r,e))return;e.source&&r.source!==e.source&&t.updateEdgeSource(n,e.source),e.target&&r.target!==e.target&&t.updateEdgeTarget(n,e.target);let i=oS(r,e);this.pushChange({value:i,original:r,type:Km.EdgeUpdated}),t.mergeEdgeData(n,i)})}),this.computeZIndex({edges:e},`update`)}updateComboData(e=[]){if(!e.length)return;let{model:t}=this;t.batch(()=>{let n=[];e.forEach(e=>{let r=Q(e),i=L6(t.getNode(r));if(cS(i,e))return;let a=oS(i,e);this.pushChange({value:a,original:i,type:Km.ComboUpdated}),t.mergeNodeData(r,a),n.push(a)}),this.updateNodeLikeHierarchy(n)}),this.computeZIndex({combos:e},`update`)}setParent(e,t,n,r=!0){if(e===t)return;let i=kg(this.getNodeLikeDatum(e));if(i!==t&&n===`combo`){let n={id:e,combo:t};this.isCombo(e),this.syncNodeLikeDatum(n)}this.model.setParent(e,t,n),r&&n===`combo`&&dn([i,t]).forEach(e=>{e!==void 0&&this.refreshComboData(e)})}refreshComboData(e){let t=this.getComboData([e])[0],n=this.getAncestorsData(e,eh);t&&this.pushChange({value:t,original:t,type:Km.ComboUpdated}),n.forEach(e=>{this.pushChange({value:e,original:e,type:Km.ComboUpdated})})}getElementPosition(e){return m_(this.getElementDataById(e))}translateNodeLikeBy(e,t){this.isCombo(e)?this.translateComboBy(e,t):this.translateNodeBy(e,t)}translateNodeLikeTo(e,t){this.isCombo(e)?this.translateComboTo(e,t):this.translateNodeTo(e,t)}translateNodeBy(e,t){let n=Jg(this.getElementPosition(e),[...t,0].slice(0,3));this.translateNodeTo(e,n)}translateNodeTo(e,t){let[n=0,r=0,i=0]=t;this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:e,style:{x:n,y:r,z:i}}])})}translateComboBy(e,t){let[n=0,r=0,i=0]=t;if([n,r,i].some(isNaN)||[n,r,i].every(e=>e===0))return;let a=this.getComboData([e])[0];if(!a)return;let o=new Set;q_(a,e=>{let t=Q(e);if(o.has(t))return;o.add(t);let[a,s,c]=m_(e),l=oS(e,{style:{x:a+n,y:s+r,z:c+i}});this.pushChange({value:l,original:e,type:this.isCombo(t)?Km.ComboUpdated:Km.NodeUpdated}),this.model.mergeNodeData(t,l)},e=>this.getChildrenData(Q(e)),`BT`)}translateComboTo(e,t){if(t.some(isNaN))return;let[n=0,r=0,i=0]=t,a=this.getComboData([e])?.[0];if(!a)return;let[o,s,c]=m_(a),l=n-o,u=r-s,d=i-c;q_(a,e=>{let t=Q(e),[n,r,i]=m_(e),a=oS(e,{style:{x:n+l,y:r+u,z:i+d}});this.pushChange({value:a,original:e,type:this.isCombo(t)?Km.ComboUpdated:Km.NodeUpdated}),this.model.mergeNodeData(t,a)},e=>this.getChildrenData(Q(e)),`BT`)}removeData(e){let{nodes:t,edges:n,combos:r}=e;this.batch(()=>{this.removeEdgeData(n),this.removeNodeData(t),this.removeComboData(r),this.latestRemovedComboIds=new Set(r)})}removeNodeData(e=[]){e.length&&this.batch(()=>{e.forEach(e=>{this.removeEdgeData(this.getRelatedEdgesData(e).map(Q)),this.pushChange({value:this.getNodeData([e])[0],type:Km.NodeRemoved}),this.removeNodeLikeHierarchy(e)}),this.model.removeNodes(e)})}removeEdgeData(e=[]){e.length&&(e.forEach(e=>this.pushChange({value:this.getEdgeData([e])[0],type:Km.EdgeRemoved})),this.model.removeEdges(e))}removeComboData(e=[]){e.length&&this.batch(()=>{e.forEach(e=>{this.pushChange({value:this.getComboData([e])[0],type:Km.ComboRemoved}),this.removeNodeLikeHierarchy(e),this.comboIds.delete(e)}),this.model.removeNodes(e)})}removeNodeLikeHierarchy(e){if(this.model.hasTreeStructure(`combo`)){let t=kg(this.getNodeLikeDatum(e));this.setParent(e,void 0,eh,!1),this.model.getChildren(e,eh).forEach(e=>{let n=L6(e),r=Q(n);this.setParent(Q(n),t,eh,!1);let i=oS(n,{id:Q(n),combo:t});this.pushChange({value:i,original:n,type:this.isCombo(r)?Km.ComboUpdated:Km.NodeUpdated}),this.model.mergeNodeData(Q(n),i)}),R(t)||this.refreshComboData(t)}}getElementType(e){if(this.model.hasNode(e))return this.isCombo(e)?`combo`:`node`;if(this.model.hasEdge(e))return`edge`;throw Error(sh(`Unknown element type of id: ${e}`))}destroy(){let{model:e}=this,t=e.getAllNodes(),n=e.getAllEdges();e.removeEdges(n.map(e=>e.id)),e.removeNodes(t.map(e=>e.id)),this.context={}}},B6=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},V6=class{constructor(e){this.elementMap={},this.shapeTypeMap={},this.paletteStyle={},this.defaultStyle={},this.stateStyle={},this.visibilityCache=new WeakMap,this.context=e}init(){this.initContainer()}initContainer(){if(!this.container||this.container.destroyed){let{canvas:e}=this.context;this.container=e.appendChild(new af({className:`elements`}))}}emit(e,t){t.silence||w6(this.context.graph,e)}forEachElementData(e){K_.forEach(t=>{e(t,this.context.model.getElementsDataByType(t))})}getElementType(e,t){let{options:n,graph:r}=this.context,i=uS(t)&&n[e]?.type||t.type;return i?typeof i==`string`?i:i.call(r,t):e===`edge`?`line`:`circle`}getTheme(e){return lh(this.context.options)[e]||{}}getThemeStyle(e){return this.getTheme(e).style||{}}getThemeStateStyle(e,t){let{state:n={}}=this.getTheme(e);return Object.assign({},...t.map(e=>n[e]||{}))}computePaletteStyle(){let{options:e}=this.context;this.paletteStyle={},this.forEachElementData((t,n)=>{let r=Object.assign({},pv(this.getTheme(t)?.palette),pv(e[t]?.palette));r?.field&&Object.assign(this.paletteStyle,mv(n,r))})}getPaletteStyle(e,t){let n=this.paletteStyle[t];return n?e===`edge`?{stroke:n}:{fill:n}:{}}computeElementDefaultStyle(e,t){let{options:n}=this.context,r=n[e]?.style||{};`transform`in r&&Array.isArray(r.transform)&&(r.transform=[...r.transform]),this.defaultStyle[Q(t.datum)]=lv(r,t)}computeElementsDefaultStyle(e){let{graph:t}=this.context;this.forEachElementData((n,r)=>{let i=r.length;for(let a=0;a<i;a++){let i=r[a];(e===void 0||e.includes(Q(i)))&&this.computeElementDefaultStyle(n,{datum:i,graph:t})}})}getDefaultStyle(e){return this.defaultStyle[e]||{}}getElementState(e){try{let{model:t}=this.context;return t.getElementState(e)}catch{return[]}}getElementStateStyle(e,t,n){let{options:r}=this.context;return lv(r[e]?.state?.[t]||{},n)}computeElementStatesStyle(e,t,n){this.stateStyle[Q(n.datum)]=Object.assign({},...t.map(t=>this.getElementStateStyle(e,t,n)))}computeElementsStatesStyle(e){let{graph:t}=this.context;this.forEachElementData((n,r)=>{let i=r.length;for(let a=0;a<i;a++){let i=r[a];if(e===void 0||e.includes(Q(i))){let e=this.getElementState(Q(i));this.computeElementStatesStyle(n,e,{datum:i,graph:t})}}})}getStateStyle(e){return this.stateStyle[e]||{}}computeStyle(e,t){e&&[`translate`,`zIndex`].includes(e)||(this.computePaletteStyle(),this.computeElementsDefaultStyle(t),this.computeElementsStatesStyle(t))}getElement(e){return this.elementMap[e]}getNodes(){return this.context.model.getNodeData().map(({id:e})=>this.elementMap[e])}getEdges(){return this.context.model.getEdgeData().map(e=>this.elementMap[Q(e)])}getCombos(){return this.context.model.getComboData().map(({id:e})=>this.elementMap[e])}getElementComputedStyle(e,t){let n=Q(t),r=this.getThemeStyle(e),i=this.getPaletteStyle(e,n),a=t.style||{},o=this.getDefaultStyle(n),s=this.getThemeStateStyle(e,this.getElementState(n)),c=this.getStateStyle(n),l=uS(t)?Object.assign({},r,i,a,o,s,c):Object.assign({},a);if(e===`combo`){let e=this.context.model.getChildrenData(n),t=l.collapsed?[]:e.map(Q).filter(e=>this.getElement(e));Object.assign(l,{childrenNode:t,childrenData:e})}return l}getDrawData(e){this.init();let t=this.computeChangesAndDrawData(e);if(!t)return null;let{type:n=`draw`,stage:r=n}=e;return this.markDestroyElement(t.drawData),this.computeStyle(r),{type:n,stage:r,data:t}}draw(e={animation:!0}){let t=this.getDrawData(e);if(!t)return;let{data:{drawData:{add:n,update:r,remove:i}}}=t;return this.destroyElements(i,e),this.createElements(n,e),this.updateElements(r,e),this.setAnimationTask(e,t)}preLayoutDraw(){return B6(this,arguments,void 0,function*(e={animation:!0}){var t;let n=this.getDrawData(e);if(!n)return;let{data:{drawData:r}}=n;yield((t=this.context.layout)?.preLayout)?.call(t,r);let{add:i,update:a,remove:o}=r;return this.destroyElements(o,e),this.createElements(i,e),this.updateElements(a,e),this.setAnimationTask(e,n)})}setAnimationTask(e,t){let{animation:n,silence:r}=e,{data:{dataChanges:i,drawData:a},stage:o,type:s}=t;return this.context.animation.animate(n,r?{}:{before:()=>this.emit(new b6(Z.BEFORE_DRAW,{dataChanges:i,animation:n,stage:o,render:s===`render`}),e),beforeAnimate:t=>this.emit(new x6(Z.BEFORE_ANIMATE,qm.DRAW,t,a),e),afterAnimate:t=>this.emit(new x6(Z.AFTER_ANIMATE,qm.DRAW,t,a),e),after:()=>this.emit(new b6(Z.AFTER_DRAW,{dataChanges:i,animation:n,stage:o,render:s===`render`,firstRender:this.context.graph.rendered===!1}),e)})}computeChangesAndDrawData(e){let{model:t}=this.context,n=t.getChanges(),r=IX(n);if(r.length===0)return null;let{NodeAdded:i=[],NodeUpdated:a=[],NodeRemoved:o=[],EdgeAdded:s=[],EdgeUpdated:c=[],EdgeRemoved:l=[],ComboAdded:u=[],ComboUpdated:d=[],ComboRemoved:f=[]}=pn(r,e=>e.type),p=(e,t)=>{let n=[];return e.forEach(e=>{let r=Q(e.value);this.getElement(r)?n.push(e):t.push(e)}),n},m=p(a,i),h=p(c,s),g=p(d,u),_=e=>new Map(e.map(e=>{let t=e.value;return[Q(t),t]})),v={add:{nodes:_(i),edges:_(s),combos:_(u)},update:{nodes:_(m),edges:_(h),combos:_(g)},remove:{nodes:_(o),edges:_(l),combos:_(f)}},y=this.transformData(v,e);return t.clearChanges(),{dataChanges:n,drawData:y}}transformData(e,t){let n=this.context.transform.getTransformInstance();return Object.values(n).reduce((e,n)=>n.beforeDraw(e,t),e)}createElement(e,t,n){var r;let i=Q(t);if(this.getElement(i))return;let a=this.getElementType(e,t),o=this.getElementComputedStyle(e,t),s=ih(e,a);if(!s)return ch.warn(`The element ${a} of ${e} is not registered.`);this.emit(new S6(Z.BEFORE_ELEMENT_CREATE,e,t),n);let c=this.container.appendChild(new s({id:i,context:this.context,style:o}));this.shapeTypeMap[i]=a,this.elementMap[i]=c;let{stage:l=`enter`}=n;(r=this.context.animation)==null||r.add({element:c,elementType:e,stage:l,originalStyle:Object.assign({},c.attributes),updatedStyle:o},{after:()=>{var r;this.emit(new S6(Z.AFTER_ELEMENT_CREATE,e,t),n),(r=c.onCreate)==null||r.call(c)}})}createElements(e,t){let{nodes:n,edges:r,combos:i}=e;[[`node`,n],[`combo`,i],[`edge`,r]].forEach(([e,n])=>{n.forEach(n=>this.createElement(e,n,t))})}getUpdateStageStyle(e,t,n){let{stage:r=`update`}=n;if(r===`translate`)if(e===`node`||e===`combo`){let{style:{x:e=0,y:n=0,z:r=0}={}}=t;return{x:e,y:n,z:r}}else return{};return this.getElementComputedStyle(e,t)}updateElement(e,t,n){var r;let i=Q(t),{stage:a=`update`}=n,o=this.getElement(i);if(!o)return()=>null;this.emit(new S6(Z.BEFORE_ELEMENT_UPDATE,e,t),n);let s=this.getElementType(e,t),c=this.getUpdateStageStyle(e,t,n);this.shapeTypeMap[i]!==s&&(o.destroy(),delete this.shapeTypeMap[i],delete this.elementMap[i],this.createElement(e,t,{animation:!1,silence:!0}));let l=a===`visibility`?c.visibility===`hidden`?`hide`:`show`:a;l===`hide`&&delete c.visibility,(r=this.context.animation)==null||r.add({element:o,elementType:e,stage:l,originalStyle:Object.assign({},o.attributes),updatedStyle:c},{before:()=>{let e=this.elementMap[i];a!==`collapse`&&$x(e,c),a===`visibility`&&(j6(e,`opacity`)||k6(e,`opacity`),this.visibilityCache.set(e,l===`show`?`visible`:`hidden`),l===`show`&&Bg(e,`visible`))},after:()=>{var r;let o=this.elementMap[i];a===`collapse`&&$x(o,c),l===`hide`&&Bg(o,this.visibilityCache.get(o)),this.emit(new S6(Z.AFTER_ELEMENT_UPDATE,e,t),n),(r=o.onUpdate)==null||r.call(o)}})}updateElements(e,t){let{nodes:n,edges:r,combos:i}=e;[[`node`,n],[`combo`,i],[`edge`,r]].forEach(([e,n])=>{n.forEach(n=>this.updateElement(e,n,t))})}markDestroyElement(e){Object.values(e.remove).forEach(e=>{e.forEach(e=>{let t=Q(e),n=this.getElement(t);n&&tS(n)})})}destroyElement(e,t,n){var r;let{stage:i=`exit`}=n,a=Q(t),o=this.elementMap[a];if(!o)return()=>null;this.emit(new S6(Z.BEFORE_ELEMENT_DESTROY,e,t),n),(r=this.context.animation)==null||r.add({element:o,elementType:e,stage:i,originalStyle:Object.assign({},o.attributes),updatedStyle:{}},{after:()=>{var r;this.clearElement(a),o.destroy(),(r=o.onDestroy)==null||r.call(o),this.emit(new S6(Z.AFTER_ELEMENT_DESTROY,e,t),n)}})}destroyElements(e,t){let{nodes:n,edges:r,combos:i}=e;[[`combo`,i],[`edge`,r],[`node`,n]].forEach(([e,n])=>{n.forEach(n=>this.destroyElement(e,n,t))})}clearElement(e){delete this.paletteStyle[e],delete this.defaultStyle[e],delete this.stateStyle[e],delete this.elementMap[e],delete this.shapeTypeMap[e]}alignLayoutResultToElement(e,t){var n;let r=e.nodes?.find(e=>Q(e)===t);if(r){let i=Yg(m_(this.context.model.getNodeLikeDatum(t)),m_(r));(n=e.nodes)==null||n.forEach(e=>{e.style?.x&&(e.style.x+=i[0]),e.style?.y&&(e.style.y+=i[1]),e.style?.z&&(e.style.z+=i[2]||0)})}}syncLayoutResult(e,t){return B6(this,void 0,void 0,function*(){let{layout:n,model:r}=this.context;if(!n)return;let i=this.context.options.layout,a=yield n.simulate(i?(e=>Array.isArray(e)?e.map(e=>Object.assign(Object.assign({},e),{preLayout:!0})):Object.assign(Object.assign({},e),{preLayout:!0}))(i):void 0);t&&this.alignLayoutResultToElement(a,e),r.updateData(a)})}collapseNode(e,t){return B6(this,void 0,void 0,function*(){let{animation:n,align:r}=t;yield this.syncLayoutResult(e,r);let i=this.computeChangesAndDrawData({stage:`collapse`,animation:n});if(this.context.animation.clear(),this.computeStyle(`collapse`),!i)return;let{drawData:a}=i,{add:o,remove:s,update:c}=a;this.markDestroyElement(a);let l={animation:n,stage:`collapse`,data:a};this.destroyElements(s,l),this.createElements(o,l),this.updateElements(c,l),yield this.context.animation.animate(n,{beforeAnimate:e=>this.emit(new x6(Z.BEFORE_ANIMATE,qm.COLLAPSE,e,a),l),afterAnimate:e=>this.emit(new x6(Z.AFTER_ANIMATE,qm.COLLAPSE,e,a),l)},{collapse:{target:e,descendants:Array.from(s.nodes).map(([,e])=>Q(e)),position:m_(c.nodes.get(e))}})?.finished})}expandNode(e,t){return B6(this,void 0,void 0,function*(){let{model:n}=this.context,{animation:r,align:i}=t,a=m_(n.getNodeData([e])[0]);yield this.syncLayoutResult(e,i);let o=this.computeChangesAndDrawData({stage:`expand`,animation:r});if(this.createElements(o.drawData.add,{animation:!1,stage:`expand`,target:e}),this.context.animation.clear(),this.computeStyle(`expand`),!o)return;let{drawData:s}=o,{update:c,add:l}=s,u={animation:r,stage:`expand`,data:s};l.edges.forEach(e=>c.edges.set(Q(e),e)),l.nodes.forEach(e=>c.nodes.set(Q(e),e)),this.updateElements(c,u),yield this.context.animation.animate(r,{beforeAnimate:e=>this.emit(new x6(Z.BEFORE_ANIMATE,qm.EXPAND,e,s),u),afterAnimate:e=>this.emit(new x6(Z.AFTER_ANIMATE,qm.EXPAND,e,s),u)},{expand:{target:e,descendants:Array.from(l.nodes).map(([,e])=>Q(e)),position:a}})?.finished})}collapseCombo(e,t){return B6(this,void 0,void 0,function*(){let{model:n,element:r}=this.context;if(n.getAncestorsData(e,`combo`).some(e=>ev(e)))return;let i=r.getElement(e),a=i.getComboPosition(Object.assign(Object.assign({},i.attributes),{collapsed:!0})),o=this.computeChangesAndDrawData({stage:`collapse`,animation:t});if(!o)return;let{dataChanges:s,drawData:c}=o;this.markDestroyElement(c);let{update:l,remove:u}=c,d={animation:t,stage:`collapse`,data:c};this.destroyElements(u,d),this.updateElements(l,d);let f=e=>Array.from(e).map(([,e])=>Q(e));yield this.context.animation.animate(t,{before:()=>this.emit(new b6(Z.BEFORE_DRAW,{dataChanges:s,animation:t}),d),beforeAnimate:e=>this.emit(new x6(Z.BEFORE_ANIMATE,qm.COLLAPSE,e,c),d),afterAnimate:e=>this.emit(new x6(Z.AFTER_ANIMATE,qm.COLLAPSE,e,c),d),after:()=>this.emit(new b6(Z.AFTER_DRAW,{dataChanges:s,animation:t}),d)},{collapse:{target:e,descendants:[...f(u.nodes),...f(u.combos)],position:a}})?.finished})}expandCombo(e,t){return B6(this,void 0,void 0,function*(){let{model:n}=this.context,r=m_(n.getComboData([e])[0]);this.computeStyle(`expand`);let i=this.computeChangesAndDrawData({stage:`expand`,animation:t});if(!i)return;let{dataChanges:a,drawData:o}=i,{add:s,update:c}=o,l={animation:t,stage:`expand`,data:o,target:e};this.createElements(s,l),this.updateElements(c,l);let u=e=>Array.from(e).map(([,e])=>Q(e));yield this.context.animation.animate(t,{before:()=>this.emit(new b6(Z.BEFORE_DRAW,{dataChanges:a,animation:t}),l),beforeAnimate:e=>this.emit(new x6(Z.BEFORE_ANIMATE,qm.EXPAND,e,o),l),afterAnimate:e=>this.emit(new x6(Z.AFTER_ANIMATE,qm.EXPAND,e,o),l),after:()=>this.emit(new b6(Z.AFTER_DRAW,{dataChanges:a,animation:t}),l)},{expand:{target:e,descendants:[...u(s.nodes),...u(s.combos)],position:r}})?.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={}}},H6=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},U6=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},W6=class{get presetOptions(){return{animation:!!ph(this.context.options,!0)}}get options(){let{options:e}=this.context;return e.layout}constructor(e){this.instances=[],this.context=e}getLayoutInstance(){return this.instances}preLayout(e){return H6(this,void 0,void 0,function*(){var t,n,r;let{graph:i,model:a}=this.context,{add:o}=e;w6(i,new b6(Z.BEFORE_LAYOUT,{type:`pre`}));let s=yield this.context.layout?.simulate();(t=s?.nodes)==null||t.forEach(e=>{let t=Q(e),n=o.nodes.get(t);a.syncNodeLikeDatum(e),n&&Object.assign(n.style,e.style)}),(n=s?.edges)==null||n.forEach(e=>{let t=Q(e),n=o.edges.get(t);a.syncEdgeDatum(e),n&&Object.assign(n.style,e.style)}),(r=s?.combos)==null||r.forEach(e=>{let t=Q(e),n=o.combos.get(t);a.syncNodeLikeDatum(e),n&&Object.assign(n.style,e.style)}),w6(i,new b6(Z.AFTER_LAYOUT,{type:`pre`})),this.transformDataAfterLayout(`pre`,e)})}postLayout(){return H6(this,arguments,void 0,function*(e=this.options){if(!e)return;let t=Array.isArray(e)?e:[e],{graph:n}=this.context;w6(n,new b6(Z.BEFORE_LAYOUT,{type:`post`}));for(let e=0;e<t.length;e++){let r=t[e],i=this.getLayoutData(r),a=Object.assign(Object.assign({},this.presetOptions),r);w6(n,new b6(Z.BEFORE_STAGE_LAYOUT,{options:a,index:e}));let o=yield this.stepLayout(i,a,e);w6(n,new b6(Z.AFTER_STAGE_LAYOUT,{options:a,index:e})),r.animation||this.updateElementPosition(o,!1)}w6(n,new b6(Z.AFTER_LAYOUT,{type:`post`})),this.transformDataAfterLayout(`post`)})}transformDataAfterLayout(e,t){let n=this.context.transform.getTransformInstance();Object.values(n).forEach(n=>n.afterLayout(e,t))}simulate(){return H6(this,arguments,void 0,function*(e=this.options){if(!e)return{};let t=Array.isArray(e)?e:[e],n={};for(let e=0;e<t.length;e++){let r=t[e],i=this.getLayoutData(r);n=yield this.stepLayout(i,Object.assign(Object.assign(Object.assign({},this.presetOptions),r),{animation:!1}),e)}return n})}stepLayout(e,t,n){return H6(this,void 0,void 0,function*(){return kS(t)?yield this.treeLayout(e,t,n):yield this.graphLayout(e,t,n)})}graphLayout(e,t,n){return H6(this,void 0,void 0,function*(){let{animation:r,iterations:i=300}=t,a=this.initGraphLayout(t);if(!a)return{};if(this.instances[n]=a,this.instance=a,rT(a))return r?yield a.execute(e,{animate:!0,maxIteration:i,onTick:e=>this.updateElementPosition(e,!1)}):(a.execute(e),a.stop(),a.tick(i));let o=yield a.execute(e);return r&&(yield this.updateElementPosition(o,r)?.finished),o})}treeLayout(e,t,n){return H6(this,void 0,void 0,function*(){let{type:n,animation:r}=t,i=ih(`layout`,n);if(!i)return{};let{nodes:a=[],edges:o=[]}=e,s=new TS({nodes:a.map(e=>({id:Q(e),data:e.data||{}})),edges:o.map(e=>({id:Q(e),source:e.source,target:e.target,data:e.data||{}}))});R6(s);let c={nodes:[],edges:[]},l={nodes:[],edges:[]};s.getRoots(th).forEach(e=>{q_(e,e=>{e.children=s.getSuccessors(e.id)},e=>s.getSuccessors(e.id),`TB`);let n=i(e,t),{x:r,y:a,z:o=0}=n;q_(n,e=>{let{id:t,x:n,y:i,z:s=0}=e;c.nodes.push({id:t,style:{x:r,y:a,z:o}}),l.nodes.push({id:t,style:{x:n,y:i,z:s}})},e=>e.children,`TB`)});let u=this.inferTreeLayoutOffset(l);return G6(l,u),r&&(G6(c,u),this.updateElementPosition(c,!1),yield this.updateElementPosition(l,r)?.finished),l})}inferTreeLayoutOffset(e){var t;let[n,r]=[1/0,-1/0],[i,a]=[1/0,-1/0];(t=e.nodes)==null||t.forEach(e=>{let{x:t=0,y:o=0}=e.style||{};n=Math.min(n,t),r=Math.max(r,t),i=Math.min(i,o),a=Math.max(a,o)});let{canvas:o}=this.context,s=o.getSize(),[c,l]=o.getCanvasByViewport([0,0]),[u,d]=o.getCanvasByViewport(s);if(n>=c&&r<=u&&i>=l&&a<=d)return[0,0];let f=(c+u)/2,p=(l+d)/2;return[f-(n+r)/2,p-(i+a)/2]}stopLayout(){this.instance&&rT(this.instance)&&(this.instance.stop(),this.instance=void 0),this.animationResult&&=(this.animationResult.finish(),void 0)}getLayoutData(e){let{nodeFilter:t=()=>!0,comboFilter:n=()=>!0,preLayout:r=!1,isLayoutInvisibleNodes:i=!1}=e,{nodes:a,edges:o,combos:s}=this.context.model.getData(),{element:c,model:l}=this.context,u=e=>c.getElement(e),d=r?e=>!i&&(e.style?.visibility===`hidden`||l.getAncestorsData(e.id,`tree`).some(ev)||l.getAncestorsData(e.id,`combo`).some(ev))?!1:t(e):e=>{let n=u(Q(e));return!n||nS(n)?!1:t(e)},f=a.filter(d),p=s.filter(n),m=new Map(f.map(e=>[Q(e),e]));return p.forEach(e=>m.set(Q(e),e)),{nodes:f,edges:o.filter(({source:e,target:t})=>m.has(e)&&m.has(t)),combos:p}}initGraphLayout(e){let{element:t,viewport:n}=this.context,{type:r,animation:i,iterations:a}=e,o=U6(e,[`type`,`animation`,`iterations`]),[s,c]=n.getCanvasSize(),l=[s/2,c/2],u=e?.nodeSize??(e=>{let n=t?.getElement(e.id);return n?n.attributes.size:t?.getElementComputedStyle(`node`,e).size}),d=ih(`layout`,r);if(!d)return ch.warn(`The layout of ${r} is not registered.`);let f=new(Object.getPrototypeOf(d.prototype)===ES.prototype?d:NS(d)?PS(d,this.context):jS(d,this.context))(this.context),p={nodeSize:u,width:s,height:c,center:l};switch(f.id){case`d3-force`:case`d3-force-3d`:Object.assign(p,{center:{x:s/2,y:c/2,z:0}});break;default:break}return Wn(f.options,p,o),f}updateElementPosition(e,t){let{model:n,element:r}=this.context;return r?(n.updateData(e),r.draw({animation:t,silence:!0})):null}destroy(){this.stopLayout(),this.context={},this.instance=void 0,this.instances=[],this.animationResult=void 0}},G6=(e,t)=>{var n;let[r,i]=t;(n=e.nodes)==null||n.forEach(e=>{if(e.style){let{x:t=0,y:n=0}=e.style;e.style.x=t+r,e.style.y=n+i}else e.style={x:r,y:i}})};function K6(e){return[q6].reduce((e,t)=>t(e),e)}function q6(e){return!e.layout||Array.isArray(e.layout)||`preLayout`in e.layout||[`antv-dagre`,`combo-combined`,`compact-box`,`circular`,`concentric`,`dagre`,`fishbone`,`grid`,`indented`,`mds`,`radial`,`random`,`snake`,`dendrogram`,`mindmap`].includes(e.layout.type)&&(e.layout.preLayout=!0),e}var J6=class extends Hg{constructor(e){super(e),this.category=`plugin`,this.setPlugins(this.context.options.plugins||[])}setPlugins(e){this.setExtensions(e)}getPluginInstance(e){let t=this.extensionMap[e];if(t)return t;ch.warn(`Cannot find the plugin ${e}, will try to find it by type.`);let n=this.extensions.find(t=>t.type===e);if(n)return this.extensionMap[n.key]}},Y6=[`update-related-edges`,`collapse-expand-node`,`collapse-expand-combo`,`get-edge-actual-ends`,`arrange-draw-order`],X6=class extends Hg{constructor(e){super(e),this.category=`transform`,this.setTransforms(this.context.options.transforms||[])}getTransforms(){}setTransforms(e){this.setExtensions([...Y6.slice(0,Y6.length-1),...e,Y6[Y6.length-1]])}getTransformInstance(e){return e?this.extensionMap[e]:this.extensionMap}},Z6=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Q6=class{get padding(){return Mh(this.context.options.padding)}get paddingOffset(){let[e,t,n,r]=this.padding,[i,a,o]=[(r-t)/2,(e-n)/2,0];return[i,a,o]}constructor(e){this.landmarkCounter=0,this.context=e;let[t,n]=this.paddingOffset,{zoom:r,rotation:i,x:a=t,y:o=n}=e.options;this.transform({mode:`absolute`,scale:r,translate:[a,o],rotate:i},!1)}get camera(){let{canvas:e}=this.context;return new Proxy(e.getCamera(),{get:(t,n)=>{let r=Object.entries(e.getLayers()).filter(([e])=>![`main`].includes(e)).map(([,e])=>e.getCamera()),i=t[n];if(typeof i==`function`)return(...e)=>{let a=i.apply(t,e);return r.forEach(t=>{t[n].apply(t,e)}),a}}})}createLandmark(e){return this.camera.createLandmark(`landmark-${this.landmarkCounter++}`,e)}getAnimation(e){let t=ph(this.context.options,e);return t?Zn(Object.assign({},t),[`easing`,`duration`]):!1}getCanvasSize(){let{canvas:e}=this.context,{width:t=0,height:n=0}=e.getConfig();return[t,n]}getCanvasCenter(){let{canvas:e}=this.context,{width:t=0,height:n=0}=e.getConfig();return[t/2,n/2,0]}getViewportCenter(){let[e,t]=this.camera.getPosition();return[e,t,0]}getGraphCenter(){return this.context.graph.getViewportByCanvas(this.getCanvasCenter())}getZoom(){return this.camera.getZoom()}getRotation(){return this.camera.getRoll()}getTranslateOptions(e){let{camera:t}=this,{mode:n,translate:r=[]}=e,i=this.getZoom(),a=t.getPosition(),o=t.getFocalPoint(),[s,c]=this.getCanvasCenter(),[l=0,u=0,d=0]=r,f=Zg([-l,-u,-d],i);return n===`relative`?{position:Jg(a,f),focalPoint:Jg(o,f)}:{position:Jg([s,c,a[2]],f),focalPoint:Jg([s,c,o[2]],f)}}getRotateOptions(e){let{mode:t,rotate:n=0}=e;return{roll:t===`relative`?this.camera.getRoll()+n:n}}getZoomOptions(e){let{zoomRange:t}=this.context.options,n=this.camera.getZoom(),{mode:r,scale:i=1}=e;return mn(r===`relative`?n*i:i,...t)}transform(e,t){return Z6(this,void 0,void 0,function*(){let{graph:n}=this.context,{translate:r,rotate:i,scale:a,origin:o}=e;this.cancelAnimation();let s=this.getAnimation(t);if(w6(n,new C6(Z.BEFORE_TRANSFORM,e)),!i&&a&&!r&&o&&!s){this.camera.setZoomByViewportPoint(this.getZoomOptions(e),o),w6(n,new C6(Z.AFTER_TRANSFORM,e));return}let c={};if(r&&Object.assign(c,this.getTranslateOptions(e)),hn(i)&&Object.assign(c,this.getRotateOptions(e)),hn(a)&&Object.assign(c,{zoom:this.getZoomOptions(e)}),s)return w6(n,new x6(Z.BEFORE_ANIMATE,qm.TRANSFORM,null,e)),new Promise(t=>{this.transformResolver=t,this.camera.gotoLandmark(this.createLandmark(c),Object.assign(Object.assign({},s),{onfinish:()=>{w6(n,new x6(Z.AFTER_ANIMATE,qm.TRANSFORM,null,e)),w6(n,new C6(Z.AFTER_TRANSFORM,e)),this.transformResolver=void 0,t()}}))});this.camera.gotoLandmark(this.createLandmark(c),{duration:0}),w6(n,new C6(Z.AFTER_TRANSFORM,e))})}fitView(e,t){return Z6(this,void 0,void 0,function*(){let[n,r,i,a]=this.padding,{when:o=`always`,direction:s=`both`}=e||{},[c,l]=this.context.canvas.getSize(),u=c-a-r,d=l-n-i,f=this.context.canvas.getBounds(),[p,m]=Ih(this.getBBoxInViewport(f));if(o===`overflow`&&!(s===`x`&&p>=u||s===`y`&&m>=d||s===`both`&&p>=u&&m>=d))return yield this.fitCenter({animation:t});let h=u/p,g=d/m,_=s===`x`?h:s===`y`?g:Math.min(h,g),v=this.getAnimation(t);Number.isFinite(_)&&(yield this.transform({mode:`relative`,scale:_,translate:Jg(Yg(this.getCanvasCenter(),this.getBBoxInViewport(f).center),Zg(this.paddingOffset,_))},v))})}fitCenter(e){return Z6(this,void 0,void 0,function*(){let t=this.context.canvas.getBounds();yield this.focus(t,e)})}focusElements(e){return Z6(this,arguments,void 0,function*(e,t={}){let{element:n}=this.context;if(!n)return;let r=e=>t.shapes?e.getShape(t.shapes).getRenderBounds():e.getRenderBounds(),i=Bh(e.map(e=>r(n.getElement(e))));yield this.focus(i,t)})}focus(e,t){return Z6(this,void 0,void 0,function*(){let n=this.context.graph.getViewportByCanvas(e.center),r=Yg(t.position||this.getCanvasCenter(),n);yield this.transform({mode:`relative`,translate:Jg(r,this.paddingOffset)},t.animation)})}getBBoxInViewport(e){let{min:t,max:n}=e,{graph:r}=this.context,[i,a]=r.getViewportByCanvas(t),[o,s]=r.getViewportByCanvas(n),c=new ja;return c.setMinMax([i,a,0],[o,s,0]),c}isInViewport(e,t=!1,n=0){let{graph:r}=this.context,i=this.getCanvasSize(),[a,o]=r.getCanvasByViewport([0,0]),[s,c]=r.getCanvasByViewport(i),l=new ja;return l.setMinMax([a,o,0],[s,c,0]),n&&(l=zh(l,n)),Ah(e)?Hh(e,l):t?Vh(e,l):l.intersects(e)}cancelAnimation(){var e;this.camera.landmarks?.length&&this.camera.cancelLandmarkAnimation(),(e=this.transformResolver)==null||e.call(this)}},$6=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},e8=class e extends bS{constructor(t){var n;super(),this.options={},this.rendered=!1,this.destroyed=!1,this.context={model:new z6},this.isCollapsingExpanding=!1,this.onResize=Ln(()=>{this.resize()},300),this._setOptions(Object.assign({},e.defaultOptions,t),!0),this.context.graph=this,this.options.autoResize&&((n=globalThis.addEventListener)==null||n.call(globalThis,`resize`,this.onResize))}getOptions(){return this.options}setOptions(e){this._setOptions(e,!1)}_setOptions(e,t){if(this.updateCanvas(e),Object.assign(this.options,K6(e)),t){let{data:t}=e;t&&this.addData(t);return}let{behaviors:n,combo:r,data:i,edge:a,layout:o,node:s,plugins:c,theme:l,transforms:u}=e;n&&this.setBehaviors(n),i&&this.setData(i),s&&this.setNode(s),a&&this.setEdge(a),r&&this.setCombo(r),o&&this.setLayout(o),l&&this.setTheme(l),c&&this.setPlugins(c),u&&this.setTransforms(u)}getSize(){return this.context.canvas?this.context.canvas.getSize():[this.options.width||0,this.options.height||0]}setSize(e,t){e&&(this.options.width=e),t&&(this.options.height=t),this.resize(e,t)}setZoomRange(e){this.options.zoomRange=e}getZoomRange(){return this.options.zoomRange}setNode(e){this.options.node=e,this.context.model.refreshData()}setEdge(e){this.options.edge=e,this.context.model.refreshData()}setCombo(e){this.options.combo=e,this.context.model.refreshData()}getTheme(){return this.options.theme}setTheme(e){this.options.theme=L(e)?e(this.getTheme()):e}setLayout(e){this.options.layout=L(e)?e(this.getLayout()):e}getLayout(){return this.options.layout}setBehaviors(e){var t;this.options.behaviors=L(e)?e(this.getBehaviors()):e,(t=this.context.behavior)==null||t.setBehaviors(this.options.behaviors)}updateBehavior(e){this.setBehaviors(t=>t.map(t=>typeof t==`object`&&t.key===e.key?Object.assign(Object.assign({},t),e):t))}getBehaviors(){return this.options.behaviors||[]}setPlugins(e){var t;this.options.plugins=L(e)?e(this.getPlugins()):e,(t=this.context.plugin)==null||t.setPlugins(this.options.plugins)}updatePlugin(e){this.setPlugins(t=>t.map(t=>typeof t==`object`&&t.key===e.key?Object.assign(Object.assign({},t),e):t))}getPlugins(){return this.options.plugins||[]}getPluginInstance(e){return this.context.plugin.getPluginInstance(e)}setTransforms(e){var t;this.options.transforms=L(e)?e(this.getTransforms()):e,(t=this.context.transform)==null||t.setTransforms(this.options.transforms)}updateTransform(e){this.setTransforms(t=>t.map(t=>typeof t==`object`&&t.key===e.key?Object.assign(Object.assign({},t),e):t)),this.context.model.refreshData()}getTransforms(){return this.options.transforms||[]}getData(){return this.context.model.getData()}hasNode(e){return this.context.model.hasNode(e)}hasEdge(e){return this.context.model.hasEdge(e)}hasCombo(e){return this.context.model.hasCombo(e)}getElementData(e){return Array.isArray(e)?e.map(e=>this.context.model.getElementDataById(e)):this.context.model.getElementDataById(e)}getNodeData(e){return e===void 0?this.context.model.getNodeData():Array.isArray(e)?this.context.model.getNodeData(e):this.context.model.getNodeLikeDatum(e)}getEdgeData(e){return e===void 0?this.context.model.getEdgeData():Array.isArray(e)?this.context.model.getEdgeData(e):this.context.model.getEdgeDatum(e)}getComboData(e){return e===void 0?this.context.model.getComboData():Array.isArray(e)?this.context.model.getComboData(e):this.context.model.getNodeLikeDatum(e)}setData(e){this.context.model.setData(L(e)?e(this.getData()):e)}addData(e){this.context.model.addData(L(e)?e(this.getData()):e)}addNodeData(e){this.context.model.addNodeData(L(e)?e(this.getNodeData()):e)}addEdgeData(e){this.context.model.addEdgeData(L(e)?e(this.getEdgeData()):e)}addComboData(e){this.context.model.addComboData(L(e)?e(this.getComboData()):e)}addChildrenData(e,t){this.context.model.addChildrenData(e,t)}updateData(e){this.context.model.updateData(L(e)?e(this.getData()):e)}updateNodeData(e){this.context.model.updateNodeData(L(e)?e(this.getNodeData()):e)}updateEdgeData(e){this.context.model.updateEdgeData(L(e)?e(this.getEdgeData()):e)}updateComboData(e){this.context.model.updateComboData(L(e)?e(this.getComboData()):e)}removeData(e){this.context.model.removeData(L(e)?e(this.getData()):e)}removeNodeData(e){this.context.model.removeNodeData(L(e)?e(this.getNodeData()):e)}removeEdgeData(e){this.context.model.removeEdgeData(L(e)?e(this.getEdgeData()):e)}removeComboData(e){this.context.model.removeComboData(L(e)?e(this.getComboData()):e)}getElementType(e){return this.context.model.getElementType(e)}getRelatedEdgesData(e,t=`both`){return this.context.model.getRelatedEdgesData(e,t)}getNeighborNodesData(e){return this.context.model.getNeighborNodesData(e)}getAncestorsData(e,t){return this.context.model.getAncestorsData(e,t)}getParentData(e,t){return this.context.model.getParentData(e,t)}getChildrenData(e){return this.context.model.getChildrenData(e)}getDescendantsData(e){return this.context.model.getDescendantsData(e)}getElementDataByState(e,t){return this.context.model.getElementDataByState(e,t)}initCanvas(){return $6(this,void 0,void 0,function*(){if(this.context.canvas)return yield this.context.canvas.ready;let{container:e=`container`,width:t,height:n,renderer:r,cursor:i,background:a,canvas:o,devicePixelRatio:s=globalThis.devicePixelRatio??1}=this.options;if(e instanceof p6)this.context.canvas=e,i&&e.setCursor(i),r&&e.setRenderer(r),yield e.ready;else{let c=un(e)?document.getElementById(e):e,l=v6(c);this.emit(Z.BEFORE_CANVAS_INIT,{container:c,width:t,height:n});let u=new p6(Object.assign(Object.assign({},o),{container:c,width:t||l[0],height:n||l[1],background:a,renderer:r,cursor:i,devicePixelRatio:s}));this.context.canvas=u,yield u.ready,this.emit(Z.AFTER_CANVAS_INIT,{canvas:u})}})}updateCanvas(e){let{renderer:t,cursor:n,height:r,width:i}=e,a=this.context.canvas;a&&(t&&(this.emit(Z.BEFORE_RENDERER_CHANGE,{renderer:this.options.renderer}),a.setRenderer(t),this.emit(Z.AFTER_RENDERER_CHANGE,{renderer:t})),n&&a.setCursor(n),(hn(i)||hn(r))&&this.setSize(i??this.options.width??0,r??this.options.height??0))}initRuntime(){this.context.options=this.options,this.context.batch||(this.context.batch=new N6(this.context)),this.context.plugin||(this.context.plugin=new J6(this.context)),this.context.viewport||(this.context.viewport=new Q6(this.context)),this.context.transform||(this.context.transform=new X6(this.context)),this.context.element||(this.context.element=new V6(this.context)),this.context.animation||(this.context.animation=new M6(this.context)),this.context.layout||(this.context.layout=new W6(this.context)),this.context.behavior||(this.context.behavior=new P6(this.context))}prepare(){return $6(this,void 0,void 0,function*(){if(yield Promise.resolve(),this.destroyed){console.error(sh(`The graph instance has been destroyed`));return}yield this.initCanvas(),this.initRuntime()})}render(){return $6(this,void 0,void 0,function*(){if(yield this.prepare(),w6(this,new b6(Z.BEFORE_RENDER)),!this.options.layout){let e=this.context.element.draw({type:`render`});yield Promise.all([e?.finished,this.autoFit()])}else if(!this.rendered&&AS(this.options.layout)){let e=yield this.context.element.preLayoutDraw({type:`render`});yield Promise.all([e?.finished,this.autoFit()])}else{let e=this.context.element.draw({type:`render`});yield Promise.all([e?.finished,this.context.layout.postLayout()]),yield this.autoFit()}this.rendered=!0,w6(this,new b6(Z.AFTER_RENDER))})}draw(){return $6(this,void 0,void 0,function*(){yield this.prepare(),yield this.context.element.draw()?.finished})}layout(e){return $6(this,void 0,void 0,function*(){yield this.context.layout.postLayout(e)})}stopLayout(){this.context.layout.stopLayout()}clear(){return $6(this,void 0,void 0,function*(){let{model:e,element:t}=this.context;e.setData({}),e.clearChanges(),t?.clear()})}destroy(){var e;w6(this,new b6(Z.BEFORE_DESTROY));let{layout:t,animation:n,element:r,model:i,canvas:a,behavior:o,plugin:s}=this.context;s?.destroy(),o?.destroy(),t?.destroy(),n?.destroy(),r?.destroy(),i.destroy(),a?.destroy(),this.options={},this.context={},this.off(),(e=globalThis.removeEventListener)==null||e.call(globalThis,`resize`,this.onResize),this.destroyed=!0,w6(this,new b6(Z.AFTER_DESTROY))}getCanvas(){return this.context.canvas}resize(e,t){let n=v6(this.context.canvas?.getContainer()),r=[e||n[0],t||n[1]];this.context.canvas&&(qn(r,this.context.canvas.getSize())||(w6(this,new b6(Z.BEFORE_SIZE_CHANGE,{size:r})),this.context.canvas.resize(...r),w6(this,new b6(Z.AFTER_SIZE_CHANGE,{size:r}))))}fitView(e,t){return $6(this,void 0,void 0,function*(){yield this.context.viewport?.fitView(e,t)})}fitCenter(e){return $6(this,void 0,void 0,function*(){yield this.context.viewport?.fitCenter({animation:e})})}autoFit(){return $6(this,void 0,void 0,function*(){let{autoFit:e}=this.context.options;if(e)if(un(e))e===`view`?yield this.fitView():e===`center`&&(yield this.fitCenter());else{let{type:t,animation:n}=e;t===`view`?yield this.fitView(e.options,n):t===`center`&&(yield this.fitCenter(n))}})}focusElement(e,t){return $6(this,void 0,void 0,function*(){yield this.context.viewport?.focusElements(Array.isArray(e)?e:[e],{animation:t})})}zoomBy(e,t,n){return $6(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`relative`,scale:e,origin:n},t)})}zoomTo(e,t,n){return $6(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`absolute`,scale:e,origin:n},t)})}getZoom(){return this.context.viewport.getZoom()}rotateBy(e,t,n){return $6(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`relative`,rotate:e,origin:n},t)})}rotateTo(e,t,n){return $6(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`absolute`,rotate:e,origin:n},t)})}getRotation(){return this.context.viewport.getRotation()}translateBy(e,t){return $6(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`relative`,translate:e},t)})}translateTo(e,t){return $6(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`absolute`,translate:e},t)})}getPosition(){return Yg([0,0],this.getCanvasByViewport([0,0]))}translateElementBy(e,t){return $6(this,arguments,void 0,function*(e,t,n=!0){let[r,i]=$t(e)?[e,t??!0]:[{[e]:t},n];Object.entries(r).forEach(([e,t])=>this.context.model.translateNodeLikeBy(e,t)),yield this.context.element.draw({animation:i,stage:`translate`})?.finished})}translateElementTo(e,t){return $6(this,arguments,void 0,function*(e,t,n=!0){let[r,i]=$t(e)?[e,t??!0]:[{[e]:t},n];Object.entries(r).forEach(([e,t])=>this.context.model.translateNodeLikeTo(e,t)),yield this.context.element.draw({animation:i,stage:`translate`})?.finished})}getElementPosition(e){return this.context.model.getElementPosition(e)}getElementRenderStyle(e){return Qn(this.context.element.getElement(e).attributes,[`context`])}setElementVisibility(e,t){return $6(this,arguments,void 0,function*(e,t,n=!0){let[r,i]=$t(e)?[e,t??!0]:[{[e]:t},n],a={nodes:[],edges:[],combos:[]};Object.entries(r).forEach(([e,t])=>{a[`${this.getElementType(e)}s`].push({id:e,style:{visibility:t}})});let{model:o,element:s}=this.context;o.preventUpdateNodeLikeHierarchy(()=>{o.updateData(a)}),yield s.draw({animation:i,stage:`visibility`})?.finished})}showElement(e,t){return $6(this,void 0,void 0,function*(){let n=Array.isArray(e)?e:[e];yield this.setElementVisibility(Object.fromEntries(n.map(e=>[e,`visible`])),t)})}hideElement(e,t){return $6(this,void 0,void 0,function*(){let n=Array.isArray(e)?e:[e];yield this.setElementVisibility(Object.fromEntries(n.map(e=>[e,`hidden`])),t)})}getElementVisibility(e){return this.context.element.getElement(e)?.style?.visibility??`visible`}setElementZIndex(e,t){return $6(this,void 0,void 0,function*(){let n={nodes:[],edges:[],combos:[]},r=$t(e)?e:{[e]:t};Object.entries(r).forEach(([e,t])=>{n[`${this.getElementType(e)}s`].push({id:e,style:{zIndex:t}})});let{model:i,element:a}=this.context;i.preventUpdateNodeLikeHierarchy(()=>i.updateData(n)),yield a.draw({animation:!1,stage:`zIndex`})?.finished})}frontElement(e){return $6(this,void 0,void 0,function*(){let t=Array.isArray(e)?e:[e],{model:n}=this.context,r={};t.map(e=>{let t=n.getFrontZIndex(e);if(n.getElementType(e)===`combo`){let i=n.getAncestorsData(e,`combo`).at(-1)||this.getComboData(e),a=[i,...n.getDescendantsData(Q(i))],o=t-E6(i);a.forEach(e=>{r[Q(e)]=this.getElementZIndex(Q(e))+o});let{internal:s}=Yb(a.map(Q),e=>n.getRelatedEdgesData(e));s.forEach(e=>{let t=Q(e);r[t]=this.getElementZIndex(t)+o})}else r[e]=t}),yield this.setElementZIndex(r)})}getElementZIndex(e){return E6(this.context.model.getElementDataById(e))}setElementState(e,t){return $6(this,arguments,void 0,function*(e,t,n=!0){let[r,i]=$t(e)?[e,t??!0]:[{[e]:t},n],a=e=>e?Array.isArray(e)?e:[e]:[],o={nodes:[],edges:[],combos:[]};Object.entries(r).forEach(([e,t])=>{o[`${this.getElementType(e)}s`].push({id:e,states:a(t)})}),this.updateData(o),yield this.context.element.draw({animation:i,stage:`state`})?.finished})}getElementState(e){return this.context.model.getElementState(e)}getElementRenderBounds(e){return this.context.element.getElement(e).getRenderBounds()}collapseElement(e){return $6(this,arguments,void 0,function*(e,t=!0){let{model:n,element:r}=this.context;if(ev(n.getNodeLikeData([e])[0])||this.isCollapsingExpanding)return;typeof t==`boolean`&&(t={animation:t,align:!1});let i=n.getElementType(e);yield this.frontElement(e),this.isCollapsingExpanding=!0,n.updateData(i===`node`?{nodes:[{id:e,style:{collapsed:!0}}]}:{combos:[{id:e,style:{collapsed:!0}}]}),i===`node`?yield r.collapseNode(e,t):i===`combo`&&(yield r.collapseCombo(e,!!t.animation)),this.isCollapsingExpanding=!1})}expandElement(e){return $6(this,arguments,void 0,function*(e,t=!0){let{model:n,element:r}=this.context;if(!ev(n.getNodeLikeData([e])[0])||this.isCollapsingExpanding)return;typeof t==`boolean`&&(t={animation:t,align:!1});let i=n.getElementType(e);this.isCollapsingExpanding=!0,n.updateData(i===`node`?{nodes:[{id:e,style:{collapsed:!1}}]}:{combos:[{id:e,style:{collapsed:!1}}]}),i===`node`?yield r.expandNode(e,t):i===`combo`&&(yield r.expandCombo(e,!!t.animation)),this.isCollapsingExpanding=!1})}setElementCollapsibility(e,t){let n=this.getElementType(e);n===`node`?this.updateNodeData([{id:e,style:{collapsed:t}}]):n===`combo`&&this.updateComboData([{id:e,style:{collapsed:t}}])}toDataURL(){return $6(this,arguments,void 0,function*(e={}){return this.context.canvas.toDataURL(e)})}getCanvasByViewport(e){return this.context.canvas.getCanvasByViewport(e)}getViewportByCanvas(e){return this.context.canvas.getViewportByCanvas(e)}getClientByCanvas(e){return this.context.canvas.getClientByCanvas(e)}getCanvasByClient(e){return this.context.canvas.getCanvasByClient(e)}getViewportCenter(){return this.context.viewport.getViewportCenter()}getCanvasCenter(){return this.context.viewport.getCanvasCenter()}on(e,t,n){return super.on(e,t,n)}once(e,t){return super.once(e,t)}off(e,t){return super.off(e,t)}};e8.defaultOptions={autoResize:!1,theme:`light`,rotation:0,zoom:1,zoomRange:[.01,10]};var t8=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function n8(e,t){let{getNodeData:n=(e,t)=>{if(e.depth=t,!e.children)return e;let{children:n}=e,r=t8(e,[`children`]);return Object.assign(Object.assign({},r),{children:n.map(e=>e.id)})},getEdgeData:r=(e,t)=>({source:e.id,target:t.id}),getChildren:i=e=>e.children||[]}=t||{},a=[],o=[];return q_(e,(e,t)=>{a.push(n(e,t));let s=i(e);for(let t of s)o.push(r(e,t))},e=>i(e),`TB`),{nodes:a,edges:o}}var r8=class extends Q3{beforeDraw(e){let{add:t,update:n}=e,{model:r}=this.context;return[...t.edges.entries(),...n.edges.entries()].forEach(([,e])=>{i8(r,e)}),e}},i8=(e,t)=>{let{source:n,target:r}=t,i=e.getElementDataById(n),a=e.getElementDataById(r),o=Xb(i,t=>e.getParentData(t,eh)),s=Xb(a,t=>e.getParentData(t,eh)),c={sourceNode:Q(o),targetNode:Q(s)};return t.style?Object.assign(t.style,c):t.style=c,t},a8=(e,t,n)=>{let[r,i]=t,[a,o]=n;return i===r?a:a+(e-r)/(i-r)*(o-a)},o8=(e,t,n)=>{let[r,i]=t,[a,o]=n;return a+Math.log(e-r+1)/Math.log(i-r+1)*(o-a)},s8=(e,t,n,r=2)=>{let[i,a]=t,[o,s]=n;return o+((e-i)/(a-i))**+r*(s-o)},c8=(e,t,n)=>{let[r,i]=t,[a,o]=n;return a+Math.sqrt((e-r)/(i-r))*(o-a)},l8=class e extends Q3{constructor(t,n){super(t,Wn({},e.defaultOptions,n)),this.assignSizeByCentrality=(e,t,n,r,i,a)=>{let o=[t,n],s=[r[0],i[0]],c=[r[1],i[1]],l=[r[2],i[2]],u=(e,t)=>{if(typeof a==`function`)return a(e,o,t);switch(a){case`linear`:return a8(e,o,t);case`log`:return o8(e,o,t);case`pow`:return s8(e,o,t,2);case`sqrt`:return c8(e,o,t);default:return t[0]}};return[u(e,s),u(e,c),u(e,l)]}}beforeDraw(e){let{model:t}=this.context,n=t.getNodeData(),r=sv(this.options.maxSize),i=sv(this.options.minSize),a=this.getCentralities(this.options.centrality),o=a.size>0?Math.max(...a.values()):0,s=a.size>0?Math.min(...a.values()):0;return n.forEach(t=>{let n=this.assignSizeByCentrality(a.get(Q(t))||0,s,o,i,r,this.options.scale),c=this.context.element?.getElement(Q(t)),l={size:n};this.assignLabelStyle(l,n,t,c),(!c||!t6(l,c.attributes))&&e6(e,c?`update`:`add`,`node`,Wn(t,{style:l}),!0)}),e}assignLabelStyle(e,t,n,r){let i=r?r.config.style:this.context.element?.getElementComputedStyle(`node`,n);if(Object.assign(e,Zn(i,[`labelFontSize`,`labelLineHeight`])),this.options.mapLabelSize){let n=this.getLabelSizeByNodeSize(t,1/0,Number(e.labelFontSize));Object.assign(e,{labelFontSize:n,labelLineHeight:n+Nh(e.labelPadding)})}return e}getLabelSizeByNodeSize(e,t,n){let r=Math.min(...e)/2,[i,a]=Array.isArray(this.options.mapLabelSize)?this.options.mapLabelSize:[n,t];return Math.min(a,Math.max(r,i))}getCentralities(e){let{model:t}=this.context,n=t.getData();return typeof e==`function`?e(n):jg(n,t.getRelatedEdgesData.bind(t),e)}};l8.defaultOptions={centrality:{type:`degree`},maxSize:80,minSize:20,scale:`linear`,mapLabelSize:!1};var u8=class e extends Q3{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n))}get ref(){return this.context.model.getRootsData()[0]}afterLayout(){var e;let t=m_(this.ref),{graph:n,model:r}=this.context;(e=r.getData().nodes)==null||e.forEach(e=>{if(Q(e)===Q(this.ref))return;let i=l_(Yg(m_(e),t)),a=Math.abs(i)>Math.PI/2,o=!e.children||e.children.length===0,s=Q(e),c=this.context.element?.getElement(s);if(!c||!c.isVisible())return;let l=sv(n.getElementRenderStyle(s).size)[0]/2,u=(o?1:-1)*(l+this.options.offset),d=[[`translate`,u*Math.cos(i),u*Math.sin(i)],[`rotate`,a?Ga(i)+180:Ga(i)]];r.updateNodeData([{id:Q(e),style:{labelTextAlign:a===o?`right`:`left`,labelTextBaseline:`middle`,labelTransform:d}}])}),n.draw()}};u8.defaultOptions={offset:5};var d8=`quadratic`,f8=35,p8=50,m8=[`top`,`top-right`,`right`,`right-bottom`,`bottom`,`bottom-left`,`left`,`left-top`],h8=class e extends Q3{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.cacheMergeStyle=new Map,this.getAffectedParallelEdges=e=>{let{add:{edges:t},update:{nodes:n,edges:r,combos:i},remove:{edges:a}}=e,{model:o}=this.context,s=new Map,c=(e,t)=>{o.getRelatedEdgesData(t).forEach(e=>!s.has(Q(e))&&s.set(Q(e),e))};n.forEach(c),i.forEach(c);let l=t=>{let n=new Set(e.remove.edges.keys());_8(t,o.getEdgeData().filter(e=>!n.has(Q(e))).map(e=>i8(o,e)),!0).forEach(e=>{let t=Q(e);s.has(t)||s.set(t,e)})};if(a.size&&a.forEach(l),t.size&&t.forEach(l),r.size){let e=LX(IX(o.getChanges())).update.edges;r.forEach(t=>{l(t);let n=e.find(e=>Q(e.value)===Q(t))?.original;n&&!v8(t,n)&&l(n)})}Kn(this.options.edges)||s.forEach((e,t)=>!this.options.edges.includes(t)&&s.delete(t));let u=o.getEdgeData().map(Q);return new Map([...s].sort((e,t)=>u.indexOf(e[0])-u.indexOf(t[0])))},this.applyBundlingStyle=(e,t,n)=>{let{edgeMap:r,reverses:i}=g8(t),a=this.options.loopMode??`spread`,o=this.options.loopDistance??n,s=new Map;r.forEach(t=>{t.forEach((t,r,c)=>{let l=c.length,u=t.style||{};if(t.source===t.target)if(a===`nested`){let e=u.loopPlacement||`top`,n=`${t.source}-${e}`;if(u.loopPlacement=e,u.loopDist===void 0){let e=s.get(n)??0;u.loopDist=f8+e*o,s.set(n,e+1)}}else{let e=m8.length;u.loopPlacement=m8[r%e],u.loopDist=Math.floor(r/e)*n+p8}else if(l===1)u.curveOffset=0;else{let e=(r%2==0?1:-1)*(i[`${t.source}|${t.target}|${r}`]?-1:1);u.curveOffset=l%2==1?e*Math.ceil(r/2)*n*2:e*(Math.floor(r/2)*n*2+n)}let d=Object.assign(t,{type:d8,style:u}),f=this.context.element?.getElement(Q(t));(!f||!t6(d.style,f.attributes))&&e6(e,f?`update`:`add`,`edge`,d,!0)})})},this.resetEdgeStyle=e=>{let t=e.style||{},n=this.cacheMergeStyle.get(Q(e))||{};return Object.keys(n).forEach(r=>{qn(t[r],n[r])&&(e[r]?t[r]=e[r]:delete t[r])}),Object.assign(e,{style:t})},this.applyMergingStyle=(e,t)=>{let{edgeMap:n,reverses:r}=g8(t);n.forEach(t=>{if(t.length===1){let n=t[0],r=this.context.element?.getElement(Q(n)),i=this.resetEdgeStyle(n);(!r||!t6(i,r.attributes))&&e6(e,r?`update`:`add`,`edge`,i);return}let n=t.map(({source:e,target:t,style:n={}},i)=>{let{startArrow:a,endArrow:o}=n,s={},[c,l]=r[`${e}|${t}|${i}`]?[`endArrow`,`startArrow`]:[`startArrow`,`endArrow`];return Dn(a)&&(s[c]=a),Dn(o)&&(s[l]=o),s}).reduce((e,t)=>Object.assign(Object.assign({},e),t),{});t.forEach((t,r,i)=>{if(r!==0){e6(e,`remove`,`edge`,t);return}let a=Object.assign({},L(this.options.style)?this.options.style(i):this.options.style,{childrenData:i});this.cacheMergeStyle.set(Q(t),a);let o=Object.assign(Object.assign({},t),{type:`line`,style:Object.assign(Object.assign(Object.assign({},t.style),n),a)}),s=this.context.element?.getElement(Q(t));(!s||!t6(o.style,s.attributes))&&e6(e,s?`update`:`add`,`edge`,o,!0)})})}}beforeDraw(e){let t=this.getAffectedParallelEdges(e);return t.size===0||(this.options.mode===`bundle`?this.applyBundlingStyle(e,t,this.options.distance):this.applyMergingStyle(e,t)),e}};h8.defaultOptions={mode:`bundle`,distance:15,loopMode:`spread`,loopDistance:15};var g8=e=>{let t=new Map,n=new Set,r={},i=new Map;for(let[a,o]of e){if(n.has(a))continue;let{source:s,target:c}=o,l=`${s}-${c}`;t.has(l)||(t.set(l,[]),i.set(l,new Set));let u=t.get(l),d=i.get(l);u&&d&&!d.has(a)&&(u.push(o),d.add(a),n.add(a));for(let[u,d]of e)if(!(n.has(u)||u===a)&&v8(o,d)){let e=t.get(l),a=i.get(l);e&&a&&!a.has(u)&&(e.push(d),a.add(u),s===d.target&&c===d.source&&(r[`${d.source}|${d.target}|${e.length-1}`]=!0),n.add(u))}}return{edgeMap:t,reverses:r}},_8=(e,t,n)=>t.filter(t=>(n||Q(t)!==Q(e))&&v8(t,e)),v8=(e,t)=>{let{sourceNode:n,targetNode:r}=e.style||{},{sourceNode:i,targetNode:a}=t.style||{};return n===i&&r===a||n===a&&r===i},y8={animation:{"combo-collapse":Th,"combo-expand":Eh,"node-collapse":xh,"node-expand":Sh,"path-in":Ch,"path-out":wh,fade:yh,translate:bh},behavior:{"brush-select":U_,"click-select":$_,"collapse-expand":iS,"create-edge":mS,"drag-canvas":gS,"drag-element-force":RS,"drag-element":vS,"fix-element-size":BS,"focus-element":HS,"hover-activate":US,"lasso-select":WS,"auto-adapt-label":Gg,"optimize-viewport-transform":GS,"scroll-canvas":qS,"zoom-canvas":YS},combo:{circle:_b,rect:vb},edge:{cubic:cx,line:fx,polyline:Ex,quadratic:Dx,"cubic-horizontal":lx,"cubic-radial":ux,"cubic-vertical":dx},layout:{"antv-dagre":ID,"combo-combined":HJ,"compact-box":gC,"d3-force":wk,"force-atlas2":Vq,circular:KD,concentric:JD,dagre:cq,dendrogram:CC,fishbone:GJ,force:Fq,fruchterman:Gq,grid:qq,indented:kC,mds:SJ,mindmap:IC,radial:jJ,random:IJ,snake:XJ},node:{circle:Gv,diamond:qv,ellipse:ey,hexagon:ty,html:lb,image:db,rect:fb,star:pb,donut:Yv,triangle:mb},palette:{spectral:QJ,tableau:$J,oranges:eY,greens:tY,blues:nY},theme:{dark:X3,light:Z3},plugin:{"bubble-sets":dX,"edge-bundling":vX,"edge-filter-lens":OX,"grid-line":FX,background:sY,contextmenu:_X,fisheye:MX,fullscreen:NX,history:BX,hull:IZ,legend:o3,minimap:s3,snapline:f3,timebar:v3,title:k3,toolbar:F3,tooltip:L3,watermark:G3},transform:{"arrange-draw-order":$3,"collapse-expand-combo":n6,"collapse-expand-node":i6,"get-edge-actual-ends":r8,"map-node-size":l8,"place-radial-labels":u8,"process-parallel-edges":h8,"update-related-edges":class extends Q3{beforeDraw(e,t){let{stage:n}=t;if(n===`visibility`)return e;let{model:r}=this.context,{update:{nodes:i,edges:a,combos:o}}=e,s=(e,t)=>{r.getRelatedEdgesData(t).forEach(e=>!a.has(Q(e))&&a.set(Q(e),e))};return i.forEach(s),o.forEach(s),e}}},shape:{circle:$d,ellipse:nf,group:af,html:sf,image:Fv,line:uf,path:ff,polygon:mf,polyline:gf,rect:_f,text:yf,label:Cv,badge:wv}};function b8(){Object.entries(y8).forEach(([e,t])=>{Object.entries(t).forEach(([t,n])=>{a6(e,t,n)})})}b8();export{S as C,m as D,_ as E,u as O,C as S,y as T,O as _,wv as a,T as b,Z as c,ff as d,_f as f,k as g,ir as h,fb as i,l as k,Jm as l,H as m,e8 as n,nh as o,yf as p,a6 as r,$m as s,n8 as t,cf as u,D as v,b as w,w as x,E as y};