(self["webpackChunkscproject"]=self["webpackChunkscproject"]||[]).push([[7297],{50202:function(t){(function(){var e,r,i,n,a,s;"undefined"!==typeof performance&&null!==performance&&performance.now?t.exports=function(){return performance.now()}:"undefined"!==typeof process&&null!==process&&process.hrtime?(t.exports=function(){return(e()-a)/1e6},r=process.hrtime,e=function(){var t;return t=r(),1e9*t[0]+t[1]},n=e(),s=1e9*process.uptime(),a=n-s):Date.now?(t.exports=function(){return Date.now()-i},i=Date.now()):(t.exports=function(){return(new Date).getTime()-i},i=(new Date).getTime())}).call(this)},36790:function(t,e,r){r(57658);for(var i=r(50202),n="undefined"===typeof window?r.g:window,a=["moz","webkit"],s="AnimationFrame",o=n["request"+s],h=n["cancel"+s]||n["cancelRequest"+s],u=0;!o&&u3&&(this.alpha=o[3]),this.ok=!0}}this.r=this.r<0||isNaN(this.r)?0:this.r>255?255:this.r,this.g=this.g<0||isNaN(this.g)?0:this.g>255?255:this.g,this.b=this.b<0||isNaN(this.b)?0:this.b>255?255:this.b,this.alpha=this.alpha<0?0:this.alpha>1||isNaN(this.alpha)?1:this.alpha,this.toRGB=function(){return"rgb("+this.r+", "+this.g+", "+this.b+")"},this.toRGBA=function(){return"rgba("+this.r+", "+this.g+", "+this.b+", "+this.alpha+")"},this.toHex=function(){var t=this.r.toString(16),e=this.g.toString(16),r=this.b.toString(16);return 1==t.length&&(t="0"+t),1==e.length&&(e="0"+e),1==r.length&&(r="0"+r),"#"+t+e+r},this.getHelpXML=function(){for(var t=new Array,i=0;i "+u.toRGB()+" -> "+u.toHex());h.appendChild(l),h.appendChild(c),o.appendChild(h)}catch(g){}return o}}},67297:function(t,e,r){"use strict";r.r(e),r.d(e,{AElement:function(){return be},AnimateColorElement:function(){return fe},AnimateElement:function(){return de},AnimateTransformElement:function(){return pe},BoundingBox:function(){return Yt},CB1:function(){return lt},CB2:function(){return ct},CB3:function(){return gt},CB4:function(){return dt},Canvg:function(){return tr},CircleElement:function(){return te},ClipPathElement:function(){return De},DefsElement:function(){return oe},DescElement:function(){return Ye},Document:function(){return Ze},Element:function(){return Dt},EllipseElement:function(){return ee},FeColorMatrixElement:function(){return Re},FeCompositeElement:function(){return Fe},FeDropShadowElement:function(){return ze},FeGaussianBlurElement:function(){return Ue},FeMorphologyElement:function(){return He},FilterElement:function(){return Be},Font:function(){return Xt},FontElement:function(){return ye},FontFaceElement:function(){return me},GElement:function(){return he},GlyphElement:function(){return Wt},GradientElement:function(){return ue},ImageElement:function(){return Ce},LineElement:function(){return re},LinearGradientElement:function(){return le},MarkerElement:function(){return se},MaskElement:function(){return Ie},Matrix:function(){return Nt},MissingGlyphElement:function(){return ve},Mouse:function(){return bt},PSEUDO_ZERO:function(){return st},Parser:function(){return Pt},PathElement:function(){return Qt},PathParser:function(){return jt},PatternElement:function(){return ae},Point:function(){return xt},PolygonElement:function(){return ne},PolylineElement:function(){return ie},Property:function(){return mt},QB1:function(){return ft},QB2:function(){return pt},QB3:function(){return yt},RadialGradientElement:function(){return ce},RectElement:function(){return Jt},RenderedElement:function(){return qt},Rotate:function(){return Et},SVGElement:function(){return Kt},SVGFontLoader:function(){return Oe},Scale:function(){return Mt},Screen:function(){return Tt},Skew:function(){return Vt},SkewX:function(){return _t},SkewY:function(){return kt},StopElement:function(){return ge},StyleElement:function(){return Ee},SymbolElement:function(){return Pe},TRefElement:function(){return xe},TSpanElement:function(){return $t},TextElement:function(){return Gt},TextPathElement:function(){return Te},TitleElement:function(){return Xe},Transform:function(){return Lt},Translate:function(){return Ot},UnknownElement:function(){return Bt},UseElement:function(){return Me},ViewPort:function(){return vt},compressSpaces:function(){return X},default:function(){return tr},getSelectorSpecificity:function(){return at},normalizeAttributeName:function(){return W},normalizeColor:function(){return $},parseExternalUrl:function(){return G},presets:function(){return U},toNumbers:function(){return q},trimLeft:function(){return Y},trimRight:function(){return j},vectorMagnitude:function(){return ot},vectorsAngle:function(){return ut},vectorsRatio:function(){return ht}});r(57658),r(82801),r(88674);function i(t,e,r,i,n,a,s){try{var o=t[a](s),h=o.value}catch(u){return void r(u)}o.done?e(h):Promise.resolve(h).then(i,n)}function n(t){return function(){var e=this,r=arguments;return new Promise((function(n,a){var s=t.apply(e,r);function o(t){i(s,n,a,o,h,"next",t)}function h(t){i(s,n,a,o,h,"throw",t)}o(void 0)}))}}r(4723),r(15306),r(23157),r(66992),r(33948);var a=r(3336);function s(t,e){if("object"!==(0,a.Z)(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var i=r.call(t,e||"default");if("object"!==(0,a.Z)(i))return i;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===e?String:Number)(t)}function o(t){var e=s(t,"string");return"symbol"===(0,a.Z)(e)?e:String(e)}function h(t,e,r){return e=o(e),e in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}r(85827),r(27852),r(23123);var u=r(36790),l=(r(73210),r(46290)),c=(r(82772),r(32023),r(65069),function(t,e){return(c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])})(t,e)});function g(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=t}c(t,e),t.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}function d(t){var e="";Array.isArray(t)||(t=[t]);for(var r=0;rt.phi1&&(t.phi2-=2*y),1===t.sweepFlag&&t.phi2i)return[];if(0===i)return[[t*r/(t*t+e*e),e*r/(t*t+e*e)]];var n=Math.sqrt(i);return[[(t*r+e*n)/(t*t+e*e),(e*r-t*n)/(t*t+e*e)],[(t*r-e*n)/(t*t+e*e),(e*r+t*n)/(t*t+e*e)]]}var x,b=Math.PI/180;function S(t,e,r){return(1-r)*t+r*e}function w(t,e,r,i){return t+Math.cos(i/180*y)*e+Math.sin(i/180*y)*r}function T(t,e,r,i){var n=1e-6,a=e-t,s=r-e,o=3*a+3*(i-r)-6*s,h=6*(s-a),u=3*a;return Math.abs(o)y&&(n.sweepFlag=+!n.sweepFlag),n}))}function s(){return function(t){var e={};for(var r in t)e[r]=t[r];return e}}t.ROUND=function(t){function e(e){return Math.round(e*t)/t}return void 0===t&&(t=1e13),p(t),function(t){return void 0!==t.x1&&(t.x1=e(t.x1)),void 0!==t.y1&&(t.y1=e(t.y1)),void 0!==t.x2&&(t.x2=e(t.x2)),void 0!==t.y2&&(t.y2=e(t.y2)),void 0!==t.x&&(t.x=e(t.x)),void 0!==t.y&&(t.y=e(t.y)),void 0!==t.rX&&(t.rX=e(t.rX)),void 0!==t.rY&&(t.rY=e(t.rY)),t}},t.TO_ABS=e,t.TO_REL=function(){return n((function(t,e,r){return t.relative||(void 0!==t.x1&&(t.x1-=e),void 0!==t.y1&&(t.y1-=r),void 0!==t.x2&&(t.x2-=e),void 0!==t.y2&&(t.y2-=r),void 0!==t.x&&(t.x-=e),void 0!==t.y&&(t.y-=r),t.relative=!0),t}))},t.NORMALIZE_HVZ=function(t,e,r){return void 0===t&&(t=!0),void 0===e&&(e=!0),void 0===r&&(r=!0),n((function(i,n,a,s,o){if(isNaN(s)&&!(i.type&N.MOVE_TO))throw new Error("path must start with moveto");return e&&i.type&N.HORIZ_LINE_TO&&(i.type=N.LINE_TO,i.y=i.relative?0:a),r&&i.type&N.VERT_LINE_TO&&(i.type=N.LINE_TO,i.x=i.relative?0:n),t&&i.type&N.CLOSE_PATH&&(i.type=N.LINE_TO,i.x=i.relative?s-n:s,i.y=i.relative?o-a:o),i.type&N.ARC&&(0===i.rX||0===i.rY)&&(i.type=N.LINE_TO,delete i.rX,delete i.rY,delete i.xRot,delete i.lArcFlag,delete i.sweepFlag),i}))},t.NORMALIZE_ST=r,t.QT_TO_C=i,t.INFO=n,t.SANITIZE=function(t){void 0===t&&(t=0),p(t);var e=NaN,r=NaN,i=NaN,a=NaN;return n((function(n,s,o,h,u){var l=Math.abs,c=!1,g=0,d=0;if(n.type&N.SMOOTH_CURVE_TO&&(g=isNaN(e)?0:s-e,d=isNaN(r)?0:o-r),n.type&(N.CURVE_TO|N.SMOOTH_CURVE_TO)?(e=n.relative?s+n.x2:n.x2,r=n.relative?o+n.y2:n.y2):(e=NaN,r=NaN),n.type&N.SMOOTH_QUAD_TO?(i=isNaN(i)?s:2*s-i,a=isNaN(a)?o:2*o-a):n.type&N.QUAD_TO?(i=n.relative?s+n.x1:n.x1,a=n.relative?o+n.y1:n.y2):(i=NaN,a=NaN),n.type&N.LINE_COMMANDS||n.type&N.ARC&&(0===n.rX||0===n.rY||!n.lArcFlag)||n.type&N.CURVE_TO||n.type&N.SMOOTH_CURVE_TO||n.type&N.QUAD_TO||n.type&N.SMOOTH_QUAD_TO){var f=void 0===n.x?0:n.relative?n.x:n.x-s,p=void 0===n.y?0:n.relative?n.y:n.y-o;g=isNaN(i)?void 0===n.x1?g:n.relative?n.x:n.x1-s:i-s,d=isNaN(a)?void 0===n.y1?d:n.relative?n.y:n.y1-o:a-o;var y=void 0===n.x2?0:n.relative?n.x:n.x2-s,m=void 0===n.y2?0:n.relative?n.y:n.y2-o;l(f)<=t&&l(p)<=t&&l(g)<=t&&l(d)<=t&&l(y)<=t&&l(m)<=t&&(c=!0)}return n.type&N.CLOSE_PATH&&l(s-h)<=t&&l(o-u)<=t&&(c=!0),c?[]:n}))},t.MATRIX=a,t.ROTATE=function(t,e,r){void 0===e&&(e=0),void 0===r&&(r=0),p(t,e,r);var i=Math.sin(t),n=Math.cos(t);return a(n,i,-i,n,e-e*n+r*i,r-e*i-r*n)},t.TRANSLATE=function(t,e){return void 0===e&&(e=0),p(t,e),a(1,0,0,1,t,e)},t.SCALE=function(t,e){return void 0===e&&(e=t),p(t,e),a(t,0,0,e,0,0)},t.SKEW_X=function(t){return p(t),a(1,0,Math.atan(t),1,0,0)},t.SKEW_Y=function(t){return p(t),a(1,Math.atan(t),0,1,0,0)},t.X_AXIS_SYMMETRY=function(t){return void 0===t&&(t=0),p(t),a(-1,0,0,1,t,0)},t.Y_AXIS_SYMMETRY=function(t){return void 0===t&&(t=0),p(t),a(1,0,0,-1,0,t)},t.A_TO_C=function(){return n((function(t,e,r){return N.ARC===t.type?function(t,e,r){var i,n,a,s;t.cX||m(t,e,r);for(var o=Math.min(t.phi1,t.phi2),h=Math.max(t.phi1,t.phi2)-o,u=Math.ceil(h/90),l=new Array(u),c=e,g=r,d=0;dh.maxX&&(h.maxX=t),th.maxY&&(h.maxY=t),tR&&u(A(r,n.x1,n.x2,n.x,R));for(var d=0,f=T(i,n.y1,n.y2,n.y);dR&&l(A(i,n.y1,n.y2,n.y,R))}if(n.type&N.ARC){u(n.x),l(n.y),m(n,r,i);for(var p=n.xRot/180*Math.PI,y=Math.cos(p)*n.rX,x=Math.sin(p)*n.rX,b=-Math.sin(p)*n.rY,S=Math.cos(p)*n.rY,C=n.phi1n.phi2?[n.phi2+360,n.phi1+360]:[n.phi2,n.phi1],P=C[0],O=C[1],E=function(t){var e=t[0],r=t[1],i=180*Math.atan2(r,e)/Math.PI;return iP&&RP&&Rh)throw new SyntaxError('Expected positive number, got "'+h+'" at index "'+n+'"')}else if((3===this.curArgs.length||4===this.curArgs.length)&&"0"!==this.curNumber&&"1"!==this.curNumber)throw new SyntaxError('Expected a flag, got "'+this.curNumber+'" at index "'+n+'"');this.curArgs.push(h),this.curArgs.length===V[this.curCommandType]&&(N.HORIZ_LINE_TO===this.curCommandType?i({type:N.HORIZ_LINE_TO,relative:this.curCommandRelative,x:h}):N.VERT_LINE_TO===this.curCommandType?i({type:N.VERT_LINE_TO,relative:this.curCommandRelative,y:h}):this.curCommandType===N.MOVE_TO||this.curCommandType===N.LINE_TO||this.curCommandType===N.SMOOTH_QUAD_TO?(i({type:this.curCommandType,relative:this.curCommandRelative,x:this.curArgs[0],y:this.curArgs[1]}),N.MOVE_TO===this.curCommandType&&(this.curCommandType=N.LINE_TO)):this.curCommandType===N.CURVE_TO?i({type:N.CURVE_TO,relative:this.curCommandRelative,x1:this.curArgs[0],y1:this.curArgs[1],x2:this.curArgs[2],y2:this.curArgs[3],x:this.curArgs[4],y:this.curArgs[5]}):this.curCommandType===N.SMOOTH_CURVE_TO?i({type:N.SMOOTH_CURVE_TO,relative:this.curCommandRelative,x2:this.curArgs[0],y2:this.curArgs[1],x:this.curArgs[2],y:this.curArgs[3]}):this.curCommandType===N.QUAD_TO?i({type:N.QUAD_TO,relative:this.curCommandRelative,x1:this.curArgs[0],y1:this.curArgs[1],x:this.curArgs[2],y:this.curArgs[3]}):this.curCommandType===N.ARC&&i({type:N.ARC,relative:this.curCommandRelative,rX:this.curArgs[0],rY:this.curArgs[1],xRot:this.curArgs[2],lArcFlag:this.curArgs[3],sweepFlag:this.curArgs[4],x:this.curArgs[5],y:this.curArgs[6]})),this.curNumber="",this.curNumberHasExpDigits=!1,this.curNumberHasExp=!1,this.curNumberHasDecimal=!1,this.canParseCommandOrComma=!0}if(!O(a))if(","===a&&this.canParseCommandOrComma)this.canParseCommandOrComma=!1;else if("+"!==a&&"-"!==a&&"."!==a)if(o)this.curNumber=a,this.curNumberHasDecimal=!1;else{if(0!==this.curArgs.length)throw new SyntaxError("Unterminated command at index "+n+".");if(!this.canParseCommandOrComma)throw new SyntaxError('Unexpected character "'+a+'" at index '+n+". Command cannot follow comma");if(this.canParseCommandOrComma=!1,"z"!==a&&"Z"!==a)if("h"===a||"H"===a)this.curCommandType=N.HORIZ_LINE_TO,this.curCommandRelative="h"===a;else if("v"===a||"V"===a)this.curCommandType=N.VERT_LINE_TO,this.curCommandRelative="v"===a;else if("m"===a||"M"===a)this.curCommandType=N.MOVE_TO,this.curCommandRelative="m"===a;else if("l"===a||"L"===a)this.curCommandType=N.LINE_TO,this.curCommandRelative="l"===a;else if("c"===a||"C"===a)this.curCommandType=N.CURVE_TO,this.curCommandRelative="c"===a;else if("s"===a||"S"===a)this.curCommandType=N.SMOOTH_CURVE_TO,this.curCommandRelative="s"===a;else if("q"===a||"Q"===a)this.curCommandType=N.QUAD_TO,this.curCommandRelative="q"===a;else if("t"===a||"T"===a)this.curCommandType=N.SMOOTH_QUAD_TO,this.curCommandRelative="t"===a;else{if("a"!==a&&"A"!==a)throw new SyntaxError('Unexpected character "'+a+'" at index '+n+".");this.curCommandType=N.ARC,this.curCommandRelative="a"===a}else e.push({type:N.CLOSE_PATH}),this.canParseCommandOrComma=!0,this.curCommandType=-1}else this.curNumber=a,this.curNumberHasDecimal="."===a}else this.curNumber+=a,this.curNumberHasDecimal=!0;else this.curNumber+=a;else this.curNumber+=a,this.curNumberHasExp=!0;else this.curNumber+=a,this.curNumberHasExpDigits=this.curNumberHasExp}return e},e.prototype.transform=function(t){return Object.create(this,{parse:{value:function(e,r){void 0===r&&(r=[]);for(var i=0,n=Object.getPrototypeOf(this).parse.call(this,e);i>S;if(o[x+3]=Z,0!==Z){var K=255/Z;o[x]=(B*b>>S)*K,o[x+1]=(H*b>>S)*K,o[x+2]=(F*b>>S)*K}else o[x]=o[x+1]=o[x+2]=0;B-=_,H-=k,F-=L,U-=D,_-=y.r,k-=y.g,L-=y.b,D-=y.a;var J=$+a+1;J=v+(J>S,ut>0?(ut=255/ut,o[Ot]=(ft*b>>S)*ut,o[Ot+1]=(pt*b>>S)*ut,o[Ot+2]=(yt*b>>S)*ut):o[Ot]=o[Ot+1]=o[Ot+2]=0,ft-=lt,pt-=ct,yt-=gt,mt-=dt,lt-=y.r,ct-=y.g,gt-=y.b,dt-=y.a,Ot=at+((Ot=Pt+c)0&&void 0!==arguments[0]?arguments[0]:{},e={window:null,ignoreAnimation:!0,ignoreMouse:!0,DOMParser:t,createCanvas(t,e){return new OffscreenCanvas(t,e)},createImage(t){return n((function*(){var e=yield fetch(t),r=yield e.blob(),i=yield createImageBitmap(r);return i}))()}};return"undefined"===typeof DOMParser&&"undefined"!==typeof t||Reflect.deleteProperty(e,"DOMParser"),e}function F(t){var{DOMParser:e,canvas:r,fetch:i}=t;return{window:null,ignoreAnimation:!0,ignoreMouse:!0,DOMParser:e,fetch:i,createCanvas:r.createCanvas,createImage:r.loadImage}}var U=Object.freeze({__proto__:null,offscreen:H,node:F});function X(t){return t.replace(/(?!\u3000)\s+/gm," ")}function Y(t){return t.replace(/^[\n \t]+/,"")}function j(t){return t.replace(/[\n \t]+$/,"")}function q(t){var e=(t||"").match(/-?(\d+(?:\.\d*(?:[eE][+-]?\d+)?)?|\.\d+)(?=\D|$)/gm)||[];return e.map(parseFloat)}var Q=/^[A-Z-]+$/;function W(t){return Q.test(t)?t.toLowerCase():t}function G(t){var e=/url\(('([^']+)'|"([^"]+)"|([^'")]+))\)/.exec(t)||[];return e[2]||e[3]||e[4]}function $(t){if(!t.startsWith("rgb"))return t;var e=3,r=t.replace(/\d+(\.\d+)?/g,((t,r)=>e--&&r?String(Math.round(parseFloat(t))):t));return r}var Z=/(\[[^\]]+\])/g,K=/(#[^\s+>~.[:]+)/g,J=/(\.[^\s+>~.[:]+)/g,tt=/(::[^\s+>~.[:]+|:first-line|:first-letter|:before|:after)/gi,et=/(:[\w-]+\([^)]*\))/gi,rt=/(:[^\s+>~.[:]+)/g,it=/([^\s+>~.[:]+)/g;function nt(t,e){var r=e.exec(t);return r?[t.replace(e," "),r.length]:[t,0]}function at(t){var e=[0,0,0],r=t.replace(/:not\(([^)]*)\)/g," $1 ").replace(/{[\s\S]*/gm," "),i=0;return[r,i]=nt(r,Z),e[1]+=i,[r,i]=nt(r,K),e[0]+=i,[r,i]=nt(r,J),e[1]+=i,[r,i]=nt(r,tt),e[2]+=i,[r,i]=nt(r,et),e[1]+=i,[r,i]=nt(r,rt),e[1]+=i,r=r.replace(/[*\s+>~]/g," ").replace(/[#.]/g," "),[r,i]=nt(r,it),e[2]+=i,e.join("")}var st=1e-8;function ot(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2))}function ht(t,e){return(t[0]*e[0]+t[1]*e[1])/(ot(t)*ot(e))}function ut(t,e){return(t[0]*e[1]0&&void 0!==arguments[0]?arguments[0]:" ",{document:e,name:r}=this;return X(this.getString()).trim().split(t).map((t=>new mt(e,r,t)))}hasValue(t){var{value:e}=this;return null!==e&&""!==e&&(t||0!==e)&&"undefined"!==typeof e}isString(t){var{value:e}=this,r="string"===typeof e;return r&&t?t.test(e):r}isUrlDefinition(){return this.isString(/^url\(/)}isPixels(){if(!this.hasValue())return!1;var t=this.getString();switch(!0){case t.endsWith("px"):case/^[0-9]+$/.test(t):return!0;default:return!1}}setValue(t){return this.value=t,this}getValue(t){return"undefined"===typeof t||this.hasValue()?this.value:t}getNumber(t){if(!this.hasValue())return"undefined"===typeof t?0:parseFloat(t);var{value:e}=this,r=parseFloat(e);return this.isString(/%$/)&&(r/=100),r}getString(t){return"undefined"===typeof t||this.hasValue()?"undefined"===typeof this.value?"":String(this.value):String(t)}getColor(t){var e=this.getString(t);return this.isNormalizedColor||(this.isNormalizedColor=!0,e=$(e),this.value=e),e}getDpi(){return 96}getRem(){return this.document.rootEmSize}getEm(){return this.document.emSize}getUnits(){return this.getString().replace(/[0-9.-]/g,"")}getPixels(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!this.hasValue())return 0;var[r,i]="boolean"===typeof t?[void 0,t]:[t],{viewPort:n}=this.document.screen;switch(!0){case this.isString(/vmin$/):return this.getNumber()/100*Math.min(n.computeSize("x"),n.computeSize("y"));case this.isString(/vmax$/):return this.getNumber()/100*Math.max(n.computeSize("x"),n.computeSize("y"));case this.isString(/vw$/):return this.getNumber()/100*n.computeSize("x");case this.isString(/vh$/):return this.getNumber()/100*n.computeSize("y");case this.isString(/rem$/):return this.getNumber()*this.getRem();case this.isString(/em$/):return this.getNumber()*this.getEm();case this.isString(/ex$/):return this.getNumber()*this.getEm()/2;case this.isString(/px$/):return this.getNumber();case this.isString(/pt$/):return this.getNumber()*this.getDpi()*(1/72);case this.isString(/pc$/):return 15*this.getNumber();case this.isString(/cm$/):return this.getNumber()*this.getDpi()/2.54;case this.isString(/mm$/):return this.getNumber()*this.getDpi()/25.4;case this.isString(/in$/):return this.getNumber()*this.getDpi();case this.isString(/%$/)&&i:return this.getNumber()*this.getEm();case this.isString(/%$/):return this.getNumber()*n.computeSize(r);default:var a=this.getNumber();return e&&a<1?a*n.computeSize(r):a}}getMilliseconds(){return this.hasValue()?this.isString(/ms$/)?this.getNumber():1e3*this.getNumber():0}getRadians(){if(!this.hasValue())return 0;switch(!0){case this.isString(/deg$/):return this.getNumber()*(Math.PI/180);case this.isString(/grad$/):return this.getNumber()*(Math.PI/200);case this.isString(/rad$/):return this.getNumber();default:return this.getNumber()*(Math.PI/180)}}getDefinition(){var t=this.getString(),e=/#([^)'"]+)/.exec(t);return e&&(e=e[1]),e||(e=t),this.document.definitions[e]}getFillStyleDefinition(t,e){var r=this.getDefinition();if(!r)return null;if("function"===typeof r.createGradient)return r.createGradient(this.document.ctx,t,e);if("function"===typeof r.createPattern){if(r.getHrefAttribute().hasValue()){var i=r.getAttribute("patternTransform");r=r.getHrefAttribute().getDefinition(),i.hasValue()&&r.getAttribute("patternTransform",!0).setValue(i.value)}return r.createPattern(this.document.ctx,t,e)}return null}getTextBaseline(){return this.hasValue()?mt.textBaselineMapping[this.getString()]:null}addOpacity(t){for(var e=this.getColor(),r=e.length,i=0,n=0;n1&&void 0!==arguments[1]?arguments[1]:0,[r=e,i=e]=q(t);return new xt(r,i)}static parseScale(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,[r=e,i=r]=q(t);return new xt(r,i)}static parsePath(t){for(var e=q(t),r=e.length,i=[],n=0;n0}runEvents(){if(this.working){var{screen:t,events:e,eventElements:r}=this,{style:i}=t.ctx.canvas;i&&(i.cursor=""),e.forEach(((t,e)=>{var{run:i}=t,n=r[e];while(n)i(n),n=n.parent})),this.events=[],this.eventElements=[]}}checkPath(t,e){if(this.working&&e){var{events:r,eventElements:i}=this;r.forEach(((r,n)=>{var{x:a,y:s}=r;!i[n]&&e.isPointInPath&&e.isPointInPath(a,s)&&(i[n]=t)}))}}checkBoundingBox(t,e){if(this.working&&e){var{events:r,eventElements:i}=this;r.forEach(((r,n)=>{var{x:a,y:s}=r;!i[n]&&e.isPointInBox(a,s)&&(i[n]=t)}))}}mapXY(t,e){var{window:r,ctx:i}=this.screen,n=new xt(t,e),a=i.canvas;while(a)n.x-=a.offsetLeft,n.y-=a.offsetTop,a=a.offsetParent;return r.scrollX&&(n.x+=r.scrollX),r.scrollY&&(n.y+=r.scrollY),n}onClick(t){var{x:e,y:r}=this.mapXY(t.clientX,t.clientY);this.events.push({type:"onclick",x:e,y:r,run(t){t.onClick&&t.onClick()}})}onMouseMove(t){var{x:e,y:r}=this.mapXY(t.clientX,t.clientY);this.events.push({type:"onmousemove",x:e,y:r,run(t){t.onMouseMove&&t.onMouseMove()}})}}var St="undefined"!==typeof window?window:null,wt="undefined"!==typeof fetch?fetch.bind(void 0):null;class Tt{constructor(t){var{fetch:e=wt,window:r=St}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.ctx=t,this.FRAMERATE=30,this.MAX_VIRTUAL_PIXELS=3e4,this.CLIENT_WIDTH=800,this.CLIENT_HEIGHT=600,this.viewPort=new vt,this.mouse=new bt(this),this.animations=[],this.waits=[],this.frameDuration=0,this.isReadyLock=!1,this.isFirstRender=!0,this.intervalId=null,this.window=r,this.fetch=e}wait(t){this.waits.push(t)}ready(){return this.readyPromise?this.readyPromise:Promise.resolve()}isReady(){if(this.isReadyLock)return!0;var t=this.waits.every((t=>t()));return t&&(this.waits=[],this.resolveReady&&this.resolveReady()),this.isReadyLock=t,t}setDefaults(t){t.strokeStyle="rgba(0,0,0,0)",t.lineCap="butt",t.lineJoin="miter",t.miterLimit=4}setViewBox(t){var{document:e,ctx:r,aspectRatio:i,width:n,desiredWidth:a,height:s,desiredHeight:o,minX:h=0,minY:u=0,refX:l,refY:c,clip:g=!1,clipX:d=0,clipY:f=0}=t,p=X(i).replace(/^defer\s/,""),[y,m]=p.split(" "),v=y||"xMidYMid",x=m||"meet",b=n/a,S=s/o,w=Math.min(b,S),T=Math.max(b,S),A=a,C=o;"meet"===x&&(A*=w,C*=w),"slice"===x&&(A*=T,C*=T);var P=new mt(e,"refX",l),O=new mt(e,"refY",c),E=P.hasValue()&&O.hasValue();if(E&&r.translate(-w*P.getPixels("x"),-w*O.getPixels("y")),g){var M=w*d,N=w*f;r.beginPath(),r.moveTo(M,N),r.lineTo(n,N),r.lineTo(n,s),r.lineTo(M,s),r.closePath(),r.clip()}if(!E){var V="meet"===x&&w===S,_="slice"===x&&T===S,k="meet"===x&&w===b,R="slice"===x&&T===b;v.startsWith("xMid")&&(V||_)&&r.translate(n/2-A/2,0),v.endsWith("YMid")&&(k||R)&&r.translate(0,s/2-C/2),v.startsWith("xMax")&&(V||_)&&r.translate(n-A,0),v.endsWith("YMax")&&(k||R)&&r.translate(0,s-C)}switch(!0){case"none"===v:r.scale(b,S);break;case"meet"===x:r.scale(w,w);break;case"slice"===x:r.scale(T,T);break}r.translate(-h,-u)}start(t){var{enableRedraw:e=!1,ignoreMouse:r=!1,ignoreAnimation:i=!1,ignoreDimensions:n=!1,ignoreClear:a=!1,forceRedraw:s,scaleWidth:o,scaleHeight:h,offsetX:l,offsetY:c}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{FRAMERATE:g,mouse:d}=this,f=1e3/g;if(this.frameDuration=f,this.readyPromise=new Promise((t=>{this.resolveReady=t})),this.isReady()&&this.render(t,n,a,o,h,l,c),e){var p=Date.now(),y=p,m=0,v=()=>{p=Date.now(),m=p-y,m>=f&&(y=p-m%f,this.shouldUpdate(i,s)&&(this.render(t,n,a,o,h,l,c),d.runEvents())),this.intervalId=u(v)};r||d.start(),this.intervalId=u(v)}}stop(){this.intervalId&&(u.cancel(this.intervalId),this.intervalId=null),this.mouse.stop()}shouldUpdate(t,e){if(!t){var{frameDuration:r}=this,i=this.animations.reduce(((t,e)=>e.update(r)||t),!1);if(i)return!0}return!("function"!==typeof e||!e())||(!(this.isReadyLock||!this.isReady())||!!this.mouse.hasEvents())}render(t,e,r,i,n,a,s){var{CLIENT_WIDTH:o,CLIENT_HEIGHT:h,viewPort:u,ctx:l,isFirstRender:c}=this,g=l.canvas;u.clear(),g.width&&g.height?u.setCurrent(g.width,g.height):u.setCurrent(o,h);var d=t.getStyle("width"),f=t.getStyle("height");!e&&(c||"number"!==typeof i&&"number"!==typeof n)&&(d.hasValue()&&(g.width=d.getPixels("x"),g.style&&(g.style.width="".concat(g.width,"px"))),f.hasValue()&&(g.height=f.getPixels("y"),g.style&&(g.style.height="".concat(g.height,"px"))));var p=g.clientWidth||g.width,y=g.clientHeight||g.height;if(e&&d.hasValue()&&f.hasValue()&&(p=d.getPixels("x"),y=f.getPixels("y")),u.setCurrent(p,y),"number"===typeof a&&t.getAttribute("x",!0).setValue(a),"number"===typeof s&&t.getAttribute("y",!0).setValue(s),"number"===typeof i||"number"===typeof n){var m=q(t.getAttribute("viewBox").getString()),v=0,x=0;if("number"===typeof i){var b=t.getStyle("width");b.hasValue()?v=b.getPixels("x")/i:isNaN(m[2])||(v=m[2]/i)}if("number"===typeof n){var S=t.getStyle("height");S.hasValue()?x=S.getPixels("y")/n:isNaN(m[3])||(x=m[3]/n)}v||(v=x),x||(x=v),t.getAttribute("width",!0).setValue(i),t.getAttribute("height",!0).setValue(n);var w=t.getStyle("transform",!0,!0);w.setValue("".concat(w.getString()," scale(").concat(1/v,", ").concat(1/x,")"))}r||l.clearRect(0,0,p,y),t.render(l),c&&(this.isFirstRender=!1)}}Tt.defaultWindow=St,Tt.defaultFetch=wt;var{defaultFetch:At}=Tt,Ct="undefined"!==typeof DOMParser?DOMParser:null;class Pt{constructor(){var{fetch:t=At,DOMParser:e=Ct}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.fetch=t,this.DOMParser=e}parse(t){var e=this;return n((function*(){return t.startsWith("<")?e.parseFromString(t):e.load(t)}))()}parseFromString(t){var e=new this.DOMParser;try{return this.checkDocument(e.parseFromString(t,"image/svg+xml"))}catch(r){return this.checkDocument(e.parseFromString(t,"text/xml"))}}checkDocument(t){var e=t.getElementsByTagName("parsererror")[0];if(e)throw new Error(e.textContent);return t}load(t){var e=this;return n((function*(){var r=yield e.fetch(t),i=yield r.text();return e.parseFromString(i)}))()}}class Ot{constructor(t,e){this.type="translate",this.point=null,this.point=xt.parse(e)}apply(t){var{x:e,y:r}=this.point;t.translate(e||0,r||0)}unapply(t){var{x:e,y:r}=this.point;t.translate(-1*e||0,-1*r||0)}applyToPoint(t){var{x:e,y:r}=this.point;t.applyTransform([1,0,0,1,e||0,r||0])}}class Et{constructor(t,e,r){this.type="rotate",this.angle=null,this.originX=null,this.originY=null,this.cx=0,this.cy=0;var i=q(e);this.angle=new mt(t,"angle",i[0]),this.originX=r[0],this.originY=r[1],this.cx=i[1]||0,this.cy=i[2]||0}apply(t){var{cx:e,cy:r,originX:i,originY:n,angle:a}=this,s=e+i.getPixels("x"),o=r+n.getPixels("y");t.translate(s,o),t.rotate(a.getRadians()),t.translate(-s,-o)}unapply(t){var{cx:e,cy:r,originX:i,originY:n,angle:a}=this,s=e+i.getPixels("x"),o=r+n.getPixels("y");t.translate(s,o),t.rotate(-1*a.getRadians()),t.translate(-s,-o)}applyToPoint(t){var{cx:e,cy:r,angle:i}=this,n=i.getRadians();t.applyTransform([1,0,0,1,e||0,r||0]),t.applyTransform([Math.cos(n),Math.sin(n),-Math.sin(n),Math.cos(n),0,0]),t.applyTransform([1,0,0,1,-e||0,-r||0])}}class Mt{constructor(t,e,r){this.type="scale",this.scale=null,this.originX=null,this.originY=null;var i=xt.parseScale(e);0!==i.x&&0!==i.y||(i.x=st,i.y=st),this.scale=i,this.originX=r[0],this.originY=r[1]}apply(t){var{scale:{x:e,y:r},originX:i,originY:n}=this,a=i.getPixels("x"),s=n.getPixels("y");t.translate(a,s),t.scale(e,r||e),t.translate(-a,-s)}unapply(t){var{scale:{x:e,y:r},originX:i,originY:n}=this,a=i.getPixels("x"),s=n.getPixels("y");t.translate(a,s),t.scale(1/e,1/r||e),t.translate(-a,-s)}applyToPoint(t){var{x:e,y:r}=this.scale;t.applyTransform([e||0,0,0,r||0,0,0])}}class Nt{constructor(t,e,r){this.type="matrix",this.matrix=[],this.originX=null,this.originY=null,this.matrix=q(e),this.originX=r[0],this.originY=r[1]}apply(t){var{originX:e,originY:r,matrix:i}=this,n=e.getPixels("x"),a=r.getPixels("y");t.translate(n,a),t.transform(i[0],i[1],i[2],i[3],i[4],i[5]),t.translate(-n,-a)}unapply(t){var{originX:e,originY:r,matrix:i}=this,n=i[0],a=i[2],s=i[4],o=i[1],h=i[3],u=i[5],l=0,c=0,g=1,d=1/(n*(h*g-u*c)-a*(o*g-u*l)+s*(o*c-h*l)),f=e.getPixels("x"),p=r.getPixels("y");t.translate(f,p),t.transform(d*(h*g-u*c),d*(u*l-o*g),d*(s*c-a*g),d*(n*g-s*l),d*(a*u-s*h),d*(s*o-n*u)),t.translate(-f,-p)}applyToPoint(t){t.applyTransform(this.matrix)}}class Vt extends Nt{constructor(t,e,r){super(t,e,r),this.type="skew",this.angle=null,this.angle=new mt(t,"angle",e)}}class _t extends Vt{constructor(t,e,r){super(t,e,r),this.type="skewX",this.matrix=[1,0,Math.tan(this.angle.getRadians()),1,0,0]}}class kt extends Vt{constructor(t,e,r){super(t,e,r),this.type="skewY",this.matrix=[1,Math.tan(this.angle.getRadians()),0,1,0,0]}}function Rt(t){return X(t).trim().replace(/\)([a-zA-Z])/g,") $1").replace(/\)(\s?,\s?)/g,") ").split(/\s(?=[a-z])/)}function It(t){var[e,r]=t.split("(");return[e.trim(),r.trim().replace(")","")]}class Lt{constructor(t,e,r){this.document=t,this.transforms=[];var i=Rt(e);i.forEach((t=>{if("none"!==t){var[e,i]=It(t),n=Lt.transformTypes[e];"undefined"!==typeof n&&this.transforms.push(new n(this.document,i,r))}}))}static fromElement(t,e){var r=e.getStyle("transform",!1,!0),[i,n=i]=e.getStyle("transform-origin",!1,!0).split(),a=[i,n];return r.hasValue()?new Lt(t,r.getString(),a):null}apply(t){for(var{transforms:e}=this,r=e.length,i=0;i=0;i--)e[i].unapply(t)}applyToPoint(t){for(var{transforms:e}=this,r=e.length,i=0;i2&&void 0!==arguments[2]&&arguments[2];if(this.document=t,this.node=e,this.captureTextNodes=r,this.attributes={},this.styles={},this.stylesSpecificity={},this.animationFrozen=!1,this.animationFrozenValue="",this.parent=null,this.children=[],e&&1===e.nodeType){if(Array.from(e.attributes).forEach((e=>{var r=W(e.nodeName);this.attributes[r]=new mt(t,r,e.value)})),this.addStylesFromStyleDefinition(),this.getAttribute("style").hasValue()){var i=this.getAttribute("style").getString().split(";").map((t=>t.trim()));i.forEach((e=>{if(e){var[r,i]=e.split(":").map((t=>t.trim()));this.styles[r]=new mt(t,r,i)}}))}var{definitions:n}=t,a=this.getAttribute("id");a.hasValue()&&(n[a.getString()]||(n[a.getString()]=this)),Array.from(e.childNodes).forEach((e=>{if(1===e.nodeType)this.addChild(e);else if(r&&(3===e.nodeType||4===e.nodeType)){var i=t.createTextNode(e);i.getText().length>0&&this.addChild(i)}}))}}getAttribute(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=this.attributes[t];if(!r&&e){var i=new mt(this.document,t,"");return this.attributes[t]=i,i}return r||mt.empty(this.document)}getHrefAttribute(){for(var t in this.attributes)if("href"===t||t.endsWith(":href"))return this.attributes[t];return mt.empty(this.document)}getStyle(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=this.styles[t];if(i)return i;var n=this.getAttribute(t);if(null!==n&&void 0!==n&&n.hasValue())return this.styles[t]=n,n;if(!r){var{parent:a}=this;if(a){var s=a.getStyle(t);if(null!==s&&void 0!==s&&s.hasValue())return s}}if(e){var o=new mt(this.document,t,"");return this.styles[t]=o,o}return i||mt.empty(this.document)}render(t){if("none"!==this.getStyle("display").getString()&&"hidden"!==this.getStyle("visibility").getString()){if(t.save(),this.getStyle("mask").hasValue()){var e=this.getStyle("mask").getDefinition();e&&(this.applyEffects(t),e.apply(t,this))}else if("none"!==this.getStyle("filter").getValue("none")){var r=this.getStyle("filter").getDefinition();r&&(this.applyEffects(t),r.apply(t,this))}else this.setContext(t),this.renderChildren(t),this.clearContext(t);t.restore()}}setContext(t){}applyEffects(t){var e=Lt.fromElement(this.document,this);e&&e.apply(t);var r=this.getStyle("clip-path",!1,!0);if(r.hasValue()){var i=r.getDefinition();i&&i.apply(t)}}clearContext(t){}renderChildren(t){this.children.forEach((e=>{e.render(t)}))}addChild(t){var e=t instanceof Dt?t:this.document.createElement(t);e.parent=this,Dt.ignoreChildTypes.includes(e.type)||this.children.push(e)}matchesSelector(t){var e,{node:r}=this;if("function"===typeof r.matches)return r.matches(t);var i=null===(e=r.getAttribute)||void 0===e?void 0:e.call(r,"class");return!(!i||""===i)&&i.split(" ").some((e=>".".concat(e)===t))}addStylesFromStyleDefinition(){var{styles:t,stylesSpecificity:e}=this.document;for(var r in t)if(!r.startsWith("@")&&this.matchesSelector(r)){var i=t[r],n=e[r];if(i)for(var a in i){var s=this.stylesSpecificity[a];"undefined"===typeof s&&(s="000"),n>=s&&(this.styles[a]=i[a],this.stylesSpecificity[a]=n)}}}removeStyles(t,e){var r=e.reduce(((e,r)=>{var i=t.getStyle(r);if(!i.hasValue())return e;var n=i.getString();return i.setValue(""),[...e,[r,n]]}),[]);return r}restoreStyles(t,e){e.forEach((e=>{var[r,i]=e;t.getStyle(r,!0).setValue(i)}))}isFirstChild(){var t;return 0===(null===(t=this.parent)||void 0===t?void 0:t.children.indexOf(this))}}Dt.ignoreChildTypes=["title"];class Bt extends Dt{constructor(t,e,r){super(t,e,r)}}function zt(t){var e=t.trim();return/^('|")/.test(e)?e:'"'.concat(e,'"')}function Ht(t){return"undefined"===typeof process?t:t.trim().split(",").map(zt).join(",")}function Ft(t){if(!t)return"";var e=t.trim().toLowerCase();switch(e){case"normal":case"italic":case"oblique":case"inherit":case"initial":case"unset":return e;default:return/^oblique\s+(-|)\d+deg$/.test(e)?e:""}}function Ut(t){if(!t)return"";var e=t.trim().toLowerCase();switch(e){case"normal":case"bold":case"lighter":case"bolder":case"inherit":case"initial":case"unset":return e;default:return/^[\d.]+$/.test(e)?e:""}}class Xt{constructor(t,e,r,i,n,a){var s=a?"string"===typeof a?Xt.parse(a):a:{};this.fontFamily=n||s.fontFamily,this.fontSize=i||s.fontSize,this.fontStyle=t||s.fontStyle,this.fontWeight=r||s.fontWeight,this.fontVariant=e||s.fontVariant}static parse(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"",e=arguments.length>1?arguments[1]:void 0,r="",i="",n="",a="",s="",o=X(t).trim().split(" "),h={fontSize:!1,fontStyle:!1,fontWeight:!1,fontVariant:!1};return o.forEach((t=>{switch(!0){case!h.fontStyle&&Xt.styles.includes(t):"inherit"!==t&&(r=t),h.fontStyle=!0;break;case!h.fontVariant&&Xt.variants.includes(t):"inherit"!==t&&(i=t),h.fontStyle=!0,h.fontVariant=!0;break;case!h.fontWeight&&Xt.weights.includes(t):"inherit"!==t&&(n=t),h.fontStyle=!0,h.fontVariant=!0,h.fontWeight=!0;break;case!h.fontSize:"inherit"!==t&&([a]=t.split("/")),h.fontStyle=!0,h.fontVariant=!0,h.fontWeight=!0,h.fontSize=!0;break;default:"inherit"!==t&&(s+=t)}})),new Xt(r,i,n,a,s,e)}toString(){return[Ft(this.fontStyle),this.fontVariant,Ut(this.fontWeight),this.fontSize,Ht(this.fontFamily)].join(" ").trim()}}Xt.styles="normal|italic|oblique|inherit",Xt.variants="normal|small-caps|inherit",Xt.weights="normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit";class Yt{constructor(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:Number.NaN,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Number.NaN,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:Number.NaN,i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:Number.NaN;this.x1=t,this.y1=e,this.x2=r,this.y2=i,this.addPoint(t,e),this.addPoint(r,i)}get x(){return this.x1}get y(){return this.y1}get width(){return this.x2-this.x1}get height(){return this.y2-this.y1}addPoint(t,e){"undefined"!==typeof t&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=t,this.x2=t),tthis.x2&&(this.x2=t)),"undefined"!==typeof e&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=e,this.y2=e),ethis.y2&&(this.y2=e))}addX(t){this.addPoint(t,null)}addY(t){this.addPoint(null,t)}addBoundingBox(t){if(t){var{x1:e,y1:r,x2:i,y2:n}=t;this.addPoint(e,r),this.addPoint(i,n)}}sumCubic(t,e,r,i,n){return Math.pow(1-t,3)*e+3*Math.pow(1-t,2)*t*r+3*(1-t)*Math.pow(t,2)*i+Math.pow(t,3)*n}bezierCurveAdd(t,e,r,i,n){var a=6*e-12*r+6*i,s=-3*e+9*r-9*i+3*n,o=3*r-3*e;if(0!==s){var h=Math.pow(a,2)-4*o*s;if(!(h<0)){var u=(-a+Math.sqrt(h))/(2*s);0=e.length-1}next(){var t=this.commands[++this.i];return this.previousCommand=this.command,this.command=t,t}getPoint(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"x",e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"y",r=new xt(this.command[t],this.command[e]);return this.makeAbsolute(r)}getAsControlPoint(t,e){var r=this.getPoint(t,e);return this.control=r,r}getAsCurrentPoint(t,e){var r=this.getPoint(t,e);return this.current=r,r}getReflectedControlPoint(){var t=this.previousCommand.type;if(t!==N.CURVE_TO&&t!==N.SMOOTH_CURVE_TO&&t!==N.QUAD_TO&&t!==N.SMOOTH_QUAD_TO)return this.current;var{current:{x:e,y:r},control:{x:i,y:n}}=this,a=new xt(2*e-i,2*r-n);return a}makeAbsolute(t){if(this.command.relative){var{x:e,y:r}=this.current;t.x+=e,t.y+=r}return t}addMarker(t,e,r){var{points:i,angles:n}=this;r&&n.length>0&&!n[n.length-1]&&(n[n.length-1]=i[i.length-1].angleTo(r)),this.addMarkerAngle(t,e?e.angleTo(t):null)}addMarkerAngle(t,e){this.points.push(t),this.angles.push(e)}getMarkerPoints(){return this.points}getMarkerAngles(){for(var{angles:t}=this,e=t.length,r=0;r1&&void 0!==arguments[1]&&arguments[1];if(!e){var r=this.getStyle("fill"),i=this.getStyle("fill-opacity"),n=this.getStyle("stroke"),a=this.getStyle("stroke-opacity");if(r.isUrlDefinition()){var s=r.getFillStyleDefinition(this,i);s&&(t.fillStyle=s)}else if(r.hasValue()){"currentColor"===r.getString()&&r.setValue(this.getStyle("color").getColor());var o=r.getColor();"inherit"!==o&&(t.fillStyle="none"===o?"rgba(0,0,0,0)":o)}if(i.hasValue()){var h=new mt(this.document,"fill",t.fillStyle).addOpacity(i).getColor();t.fillStyle=h}if(n.isUrlDefinition()){var u=n.getFillStyleDefinition(this,a);u&&(t.strokeStyle=u)}else if(n.hasValue()){"currentColor"===n.getString()&&n.setValue(this.getStyle("color").getColor());var l=n.getString();"inherit"!==l&&(t.strokeStyle="none"===l?"rgba(0,0,0,0)":l)}if(a.hasValue()){var c=new mt(this.document,"stroke",t.strokeStyle).addOpacity(a).getString();t.strokeStyle=c}var g=this.getStyle("stroke-width");if(g.hasValue()){var d=g.getPixels();t.lineWidth=d||st}var f=this.getStyle("stroke-linecap"),p=this.getStyle("stroke-linejoin"),y=this.getStyle("stroke-miterlimit"),m=this.getStyle("stroke-dasharray"),v=this.getStyle("stroke-dashoffset");if(f.hasValue()&&(t.lineCap=f.getString()),p.hasValue()&&(t.lineJoin=p.getString()),y.hasValue()&&(t.miterLimit=y.getNumber()),m.hasValue()&&"none"!==m.getString()){var x=q(m.getString());"undefined"!==typeof t.setLineDash?t.setLineDash(x):"undefined"!==typeof t.webkitLineDash?t.webkitLineDash=x:"undefined"===typeof t.mozDash||1===x.length&&0===x[0]||(t.mozDash=x);var b=v.getPixels();"undefined"!==typeof t.lineDashOffset?t.lineDashOffset=b:"undefined"!==typeof t.webkitLineDashOffset?t.webkitLineDashOffset=b:"undefined"!==typeof t.mozDashOffset&&(t.mozDashOffset=b)}}if(this.modifiedEmSizeStack=!1,"undefined"!==typeof t.font){var S=this.getStyle("font"),w=this.getStyle("font-style"),T=this.getStyle("font-variant"),A=this.getStyle("font-weight"),C=this.getStyle("font-size"),P=this.getStyle("font-family"),O=new Xt(w.getString(),T.getString(),A.getString(),C.hasValue()?"".concat(C.getPixels(!0),"px"):"",P.getString(),Xt.parse(S.getString(),t.font));w.setValue(O.fontStyle),T.setValue(O.fontVariant),A.setValue(O.fontWeight),C.setValue(O.fontSize),P.setValue(O.fontFamily),t.font=O.toString(),C.isPixels()&&(this.document.emSize=C.getPixels(),this.modifiedEmSizeStack=!0)}e||(this.applyEffects(t),t.globalAlpha=this.calculateOpacity())}clearContext(t){super.clearContext(t),this.modifiedEmSizeStack&&this.document.popEmSize()}}class Qt extends qt{constructor(t,e,r){super(t,e,r),this.type="path",this.pathParser=null,this.pathParser=new jt(this.getAttribute("d").getString())}path(t){var{pathParser:e}=this,r=new Yt;e.reset(),t&&t.beginPath();while(!e.isEnd())switch(e.next().type){case jt.MOVE_TO:this.pathM(t,r);break;case jt.LINE_TO:this.pathL(t,r);break;case jt.HORIZ_LINE_TO:this.pathH(t,r);break;case jt.VERT_LINE_TO:this.pathV(t,r);break;case jt.CURVE_TO:this.pathC(t,r);break;case jt.SMOOTH_CURVE_TO:this.pathS(t,r);break;case jt.QUAD_TO:this.pathQ(t,r);break;case jt.SMOOTH_QUAD_TO:this.pathT(t,r);break;case jt.ARC:this.pathA(t,r);break;case jt.CLOSE_PATH:this.pathZ(t,r);break}return r}getBoundingBox(t){return this.path()}getMarkers(){var{pathParser:t}=this,e=t.getMarkerPoints(),r=t.getMarkerAngles(),i=e.map(((t,e)=>[t,r[e]]));return i}renderChildren(t){this.path(t),this.document.screen.mouse.checkPath(this,t);var e=this.getStyle("fill-rule");""!==t.fillStyle&&("inherit"!==e.getString("inherit")?t.fill(e.getString()):t.fill()),""!==t.strokeStyle&&("non-scaling-stroke"===this.getAttribute("vector-effect").getString()?(t.save(),t.setTransform(1,0,0,1,0,0),t.stroke(),t.restore()):t.stroke());var r=this.getMarkers();if(r){var i=r.length-1,n=this.getStyle("marker-start"),a=this.getStyle("marker-mid"),s=this.getStyle("marker-end");if(n.isUrlDefinition()){var o=n.getDefinition(),[h,u]=r[0];o.render(t,h,u)}if(a.isUrlDefinition())for(var l=a.getDefinition(),c=1;c1&&(i*=Math.sqrt(c),n*=Math.sqrt(c));var g=(s===o?-1:1)*Math.sqrt((Math.pow(i,2)*Math.pow(n,2)-Math.pow(i,2)*Math.pow(l.y,2)-Math.pow(n,2)*Math.pow(l.x,2))/(Math.pow(i,2)*Math.pow(l.y,2)+Math.pow(n,2)*Math.pow(l.x,2)));isNaN(g)&&(g=0);var d=new xt(g*i*l.y/n,g*-n*l.x/i),f=new xt((e.x+u.x)/2+Math.cos(h)*d.x-Math.sin(h)*d.y,(e.y+u.y)/2+Math.sin(h)*d.x+Math.cos(h)*d.y),p=ut([1,0],[(l.x-d.x)/i,(l.y-d.y)/n]),y=[(l.x-d.x)/i,(l.y-d.y)/n],m=[(-l.x-d.x)/i,(-l.y-d.y)/n],v=ut(y,m);return ht(y,m)<=-1&&(v=Math.PI),ht(y,m)>=1&&(v=0),{currentPoint:u,rX:i,rY:n,sweepFlag:o,xAxisRotation:h,centp:f,a1:p,ad:v}}pathA(t,e){var{pathParser:r}=this,{currentPoint:i,rX:n,rY:a,sweepFlag:s,xAxisRotation:o,centp:h,a1:u,ad:l}=Qt.pathA(r),c=1-s?1:-1,g=u+c*(l/2),d=new xt(h.x+n*Math.cos(g),h.y+a*Math.sin(g));if(r.addMarkerAngle(d,g-c*Math.PI/2),r.addMarkerAngle(i,g-c*Math.PI),e.addPoint(i.x,i.y),t&&!isNaN(u)&&!isNaN(l)){var f=n>a?n:a,p=n>a?1:n/a,y=n>a?a/n:1;t.translate(h.x,h.y),t.rotate(o),t.scale(p,y),t.arc(0,0,f,u,u+l,Boolean(1-s)),t.scale(1/p,1/y),t.rotate(-o),t.translate(-h.x,-h.y)}}static pathZ(t){t.current=t.start}pathZ(t,e){Qt.pathZ(this.pathParser),t&&e.x1!==e.x2&&e.y1!==e.y2&&t.closePath()}}class Wt extends Qt{constructor(t,e,r){super(t,e,r),this.type="glyph",this.horizAdvX=this.getAttribute("horiz-adv-x").getNumber(),this.unicode=this.getAttribute("unicode").getString(),this.arabicForm=this.getAttribute("arabic-form").getString()}}class Gt extends qt{constructor(t,e,r){super(t,e,new.target===Gt||r),this.type="text",this.x=0,this.y=0,this.measureCache=-1}setContext(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];super.setContext(t,e);var r=this.getStyle("dominant-baseline").getTextBaseline()||this.getStyle("alignment-baseline").getTextBaseline();r&&(t.textBaseline=r)}initializeCoordinates(){this.x=0,this.y=0,this.leafTexts=[],this.textChunkStart=0,this.minX=Number.POSITIVE_INFINITY,this.maxX=Number.NEGATIVE_INFINITY}getBoundingBox(t){if("text"!==this.type)return this.getTElementBoundingBox(t);this.initializeCoordinates(),this.adjustChildCoordinatesRecursive(t);var e=null;return this.children.forEach(((r,i)=>{var n=this.getChildBoundingBox(t,this,this,i);e?e.addBoundingBox(n):e=n})),e}getFontSize(){var{document:t,parent:e}=this,r=Xt.parse(t.ctx.font).fontSize,i=e.getStyle("font-size").getNumber(r);return i}getTElementBoundingBox(t){var e=this.getFontSize();return new Yt(this.x,this.y-e,this.x+this.measureText(t),this.y)}getGlyph(t,e,r){var i=e[r],n=null;if(t.isArabic){var a=e.length,s=e[r-1],o=e[r+1],h="isolated";if((0===r||" "===s)&&r0&&" "!==s&&r0&&" "!==s&&(r===a-1||" "===o)&&(h="initial"),"undefined"!==typeof t.glyphs[i]){var u=t.glyphs[i];n=u instanceof Wt?u:u[h]}}else n=t.glyphs[i];return n||(n=t.missingGlyph),n}getText(){return""}getTextFromNode(t){var e=t||this.node,r=Array.from(e.parentNode.childNodes),i=r.indexOf(e),n=r.length-1,a=X(e.textContent||"");return 0===i&&(a=Y(a)),i===n&&(a=j(a)),a}renderChildren(t){if("text"===this.type){this.initializeCoordinates(),this.adjustChildCoordinatesRecursive(t),this.children.forEach(((e,r)=>{this.renderChild(t,this,this,r)}));var{mouse:e}=this.document.screen;e.isWorking()&&e.checkBoundingBox(this,this.getBoundingBox(t))}else this.renderTElementChildren(t)}renderTElementChildren(t){var{document:e,parent:r}=this,i=this.getText(),n=r.getStyle("font-family").getDefinition();if(n)for(var{unitsPerEm:a}=n.fontFace,s=Xt.parse(e.ctx.font),o=r.getStyle("font-size").getNumber(s.fontSize),h=r.getStyle("font-style").getString(s.fontStyle),u=o/a,l=n.isRTL?i.split("").reverse().join(""):i,c=q(r.getAttribute("dx").getString()),g=l.length,d=0;d=this.leafTexts.length)){var t=this.leafTexts[this.textChunkStart],e=t.getStyle("text-anchor").getString("start"),r=!1,i=0;i="start"===e&&!r||"end"===e&&r?t.x-this.minX:"end"===e&&!r||"start"===e&&r?t.x-this.maxX:t.x-(this.minX+this.maxX)/2;for(var n=this.textChunkStart;n{this.adjustChildCoordinatesRecursiveCore(t,this,this,r)})),this.applyAnchoring()}adjustChildCoordinatesRecursiveCore(t,e,r,i){var n=r.children[i];n.children.length>0?n.children.forEach(((r,i)=>{e.adjustChildCoordinatesRecursiveCore(t,e,n,i)})):this.adjustChildCoordinates(t,e,r,i)}adjustChildCoordinates(t,e,r,i){var n=r.children[i];if("function"!==typeof n.measureText)return n;t.save(),n.setContext(t,!0);var a=n.getAttribute("x"),s=n.getAttribute("y"),o=n.getAttribute("dx"),h=n.getAttribute("dy"),u=n.getStyle("font-family").getDefinition(),l=Boolean(u)&&u.isRTL;0===i&&(a.hasValue()||a.setValue(n.getInheritedAttribute("x")),s.hasValue()||s.setValue(n.getInheritedAttribute("y")),o.hasValue()||o.setValue(n.getInheritedAttribute("dx")),h.hasValue()||h.setValue(n.getInheritedAttribute("dy")));var c=n.measureText(t);return l&&(e.x-=c),a.hasValue()?(e.applyAnchoring(),n.x=a.getPixels("x"),o.hasValue()&&(n.x+=o.getPixels("x"))):(o.hasValue()&&(e.x+=o.getPixels("x")),n.x=e.x),e.x=n.x,l||(e.x+=c),s.hasValue()?(n.y=s.getPixels("y"),h.hasValue()&&(n.y+=h.getPixels("y"))):(h.hasValue()&&(e.y+=h.getPixels("y")),n.y=e.y),e.y=n.y,e.leafTexts.push(n),e.minX=Math.min(e.minX,n.x,n.x+c),e.maxX=Math.max(e.maxX,n.x,n.x+c),n.clearContext(t),t.restore(),n}getChildBoundingBox(t,e,r,i){var n=r.children[i];if("function"!==typeof n.getBoundingBox)return null;var a=n.getBoundingBox(t);return a?(n.children.forEach(((r,i)=>{var s=e.getChildBoundingBox(t,e,n,i);a.addBoundingBox(s)})),a):null}renderChild(t,e,r,i){var n=r.children[i];n.render(t),n.children.forEach(((r,i)=>{e.renderChild(t,e,n,i)}))}measureText(t){var{measureCache:e}=this;if(~e)return e;var r=this.getText(),i=this.measureTargetText(t,r);return this.measureCache=i,i}measureTargetText(t,e){if(!e.length)return 0;var{parent:r}=this,i=r.getStyle("font-family").getDefinition();if(i){for(var n=this.getFontSize(),a=i.isRTL?e.split("").reverse().join(""):e,s=q(r.getAttribute("dx").getString()),o=a.length,h=0,u=0;u0?"":this.getTextFromNode()}getText(){return this.text}}class Zt extends $t{constructor(){super(...arguments),this.type="textNode"}}class Kt extends qt{constructor(){super(...arguments),this.type="svg",this.root=!1}setContext(t){var e,{document:r}=this,{screen:i,window:n}=r,a=t.canvas;if(i.setDefaults(t),a.style&&"undefined"!==typeof t.font&&n&&"undefined"!==typeof n.getComputedStyle){t.font=n.getComputedStyle(a).getPropertyValue("font");var s=new mt(r,"fontSize",Xt.parse(t.font).fontSize);s.hasValue()&&(r.rootEmSize=s.getPixels("y"),r.emSize=r.rootEmSize)}this.getAttribute("x").hasValue()||this.getAttribute("x",!0).setValue(0),this.getAttribute("y").hasValue()||this.getAttribute("y",!0).setValue(0);var{width:o,height:h}=i.viewPort;this.getStyle("width").hasValue()||this.getStyle("width",!0).setValue("100%"),this.getStyle("height").hasValue()||this.getStyle("height",!0).setValue("100%"),this.getStyle("color").hasValue()||this.getStyle("color",!0).setValue("black");var u=this.getAttribute("refX"),l=this.getAttribute("refY"),c=this.getAttribute("viewBox"),g=c.hasValue()?q(c.getString()):null,d=!this.root&&"visible"!==this.getStyle("overflow").getValue("hidden"),f=0,p=0,y=0,m=0;g&&(f=g[0],p=g[1]),this.root||(o=this.getStyle("width").getPixels("x"),h=this.getStyle("height").getPixels("y"),"marker"===this.type&&(y=f,m=p,f=0,p=0)),i.viewPort.setCurrent(o,h),!this.node||this.parent&&"foreignObject"!==(null===(e=this.node.parentNode)||void 0===e?void 0:e.nodeName)||!this.getStyle("transform",!1,!0).hasValue()||this.getStyle("transform-origin",!1,!0).hasValue()||this.getStyle("transform-origin",!0,!0).setValue("50% 50%"),super.setContext(t),t.translate(this.getAttribute("x").getPixels("x"),this.getAttribute("y").getPixels("y")),g&&(o=g[2],h=g[3]),r.setViewBox({ctx:t,aspectRatio:this.getAttribute("preserveAspectRatio").getString(),width:i.viewPort.width,desiredWidth:o,height:i.viewPort.height,desiredHeight:h,minX:f,minY:p,refX:u.getValue(),refY:l.getValue(),clip:d,clipX:y,clipY:m}),g&&(i.viewPort.removeCurrent(),i.viewPort.setCurrent(o,h))}clearContext(t){super.clearContext(t),this.document.screen.viewPort.removeCurrent()}resize(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=this.getAttribute("width",!0),n=this.getAttribute("height",!0),a=this.getAttribute("viewBox"),s=this.getAttribute("style"),o=i.getNumber(0),h=n.getNumber(0);if(r)if("string"===typeof r)this.getAttribute("preserveAspectRatio",!0).setValue(r);else{var u=this.getAttribute("preserveAspectRatio");u.hasValue()&&u.setValue(u.getString().replace(/^\s*(\S.*\S)\s*$/,"$1"))}if(i.setValue(t),n.setValue(e),a.hasValue()||a.setValue("0 0 ".concat(o||t," ").concat(h||e)),s.hasValue()){var l=this.getStyle("width"),c=this.getStyle("height");l.hasValue()&&l.setValue("".concat(t,"px")),c.hasValue()&&c.setValue("".concat(e,"px"))}}}class Jt extends Qt{constructor(){super(...arguments),this.type="rect"}path(t){var e=this.getAttribute("x").getPixels("x"),r=this.getAttribute("y").getPixels("y"),i=this.getStyle("width",!1,!0).getPixels("x"),n=this.getStyle("height",!1,!0).getPixels("y"),a=this.getAttribute("rx"),s=this.getAttribute("ry"),o=a.getPixels("x"),h=s.getPixels("y");if(a.hasValue()&&!s.hasValue()&&(h=o),s.hasValue()&&!a.hasValue()&&(o=h),o=Math.min(o,i/2),h=Math.min(h,n/2),t){var u=(Math.sqrt(2)-1)/3*4;t.beginPath(),n>0&&i>0&&(t.moveTo(e+o,r),t.lineTo(e+i-o,r),t.bezierCurveTo(e+i-o+u*o,r,e+i,r+h-u*h,e+i,r+h),t.lineTo(e+i,r+n-h),t.bezierCurveTo(e+i,r+n-h+u*h,e+i-o+u*o,r+n,e+i-o,r+n),t.lineTo(e+o,r+n),t.bezierCurveTo(e+o-u*o,r+n,e,r+n-h+u*h,e,r+n-h),t.lineTo(e,r+h),t.bezierCurveTo(e,r+h-u*h,e+o-u*o,r,e+o,r),t.closePath())}return new Yt(e,r,e+i,r+n)}getMarkers(){return null}}class te extends Qt{constructor(){super(...arguments),this.type="circle"}path(t){var e=this.getAttribute("cx").getPixels("x"),r=this.getAttribute("cy").getPixels("y"),i=this.getAttribute("r").getPixels();return t&&i>0&&(t.beginPath(),t.arc(e,r,i,0,2*Math.PI,!1),t.closePath()),new Yt(e-i,r-i,e+i,r+i)}getMarkers(){return null}}class ee extends Qt{constructor(){super(...arguments),this.type="ellipse"}path(t){var e=(Math.sqrt(2)-1)/3*4,r=this.getAttribute("rx").getPixels("x"),i=this.getAttribute("ry").getPixels("y"),n=this.getAttribute("cx").getPixels("x"),a=this.getAttribute("cy").getPixels("y");return t&&r>0&&i>0&&(t.beginPath(),t.moveTo(n+r,a),t.bezierCurveTo(n+r,a+e*i,n+e*r,a+i,n,a+i),t.bezierCurveTo(n-e*r,a+i,n-r,a+e*i,n-r,a),t.bezierCurveTo(n-r,a-e*i,n-e*r,a-i,n,a-i),t.bezierCurveTo(n+e*r,a-i,n+r,a-e*i,n+r,a),t.closePath()),new Yt(n-r,a-i,n+r,a+i)}getMarkers(){return null}}class re extends Qt{constructor(){super(...arguments),this.type="line"}getPoints(){return[new xt(this.getAttribute("x1").getPixels("x"),this.getAttribute("y1").getPixels("y")),new xt(this.getAttribute("x2").getPixels("x"),this.getAttribute("y2").getPixels("y"))]}path(t){var[{x:e,y:r},{x:i,y:n}]=this.getPoints();return t&&(t.beginPath(),t.moveTo(e,r),t.lineTo(i,n)),new Yt(e,r,i,n)}getMarkers(){var[t,e]=this.getPoints(),r=t.angleTo(e);return[[t,r],[e,r]]}}class ie extends Qt{constructor(t,e,r){super(t,e,r),this.type="polyline",this.points=[],this.points=xt.parsePath(this.getAttribute("points").getString())}path(t){var{points:e}=this,[{x:r,y:i}]=e,n=new Yt(r,i);return t&&(t.beginPath(),t.moveTo(r,i)),e.forEach((e=>{var{x:r,y:i}=e;n.addPoint(r,i),t&&t.lineTo(r,i)})),n}getMarkers(){var{points:t}=this,e=t.length-1,r=[];return t.forEach(((i,n)=>{n!==e&&r.push([i,i.angleTo(t[n+1])])})),r.length>0&&r.push([t[t.length-1],r[r.length-1][1]]),r}}class ne extends ie{constructor(){super(...arguments),this.type="polygon"}path(t){var e=super.path(t),[{x:r,y:i}]=this.points;return t&&(t.lineTo(r,i),t.closePath()),e}}class ae extends Dt{constructor(){super(...arguments),this.type="pattern"}createPattern(t,e,r){var i=this.getStyle("width").getPixels("x",!0),n=this.getStyle("height").getPixels("y",!0),a=new Kt(this.document,null);a.attributes.viewBox=new mt(this.document,"viewBox",this.getAttribute("viewBox").getValue()),a.attributes.width=new mt(this.document,"width","".concat(i,"px")),a.attributes.height=new mt(this.document,"height","".concat(n,"px")),a.attributes.transform=new mt(this.document,"transform",this.getAttribute("patternTransform").getValue()),a.children=this.children;var s=this.document.createCanvas(i,n),o=s.getContext("2d"),h=this.getAttribute("x"),u=this.getAttribute("y");h.hasValue()&&u.hasValue()&&o.translate(h.getPixels("x",!0),u.getPixels("y",!0)),r.hasValue()?this.styles["fill-opacity"]=r:Reflect.deleteProperty(this.styles,"fill-opacity");for(var l=-1;l<=1;l++)for(var c=-1;c<=1;c++)o.save(),a.attributes.x=new mt(this.document,"x",l*s.width),a.attributes.y=new mt(this.document,"y",c*s.height),a.render(o),o.restore();var g=t.createPattern(s,"repeat");return g}}class se extends Dt{constructor(){super(...arguments),this.type="marker"}render(t,e,r){if(e){var{x:i,y:n}=e,a=this.getAttribute("orient").getString("auto"),s=this.getAttribute("markerUnits").getString("strokeWidth");t.translate(i,n),"auto"===a&&t.rotate(r),"strokeWidth"===s&&t.scale(t.lineWidth,t.lineWidth),t.save();var o=new Kt(this.document,null);o.type=this.type,o.attributes.viewBox=new mt(this.document,"viewBox",this.getAttribute("viewBox").getValue()),o.attributes.refX=new mt(this.document,"refX",this.getAttribute("refX").getValue()),o.attributes.refY=new mt(this.document,"refY",this.getAttribute("refY").getValue()),o.attributes.width=new mt(this.document,"width",this.getAttribute("markerWidth").getValue()),o.attributes.height=new mt(this.document,"height",this.getAttribute("markerHeight").getValue()),o.attributes.overflow=new mt(this.document,"overflow",this.getAttribute("overflow").getValue()),o.attributes.fill=new mt(this.document,"fill",this.getAttribute("fill").getColor("black")),o.attributes.stroke=new mt(this.document,"stroke",this.getAttribute("stroke").getValue("none")),o.children=this.children,o.render(t),t.restore(),"strokeWidth"===s&&t.scale(1/t.lineWidth,1/t.lineWidth),"auto"===a&&t.rotate(-r),t.translate(-i,-n)}}}class oe extends Dt{constructor(){super(...arguments),this.type="defs"}render(){}}class he extends qt{constructor(){super(...arguments),this.type="g"}getBoundingBox(t){var e=new Yt;return this.children.forEach((r=>{e.addBoundingBox(r.getBoundingBox(t))})),e}}class ue extends Dt{constructor(t,e,r){super(t,e,r),this.attributesToInherit=["gradientUnits"],this.stops=[];var{stops:i,children:n}=this;n.forEach((t=>{"stop"===t.type&&i.push(t)}))}getGradientUnits(){return this.getAttribute("gradientUnits").getString("objectBoundingBox")}createGradient(t,e,r){var i=this;this.getHrefAttribute().hasValue()&&(i=this.getHrefAttribute().getDefinition(),this.inheritStopContainer(i));var{stops:n}=i,a=this.getGradient(t,e);if(!a)return this.addParentOpacity(r,n[n.length-1].color);if(n.forEach((t=>{a.addColorStop(t.offset,this.addParentOpacity(r,t.color))})),this.getAttribute("gradientTransform").hasValue()){var{document:s}=this,{MAX_VIRTUAL_PIXELS:o,viewPort:h}=s.screen,[u]=h.viewPorts,l=new Jt(s,null);l.attributes.x=new mt(s,"x",-o/3),l.attributes.y=new mt(s,"y",-o/3),l.attributes.width=new mt(s,"width",o),l.attributes.height=new mt(s,"height",o);var c=new he(s,null);c.attributes.transform=new mt(s,"transform",this.getAttribute("gradientTransform").getValue()),c.children=[l];var g=new Kt(s,null);g.attributes.x=new mt(s,"x",0),g.attributes.y=new mt(s,"y",0),g.attributes.width=new mt(s,"width",u.width),g.attributes.height=new mt(s,"height",u.height),g.children=[c];var d=s.createCanvas(u.width,u.height),f=d.getContext("2d");return f.fillStyle=a,g.render(f),f.createPattern(d,"no-repeat")}return a}inheritStopContainer(t){this.attributesToInherit.forEach((e=>{!this.getAttribute(e).hasValue()&&t.getAttribute(e).hasValue()&&this.getAttribute(e,!0).setValue(t.getAttribute(e).getValue())}))}addParentOpacity(t,e){if(t.hasValue()){var r=new mt(this.document,"color",e);return r.addOpacity(t).getColor()}return e}}class le extends ue{constructor(t,e,r){super(t,e,r),this.type="linearGradient",this.attributesToInherit.push("x1","y1","x2","y2")}getGradient(t,e){var r="objectBoundingBox"===this.getGradientUnits(),i=r?e.getBoundingBox(t):null;if(r&&!i)return null;this.getAttribute("x1").hasValue()||this.getAttribute("y1").hasValue()||this.getAttribute("x2").hasValue()||this.getAttribute("y2").hasValue()||(this.getAttribute("x1",!0).setValue(0),this.getAttribute("y1",!0).setValue(0),this.getAttribute("x2",!0).setValue(1),this.getAttribute("y2",!0).setValue(0));var n=r?i.x+i.width*this.getAttribute("x1").getNumber():this.getAttribute("x1").getPixels("x"),a=r?i.y+i.height*this.getAttribute("y1").getNumber():this.getAttribute("y1").getPixels("y"),s=r?i.x+i.width*this.getAttribute("x2").getNumber():this.getAttribute("x2").getPixels("x"),o=r?i.y+i.height*this.getAttribute("y2").getNumber():this.getAttribute("y2").getPixels("y");return n===s&&a===o?null:t.createLinearGradient(n,a,s,o)}}class ce extends ue{constructor(t,e,r){super(t,e,r),this.type="radialGradient",this.attributesToInherit.push("cx","cy","r","fx","fy","fr")}getGradient(t,e){var r="objectBoundingBox"===this.getGradientUnits(),i=e.getBoundingBox(t);if(r&&!i)return null;this.getAttribute("cx").hasValue()||this.getAttribute("cx",!0).setValue("50%"),this.getAttribute("cy").hasValue()||this.getAttribute("cy",!0).setValue("50%"),this.getAttribute("r").hasValue()||this.getAttribute("r",!0).setValue("50%");var n=r?i.x+i.width*this.getAttribute("cx").getNumber():this.getAttribute("cx").getPixels("x"),a=r?i.y+i.height*this.getAttribute("cy").getNumber():this.getAttribute("cy").getPixels("y"),s=n,o=a;this.getAttribute("fx").hasValue()&&(s=r?i.x+i.width*this.getAttribute("fx").getNumber():this.getAttribute("fx").getPixels("x")),this.getAttribute("fy").hasValue()&&(o=r?i.y+i.height*this.getAttribute("fy").getNumber():this.getAttribute("fy").getPixels("y"));var h=r?(i.width+i.height)/2*this.getAttribute("r").getNumber():this.getAttribute("r").getPixels(),u=this.getAttribute("fr").getPixels();return t.createRadialGradient(s,o,u,n,a,h)}}class ge extends Dt{constructor(t,e,r){super(t,e,r),this.type="stop";var i=Math.max(0,Math.min(1,this.getAttribute("offset").getNumber())),n=this.getStyle("stop-opacity"),a=this.getStyle("stop-color",!0);""===a.getString()&&a.setValue("#000"),n.hasValue()&&(a=a.addOpacity(n)),this.offset=i,this.color=a.getColor()}}class de extends Dt{constructor(t,e,r){super(t,e,r),this.type="animate",this.duration=0,this.initialValue=null,this.initialUnits="",this.removed=!1,this.frozen=!1,t.screen.animations.push(this),this.begin=this.getAttribute("begin").getMilliseconds(),this.maxDuration=this.begin+this.getAttribute("dur").getMilliseconds(),this.from=this.getAttribute("from"),this.to=this.getAttribute("to"),this.values=new mt(t,"values",null);var i=this.getAttribute("values");i.hasValue()&&this.values.setValue(i.getString().split(";"))}getProperty(){var t=this.getAttribute("attributeType").getString(),e=this.getAttribute("attributeName").getString();return"CSS"===t?this.parent.getStyle(e,!0):this.parent.getAttribute(e,!0)}calcValue(){var{initialUnits:t}=this,{progress:e,from:r,to:i}=this.getProgress(),n=r.getNumber()+(i.getNumber()-r.getNumber())*e;return"%"===t&&(n*=100),"".concat(n).concat(t)}update(t){var{parent:e}=this,r=this.getProperty();if(this.initialValue||(this.initialValue=r.getString(),this.initialUnits=r.getUnits()),this.duration>this.maxDuration){var i=this.getAttribute("fill").getString("remove");if("indefinite"===this.getAttribute("repeatCount").getString()||"indefinite"===this.getAttribute("repeatDur").getString())this.duration=0;else if("freeze"!==i||this.frozen){if("remove"===i&&!this.removed)return this.removed=!0,r.setValue(e.animationFrozen?e.animationFrozenValue:this.initialValue),!0}else this.frozen=!0,e.animationFrozen=!0,e.animationFrozenValue=r.getString();return!1}this.duration+=t;var n=!1;if(this.begin{var i=n[r];return e+(i-e)*t})).join(" ");return a}}class ye extends Dt{constructor(t,e,r){super(t,e,r),this.type="font",this.glyphs={},this.horizAdvX=this.getAttribute("horiz-adv-x").getNumber();var{definitions:i}=t,{children:n}=this;for(var a of n)switch(a.type){case"font-face":this.fontFace=a;var s=a.getStyle("font-family");s.hasValue()&&(i[s.getString()]=this);break;case"missing-glyph":this.missingGlyph=a;break;case"glyph":var o=a;o.arabicForm?(this.isRTL=!0,this.isArabic=!0,"undefined"===typeof this.glyphs[o.unicode]&&(this.glyphs[o.unicode]={}),this.glyphs[o.unicode][o.arabicForm]=o):this.glyphs[o.unicode]=o;break}}render(){}}class me extends Dt{constructor(t,e,r){super(t,e,r),this.type="font-face",this.ascent=this.getAttribute("ascent").getNumber(),this.descent=this.getAttribute("descent").getNumber(),this.unitsPerEm=this.getAttribute("units-per-em").getNumber()}}class ve extends Qt{constructor(){super(...arguments),this.type="missing-glyph",this.horizAdvX=0}}class xe extends Gt{constructor(){super(...arguments),this.type="tref"}getText(){var t=this.getHrefAttribute().getDefinition();if(t){var e=t.children[0];if(e)return e.getText()}return""}}class be extends Gt{constructor(t,e,r){super(t,e,r),this.type="a";var{childNodes:i}=e,n=i[0],a=i.length>0&&Array.from(i).every((t=>3===t.nodeType));this.hasText=a,this.text=a?this.getTextFromNode(n):""}getText(){return this.text}renderChildren(t){if(this.hasText){super.renderChildren(t);var{document:e,x:r,y:i}=this,{mouse:n}=e.screen,a=new mt(e,"fontSize",Xt.parse(e.ctx.font).fontSize);n.isWorking()&&n.checkBoundingBox(this,new Yt(r,i-a.getPixels("y"),r+this.measureText(t),i))}else if(this.children.length>0){var s=new he(this.document,null);s.children=this.children,s.parent=this,s.render(t)}}onClick(){var{window:t}=this.document;t&&t.open(this.getHrefAttribute().getString())}onMouseMove(){var t=this.document.ctx;t.canvas.style.cursor="pointer"}}function Se(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,i)}return r}function we(t){for(var e=1;e{var{type:r,points:i}=e;switch(r){case jt.LINE_TO:t&&t.lineTo(i[0],i[1]);break;case jt.MOVE_TO:t&&t.moveTo(i[0],i[1]);break;case jt.CURVE_TO:t&&t.bezierCurveTo(i[0],i[1],i[2],i[3],i[4],i[5]);break;case jt.QUAD_TO:t&&t.quadraticCurveTo(i[0],i[1],i[2],i[3]);break;case jt.ARC:var[n,a,s,o,h,u,l,c]=i,g=s>o?s:o,d=s>o?1:s/o,f=s>o?o/s:1;t&&(t.translate(n,a),t.rotate(l),t.scale(d,f),t.arc(0,0,g,h,h+u,Boolean(1-c)),t.scale(1/d,1/f),t.rotate(-l),t.translate(-n,-a));break;case jt.CLOSE_PATH:t&&t.closePath();break}}))}renderChildren(t){this.setTextData(t),t.save();var e=this.parent.getStyle("text-decoration").getString(),r=this.getFontSize(),{glyphInfo:i}=this,n=t.fillStyle;"underline"===e&&t.beginPath(),i.forEach(((i,n)=>{var{p0:a,p1:s,rotation:o,text:h}=i;t.save(),t.translate(a.x,a.y),t.rotate(o),t.fillStyle&&t.fillText(h,0,0),t.strokeStyle&&t.strokeText(h,0,0),t.restore(),"underline"===e&&(0===n&&t.moveTo(a.x,a.y+r/8),t.lineTo(s.x,s.y+r/5))})),"underline"===e&&(t.lineWidth=r/20,t.strokeStyle=n,t.stroke(),t.closePath()),t.restore()}getLetterSpacingAt(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.letterSpacingCache[t]||0}findSegmentToFitChar(t,e,r,i,n,a,s,o,h){var u=a,l=this.measureText(t,o);" "===o&&"justify"===e&&r-1&&(u+=this.getLetterSpacingAt(h));var c=this.textHeight/20,g=this.getEquidistantPointOnPath(u,c,0),d=this.getEquidistantPointOnPath(u+l,c,0),f={p0:g,p1:d},p=g&&d?Math.atan2(d.y-g.y,d.x-g.x):0;if(s){var y=Math.cos(Math.PI/2+p)*s,m=Math.cos(-p)*s;f.p0=we(we({},g),{},{x:g.x+y,y:g.y+m}),f.p1=we(we({},d),{},{x:d.x+y,y:d.y+m})}return u+=l,{offset:u,segment:f,rotation:p}}measureText(t,e){var{measuresCache:r}=this,i=e||this.getText();if(r.has(i))return r.get(i);var n=this.measureTargetText(t,i);return r.set(i,n),n}setTextData(t){if(!this.glyphInfo){var e=this.getText(),r=e.split(""),i=e.split(" ").length-1,n=this.parent.getAttribute("dx").split().map((t=>t.getPixels("x"))),a=this.parent.getAttribute("dy").getPixels("y"),s=this.parent.getStyle("text-anchor").getString("start"),o=this.getStyle("letter-spacing"),h=this.parent.getStyle("letter-spacing"),u=0;o.hasValue()&&"inherit"!==o.getValue()?o.hasValue()&&"initial"!==o.getValue()&&"unset"!==o.getValue()&&(u=o.getPixels()):u=h.getPixels();var l=[],c=e.length;this.letterSpacingCache=l;for(var g=0;g0===r?0:t+e||0),0),f=this.measureText(t),p=Math.max(f+d,0);this.textWidth=f,this.textHeight=this.getFontSize(),this.glyphInfo=[];var y=this.getPathLength(),m=this.getStyle("startOffset").getNumber(0)*y,v=0;"middle"!==s&&"center"!==s||(v=-p/2),"end"!==s&&"right"!==s||(v=-p),v+=m,r.forEach(((e,n)=>{var{offset:o,segment:h,rotation:u}=this.findSegmentToFitChar(t,s,p,y,i,v,a,e,n);v=o,h.p0&&h.p1&&this.glyphInfo.push({text:r[n],p0:h.p0,p1:h.p1,rotation:u})}))}}parsePathData(t){if(this.pathLength=-1,!t)return[];var e=[],{pathParser:r}=t;r.reset();while(!r.isEnd()){var{current:i}=r,n=i?i.x:0,a=i?i.y:0,s=r.next(),o=s.type,h=[];switch(s.type){case jt.MOVE_TO:this.pathM(r,h);break;case jt.LINE_TO:o=this.pathL(r,h);break;case jt.HORIZ_LINE_TO:o=this.pathH(r,h);break;case jt.VERT_LINE_TO:o=this.pathV(r,h);break;case jt.CURVE_TO:this.pathC(r,h);break;case jt.SMOOTH_CURVE_TO:o=this.pathS(r,h);break;case jt.QUAD_TO:this.pathQ(r,h);break;case jt.SMOOTH_QUAD_TO:o=this.pathT(r,h);break;case jt.ARC:h=this.pathA(r);break;case jt.CLOSE_PATH:Qt.pathZ(r);break}s.type!==jt.CLOSE_PATH?e.push({type:o,points:h,start:{x:n,y:a},pathLength:this.calcLength(n,a,o,h)}):e.push({type:jt.CLOSE_PATH,points:[],pathLength:0})}return e}pathM(t,e){var{x:r,y:i}=Qt.pathM(t).point;e.push(r,i)}pathL(t,e){var{x:r,y:i}=Qt.pathL(t).point;return e.push(r,i),jt.LINE_TO}pathH(t,e){var{x:r,y:i}=Qt.pathH(t).point;return e.push(r,i),jt.LINE_TO}pathV(t,e){var{x:r,y:i}=Qt.pathV(t).point;return e.push(r,i),jt.LINE_TO}pathC(t,e){var{point:r,controlPoint:i,currentPoint:n}=Qt.pathC(t);e.push(r.x,r.y,i.x,i.y,n.x,n.y)}pathS(t,e){var{point:r,controlPoint:i,currentPoint:n}=Qt.pathS(t);return e.push(r.x,r.y,i.x,i.y,n.x,n.y),jt.CURVE_TO}pathQ(t,e){var{controlPoint:r,currentPoint:i}=Qt.pathQ(t);e.push(r.x,r.y,i.x,i.y)}pathT(t,e){var{controlPoint:r,currentPoint:i}=Qt.pathT(t);return e.push(r.x,r.y,i.x,i.y),jt.QUAD_TO}pathA(t){var{rX:e,rY:r,sweepFlag:i,xAxisRotation:n,centp:a,a1:s,ad:o}=Qt.pathA(t);return 0===i&&o>0&&(o-=2*Math.PI),1===i&&o<0&&(o+=2*Math.PI),[a.x,a.y,e,r,s,o,n,i]}calcLength(t,e,r,i){var n=0,a=null,s=null,o=0;switch(r){case jt.LINE_TO:return this.getLineLength(t,e,i[0],i[1]);case jt.CURVE_TO:for(n=0,a=this.getPointOnCubicBezier(0,t,e,i[0],i[1],i[2],i[3],i[4],i[5]),o=.01;o<=1;o+=.01)s=this.getPointOnCubicBezier(o,t,e,i[0],i[1],i[2],i[3],i[4],i[5]),n+=this.getLineLength(a.x,a.y,s.x,s.y),a=s;return n;case jt.QUAD_TO:for(n=0,a=this.getPointOnQuadraticBezier(0,t,e,i[0],i[1],i[2],i[3]),o=.01;o<=1;o+=.01)s=this.getPointOnQuadraticBezier(o,t,e,i[0],i[1],i[2],i[3]),n+=this.getLineLength(a.x,a.y,s.x,s.y),a=s;return n;case jt.ARC:n=0;var h=i[4],u=i[5],l=i[4]+u,c=Math.PI/180;if(Math.abs(h-l)l;o-=c)s=this.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],o,0),n+=this.getLineLength(a.x,a.y,s.x,s.y),a=s;else for(o=h+c;o5&&void 0!==arguments[5]?arguments[5]:e,s=arguments.length>6&&void 0!==arguments[6]?arguments[6]:r,o=(n-r)/(i-e+st),h=Math.sqrt(t*t/(1+o*o));ie)return null;var{dataArray:n}=this;for(var a of n){if(!a||!(a.pathLength<5e-5||r+a.pathLength+5e-5=0&&o>l)break;i=this.getPointOnEllipticalArc(a.points[0],a.points[1],a.points[2],a.points[3],o,a.points[6]);break;case jt.CURVE_TO:o=s/a.pathLength,o>1&&(o=1),i=this.getPointOnCubicBezier(o,a.start.x,a.start.y,a.points[0],a.points[1],a.points[2],a.points[3],a.points[4],a.points[5]);break;case jt.QUAD_TO:o=s/a.pathLength,o>1&&(o=1),i=this.getPointOnQuadraticBezier(o,a.start.x,a.start.y,a.points[0],a.points[1],a.points[2],a.points[3]);break}if(i)return i;break}r+=a.pathLength}return null}getLineLength(t,e,r,i){return Math.sqrt((r-t)*(r-t)+(i-e)*(i-e))}getPathLength(){return-1===this.pathLength&&(this.pathLength=this.dataArray.reduce(((t,e)=>e.pathLength>0?t+e.pathLength:t),0)),this.pathLength}getPointOnCubicBezier(t,e,r,i,n,a,s,o,h){var u=o*lt(t)+a*ct(t)+i*gt(t)+e*dt(t),l=h*lt(t)+s*ct(t)+n*gt(t)+r*dt(t);return{x:u,y:l}}getPointOnQuadraticBezier(t,e,r,i,n,a,s){var o=a*ft(t)+i*pt(t)+e*yt(t),h=s*ft(t)+n*pt(t)+r*yt(t);return{x:o,y:h}}getPointOnEllipticalArc(t,e,r,i,n,a){var s=Math.cos(a),o=Math.sin(a),h={x:r*Math.cos(n),y:i*Math.sin(n)};return{x:t+(h.x*s-h.y*o),y:e+(h.x*o+h.y*s)}}buildEquidistantCache(t,e){var r=this.getPathLength(),i=e||.25,n=t||r/100;if(!this.equidistantCache||this.equidistantCache.step!==n||this.equidistantCache.precision!==i){this.equidistantCache={step:n,precision:i,points:[]};for(var a=0,s=0;s<=r;s+=i){var o=this.getPointOnPath(s),h=this.getPointOnPath(s+i);o&&h&&(a+=this.getLineLength(o.x,o.y,h.x,h.y),a>=n&&(this.equidistantCache.points.push({x:o.x,y:o.y,distance:s}),a-=n))}}}getEquidistantPointOnPath(t,e,r){if(this.buildEquidistantCache(e,r),t<0||t-this.getPathLength()>5e-5)return null;var i=Math.round(t/this.getPathLength()*(this.equidistantCache.points.length-1));return this.equidistantCache.points[i]||null}}var Ae=/^\s*data:(([^/,;]+\/[^/,;]+)(?:;([^,;=]+=[^,;=]+))?)?(?:;(base64))?,(.*)$/i;class Ce extends qt{constructor(t,e,r){super(t,e,r),this.type="image",this.loaded=!1;var i=this.getHrefAttribute().getString();if(i){var n=i.endsWith(".svg")||/^\s*data:image\/svg\+xml/i.test(i);t.images.push(this),n?this.loadSvg(i):this.loadImage(i),this.isSvg=n}}loadImage(t){var e=this;return n((function*(){try{var r=yield e.document.createImage(t);e.image=r}catch(i){console.error('Error while loading image "'.concat(t,'":'),i)}e.loaded=!0}))()}loadSvg(t){var e=this;return n((function*(){var r=Ae.exec(t);if(r){var i=r[5];"base64"===r[4]?e.image=atob(i):e.image=decodeURIComponent(i)}else try{var n=yield e.document.fetch(t),a=yield n.text();e.image=a}catch(s){console.error('Error while loading image "'.concat(t,'":'),s)}e.loaded=!0}))()}renderChildren(t){var{document:e,image:r,loaded:i}=this,n=this.getAttribute("x").getPixels("x"),a=this.getAttribute("y").getPixels("y"),s=this.getStyle("width").getPixels("x"),o=this.getStyle("height").getPixels("y");if(i&&r&&s&&o){if(t.save(),t.translate(n,a),this.isSvg){var h=e.canvg.forkString(t,this.image,{ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0,ignoreClear:!0,offsetX:0,offsetY:0,scaleWidth:s,scaleHeight:o});h.document.documentElement.parent=this,h.render()}else{var u=this.image;e.setViewBox({ctx:t,aspectRatio:this.getAttribute("preserveAspectRatio").getString(),width:s,desiredWidth:u.width,height:o,desiredHeight:u.height}),this.loaded&&("undefined"===typeof u.complete||u.complete)&&t.drawImage(u,0,0)}t.restore()}}getBoundingBox(){var t=this.getAttribute("x").getPixels("x"),e=this.getAttribute("y").getPixels("y"),r=this.getStyle("width").getPixels("x"),i=this.getStyle("height").getPixels("y");return new Yt(t,e,t+r,e+i)}}class Pe extends qt{constructor(){super(...arguments),this.type="symbol"}render(t){}}class Oe{constructor(t){this.document=t,this.loaded=!1,t.fonts.push(this)}load(t,e){var r=this;return n((function*(){try{var{document:i}=r,n=yield i.canvg.parser.load(e),a=n.getElementsByTagName("font");Array.from(a).forEach((e=>{var r=i.createElement(e);i.definitions[t]=r}))}catch(s){console.error('Error while loading font "'.concat(e,'":'),s)}r.loaded=!0}))()}}class Ee extends Dt{constructor(t,e,r){super(t,e,r),this.type="style";var i=X(Array.from(e.childNodes).map((t=>t.textContent)).join("").replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^[\s]*\/\/.*)/gm,"").replace(/@import.*;/g,"")),n=i.split("}");n.forEach((e=>{var r=e.trim();if(r){var i=r.split("{"),n=i[0].split(","),a=i[1].split(";");n.forEach((e=>{var r=e.trim();if(r){var i=t.styles[r]||{};if(a.forEach((e=>{var r=e.indexOf(":"),n=e.substr(0,r).trim(),a=e.substr(r+1,e.length-r).trim();n&&a&&(i[n]=new mt(t,n,a))})),t.styles[r]=i,t.stylesSpecificity[r]=at(r),"@font-face"===r){var n=i["font-family"].getString().replace(/"|'/g,""),s=i.src.getString().split(",");s.forEach((e=>{if(e.indexOf('format("svg")')>0){var r=G(e);r&&new Oe(t).load(n,r)}}))}}}))}}))}}Ee.parseExternalUrl=G;class Me extends qt{constructor(){super(...arguments),this.type="use"}setContext(t){super.setContext(t);var e=this.getAttribute("x"),r=this.getAttribute("y");e.hasValue()&&t.translate(e.getPixels("x"),0),r.hasValue()&&t.translate(0,r.getPixels("y"))}path(t){var{element:e}=this;e&&e.path(t)}renderChildren(t){var{document:e,element:r}=this;if(r){var i=r;if("symbol"===r.type&&(i=new Kt(e,null),i.attributes.viewBox=new mt(e,"viewBox",r.getAttribute("viewBox").getString()),i.attributes.preserveAspectRatio=new mt(e,"preserveAspectRatio",r.getAttribute("preserveAspectRatio").getString()),i.attributes.overflow=new mt(e,"overflow",r.getAttribute("overflow").getString()),i.children=r.children,r.styles.opacity=new mt(e,"opacity",this.calculateOpacity())),"svg"===i.type){var n=this.getStyle("width",!1,!0),a=this.getStyle("height",!1,!0);n.hasValue()&&(i.attributes.width=new mt(e,"width",n.getString())),a.hasValue()&&(i.attributes.height=new mt(e,"height",a.getString()))}var s=i.parent;i.parent=this,i.render(t),i.parent=s}}getBoundingBox(t){var{element:e}=this;return e?e.getBoundingBox(t):null}elementTransform(){var{document:t,element:e}=this;return Lt.fromElement(t,e)}get element(){return this.cachedElement||(this.cachedElement=this.getHrefAttribute().getDefinition()),this.cachedElement}}function Ne(t,e,r,i,n,a){return t[r*i*4+4*e+a]}function Ve(t,e,r,i,n,a,s){t[r*i*4+4*e+a]=s}function _e(t,e,r){var i=t[e];return i*r}function ke(t,e,r,i){return e+Math.cos(t)*r+Math.sin(t)*i}class Re extends Dt{constructor(t,e,r){super(t,e,r),this.type="feColorMatrix";var i=q(this.getAttribute("values").getString());switch(this.getAttribute("type").getString("matrix")){case"saturate":var n=i[0];i=[.213+.787*n,.715-.715*n,.072-.072*n,0,0,.213-.213*n,.715+.285*n,.072-.072*n,0,0,.213-.213*n,.715-.715*n,.072+.928*n,0,0,0,0,0,1,0,0,0,0,0,1];break;case"hueRotate":var a=i[0]*Math.PI/180;i=[ke(a,.213,.787,-.213),ke(a,.715,-.715,-.715),ke(a,.072,-.072,.928),0,0,ke(a,.213,-.213,.143),ke(a,.715,.285,.14),ke(a,.072,-.072,-.283),0,0,ke(a,.213,-.213,-.787),ke(a,.715,-.715,.715),ke(a,.072,.928,.072),0,0,0,0,0,1,0,0,0,0,0,1];break;case"luminanceToAlpha":i=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,.2125,.7154,.0721,0,0,0,0,0,0,1];break}this.matrix=i,this.includeOpacity=this.getAttribute("includeOpacity").hasValue()}apply(t,e,r,i,n){for(var{includeOpacity:a,matrix:s}=this,o=t.getImageData(0,0,i,n),h=0;h{o.addBoundingBox(e.getBoundingBox(t))})),i=Math.floor(o.x1),n=Math.floor(o.y1),a=Math.floor(o.width),s=Math.floor(o.height)}var h=this.removeStyles(e,Ie.ignoreStyles),u=r.createCanvas(i+a,n+s),l=u.getContext("2d");r.screen.setDefaults(l),this.renderChildren(l),new Re(r,{nodeType:1,childNodes:[],attributes:[{nodeName:"type",value:"luminanceToAlpha"},{nodeName:"includeOpacity",value:"true"}]}).apply(l,0,0,i+a,n+s);var c=r.createCanvas(i+a,n+s),g=c.getContext("2d");r.screen.setDefaults(g),e.render(g),g.globalCompositeOperation="destination-in",g.fillStyle=l.createPattern(u,"no-repeat"),g.fillRect(0,0,i+a,n+s),t.fillStyle=g.createPattern(c,"no-repeat"),t.fillRect(0,0,i+a,n+s),this.restoreStyles(e,h)}render(t){}}Ie.ignoreStyles=["mask","transform","clip-path"];var Le=()=>{};class De extends Dt{constructor(){super(...arguments),this.type="clipPath"}apply(t){var{document:e}=this,r=Reflect.getPrototypeOf(t),{beginPath:i,closePath:n}=t;r&&(r.beginPath=Le,r.closePath=Le),Reflect.apply(i,t,[]),this.children.forEach((i=>{if("undefined"!==typeof i.path){var a="undefined"!==typeof i.elementTransform?i.elementTransform():null;a||(a=Lt.fromElement(e,i)),a&&a.apply(t),i.path(t),r&&(r.closePath=n),a&&a.unapply(t)}})),Reflect.apply(n,t,[]),t.clip(),r&&(r.beginPath=i,r.closePath=n)}render(t){}}class Be extends Dt{constructor(){super(...arguments),this.type="filter"}apply(t,e){var{document:r,children:i}=this,n=e.getBoundingBox(t);if(n){var a=0,s=0;i.forEach((t=>{var e=t.extraFilterDistance||0;a=Math.max(a,e),s=Math.max(s,e)}));var o=Math.floor(n.width),h=Math.floor(n.height),u=o+2*a,l=h+2*s;if(!(u<1||l<1)){var c=Math.floor(n.x),g=Math.floor(n.y),d=this.removeStyles(e,Be.ignoreStyles),f=r.createCanvas(u,l),p=f.getContext("2d");r.screen.setDefaults(p),p.translate(-c+a,-g+s),e.render(p),i.forEach((t=>{"function"===typeof t.apply&&t.apply(p,0,0,u,l)})),t.drawImage(f,0,0,u,l,c-a,g-s,u,l),this.restoreStyles(e,d)}}}render(t){}}Be.ignoreStyles=["filter","transform","clip-path"];class ze extends Dt{constructor(t,e,r){super(t,e,r),this.type="feDropShadow",this.addStylesFromStyleDefinition()}apply(t,e,r,i,n){}}class He extends Dt{constructor(){super(...arguments),this.type="feMorphology"}apply(t,e,r,i,n){}}class Fe extends Dt{constructor(){super(...arguments),this.type="feComposite"}apply(t,e,r,i,n){}}class Ue extends Dt{constructor(t,e,r){super(t,e,r),this.type="feGaussianBlur",this.blurRadius=Math.floor(this.getAttribute("stdDeviation").getNumber()),this.extraFilterDistance=this.blurRadius}apply(t,e,r,i,n){var{document:a,blurRadius:s}=this,o=a.window?a.window.document.body:null,h=t.canvas;h.id=a.getUniqueId(),o&&(h.style.display="none",o.appendChild(h)),D(h,e,r,i,n,s),o&&o.removeChild(h)}}class Xe extends Dt{constructor(){super(...arguments),this.type="title"}}class Ye extends Dt{constructor(){super(...arguments),this.type="desc"}}var je={svg:Kt,rect:Jt,circle:te,ellipse:ee,line:re,polyline:ie,polygon:ne,path:Qt,pattern:ae,marker:se,defs:oe,linearGradient:le,radialGradient:ce,stop:ge,animate:de,animateColor:fe,animateTransform:pe,font:ye,"font-face":me,"missing-glyph":ve,glyph:Wt,text:Gt,tspan:$t,tref:xe,a:be,textPath:Te,image:Ce,g:he,symbol:Pe,style:Ee,use:Me,mask:Ie,clipPath:De,filter:Be,feDropShadow:ze,feMorphology:He,feComposite:Fe,feColorMatrix:Re,feGaussianBlur:Ue,title:Xe,desc:Ye};function qe(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,i)}return r}function Qe(t){for(var e=1;e1&&void 0!==arguments[1]&&arguments[1],r=document.createElement("img");return e&&(r.crossOrigin="Anonymous"),new Promise(((e,i)=>{r.onload=()=>{e(r)},r.onerror=(t,e,r,n,a)=>{i(a)},r.src=t}))})),$e.apply(this,arguments)}class Ze{constructor(t){var{rootEmSize:e=12,emSize:r=12,createCanvas:i=Ze.createCanvas,createImage:n=Ze.createImage,anonymousCrossOrigin:a}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.canvg=t,this.definitions={},this.styles={},this.stylesSpecificity={},this.images=[],this.fonts=[],this.emSizeStack=[],this.uniqueId=0,this.screen=t.screen,this.rootEmSize=e,this.emSize=r,this.createCanvas=i,this.createImage=this.bindCreateImage(n,a),this.screen.wait(this.isImagesLoaded.bind(this)),this.screen.wait(this.isFontsLoaded.bind(this))}bindCreateImage(t,e){return"boolean"===typeof e?(r,i)=>t(r,"boolean"===typeof i?i:e):t}get window(){return this.screen.window}get fetch(){return this.screen.fetch}get ctx(){return this.screen.ctx}get emSize(){var{emSizeStack:t}=this;return t[t.length-1]}set emSize(t){var{emSizeStack:e}=this;e.push(t)}popEmSize(){var{emSizeStack:t}=this;t.pop()}getUniqueId(){return"canvg".concat(++this.uniqueId)}isImagesLoaded(){return this.images.every((t=>t.loaded))}isFontsLoaded(){return this.fonts.every((t=>t.loaded))}createDocumentElement(t){var e=this.createElement(t.documentElement);return e.root=!0,e.addStylesFromStyleDefinition(),this.documentElement=e,e}createElement(t){var e=t.nodeName.replace(/^[^:]+:/,""),r=Ze.elementTypes[e];return"undefined"!==typeof r?new r(this,t):new Bt(this,t)}createTextNode(t){return new Zt(this,t)}setViewBox(t){this.screen.setViewBox(Qe({document:this},t))}}function Ke(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);e&&(i=i.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,i)}return r}function Je(t){for(var e=1;e2&&void 0!==arguments[2]?arguments[2]:{};this.parser=new Pt(r),this.screen=new Tt(t,r),this.options=r;var i=new Ze(this,r),n=i.createDocumentElement(e);this.document=i,this.documentElement=n}static from(t,e){var r=arguments;return n((function*(){var i=r.length>2&&void 0!==r[2]?r[2]:{},n=new Pt(i),a=yield n.parse(e);return new tr(t,a,i)}))()}static fromString(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=new Pt(r),n=i.parseFromString(e);return new tr(t,n,r)}fork(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return tr.from(t,e,Je(Je({},this.options),r))}forkString(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return tr.fromString(t,e,Je(Je({},this.options),r))}ready(){return this.screen.ready()}isReady(){return this.screen.isReady()}render(){var t=arguments,e=this;return n((function*(){var r=t.length>0&&void 0!==t[0]?t[0]:{};e.start(Je({enableRedraw:!0,ignoreAnimation:!0,ignoreMouse:!0},r)),yield e.ready(),e.stop()}))()}start(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},{documentElement:e,screen:r,options:i}=this;r.start(e,Je(Je({enableRedraw:!0},i),t))}stop(){this.screen.stop()}resize(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:t,r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];this.documentElement.resize(t,e,r)}}}}]); //# sourceMappingURL=7297.9bca8eed.js.map