1!function(){try{var t="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},e=(new t.Error).stack;e&&(t._sentryDebugIds=t._sentryDebugIds||{},t._sentryDebugIds[e]="6c195ba9-81b5-4f3d-817a-9c36e6c76c6d",t._sentryDebugIdIdentifier="sentry-dbid-6c195ba9-81b5-4f3d-817a-9c36e6c76c6d")}catch(t){}}();"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[6350],{34668:function(t,e,r){r.r(e),r.d(e,{AElement:function(){return AElement},AnimateColorElement:function(){return AnimateColorElement},AnimateElement:function(){return AnimateElement},AnimateTransformElement:function(){return AnimateTransformElement},BoundingBox:function(){return BoundingBox},CB1:function(){return CB1},CB2:function(){return CB2},CB3:function(){return CB3},CB4:function(){return CB4},Canvg:function(){return Canvg},CircleElement:function(){return CircleElement},ClipPathElement:function(){return ClipPathElement},DefsElement:function(){return DefsElement},DescElement:function(){return DescElement},Document:function(){return Document},Element:function(){return Element},EllipseElement:function(){return EllipseElement},FeColorMatrixElement:function(){return FeColorMatrixElement},FeCompositeElement:function(){return FeCompositeElement},FeDropShadowElement:function(){return FeDropShadowElement},FeGaussianBlurElement:function(){return FeGaussianBlurElement},FeMorphologyElement:function(){return FeMorphologyElement},FilterElement:function(){return FilterElement},Font:function(){return Font},FontElement:function(){return FontElement},FontFaceElement:function(){return FontFaceElement},GElement:function(){return GElement},GlyphElement:function(){return GlyphElement},GradientElement:function(){return GradientElement},ImageElement:function(){return ImageElement},LineElement:function(){return LineElement},LinearGradientElement:function(){return LinearGradientElement},MarkerElement:function(){return MarkerElement},MaskElement:function(){return MaskElement},Matrix:function(){return Matrix},MissingGlyphElement:function(){return MissingGlyphElement},Mouse:function(){return Mouse},PSEUDO_ZERO:function(){return P},Parser:function(){return Parser},PathElement:function(){return PathElement},PathParser:function(){return PathParser},PatternElement:function(){return PatternElement},Point:function(){return Point},PolygonElement:function(){return PolygonElement},PolylineElement:function(){return PolylineElement},Property:function(){return Property},QB1:function(){return QB1},QB2:function(){return QB2},QB3:function(){return QB3},RadialGradientElement:function(){return RadialGradientElement},RectElement:function(){return RectElement},RenderedElement:function(){return RenderedElement},Rotate:function(){return Rotate},SVGElement:function(){return SVGElement},SVGFontLoader:function(){return SVGFontLoader},Scale:function(){return Scale},Screen:function(){return Screen},Skew:function(){return Skew},SkewX:function(){return SkewX},SkewY:function(){return SkewY},StopElement:function(){return StopElement},StyleElement:function(){return StyleElement},SymbolElement:function(){return SymbolElement},TRefElement:function(){return TRefElement},TSpanElement:function(){return TSpanElement},TextElement:function(){return TextElement},TextPathElement:function(){return TextPathElement},TitleElement:function(){return TitleElement},Transform:function(){return Transform},Translate:function(){return Translate},UnknownElement:function(){return UnknownElement},UseElement:function(){return UseElement},ViewPort:function(){return ViewPort},compressSpaces:function(){return compressSpaces},default:function(){return Canvg},getSelectorSpecificity:function(){return getSelectorSpecificity},normalizeAttributeName:function(){return normalizeAttributeName},normalizeColor:function(){return normalizeColor},parseExternalUrl:function(){return parseExternalUrl},presets:function(){return u},toNumbers:function(){return toNumbers},trimLeft:function(){return trimLeft},trimRight:function(){return trimRight},vectorMagnitude:function(){return vectorMagnitude},vectorsAngle:function(){return vectorsAngle},vectorsRatio:function(){return vectorsRatio}}),r(73964);var i=r(15861);r(22462),r(57267),r(268),r(752),r(76265);var n=r(86656);r(278),r(2918),r(9873);var s=r(54087);
vendor: 9,013 bytes, line 1
1r(28436);var a=r(26131);r(97195),r(43843),r(93374);var o=r(35851);r(12826);var h=r(62449),l=r(83454),u=Object.freeze({__proto__:null,offscreen:function(){var{DOMParser:t}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e={window:null,ignoreAnimation:!0,ignoreMouse:!0,DOMParser:t,createCanvas:(t,e)=>new OffscreenCanvas(t,e),createImage:t=>(0,i.Z)(function*(){var e=yield fetch(t),r=yield e.blob();return yield createImageBitmap(r)})()};return("undefined"!=typeof DOMParser||void 0===t)&&Reflect.deleteProperty(e,"DOMParser"),e},node:function(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}}});function compressSpaces(t){return t.replace(/(?!\u3000)\s+/gm," ")}function trimLeft(t){return t.replace(/^[\n \t]+/,"")}function trimRight(t){return t.replace(/[\n \t]+$/,"")}function toNumbers(t){return((t||"").match(/-?(\d+(?:\.\d*(?:[eE][+-]?\d+)?)?|\.\d+)(?=\D|$)/gm)||[]).map(parseFloat)}var g=/^[A-Z-]+$/;function normalizeAttributeName(t){return g.test(t)?t.toLowerCase():t}function parseExternalUrl(t){var e=/url\(('([^']+)'|"([^"]+)"|([^'")]+))\)/.exec(t)||[];return e[2]||e[3]||e[4]}function normalizeColor(t){if(!t.startsWith("rgb"))return t;var e=3;return t.replace(/\d+(\.\d+)?/g,(t,r)=>e--&&r?String(Math.round(parseFloat(t))):t)}var d=/(\[[^\]]+\])/g,p=/(#[^\s+>~.[:]+)/g,m=/(\.[^\s+>~.[:]+)/g,f=/(::[^\s+>~.[:]+|:first-line|:first-letter|:before|:after)/gi,y=/(:[\w-]+\([^)]*\))/gi,v=/(:[^\s+>~.[:]+)/g,x=/([^\s+>~.[:]+)/g;function findSelectorMatch(t,e){var r=e.exec(t);return r?[t.replace(e," "),r.length]:[t,0]}function getSelectorSpecificity(t){var e=[0,0,0],r=t.replace(/:not\(([^)]*)\)/g," $1 ").replace(/{[\s\S]*/gm," "),i=0;return[r,i]=findSelectorMatch(r,d),e[1]+=i,[r,i]=findSelectorMatch(r,p),e[0]+=i,[r,i]=findSelectorMatch(r,m),e[1]+=i,[r,i]=findSelectorMatch(r,f),e[2]+=i,[r,i]=findSelectorMatch(r,y),e[1]+=i,[r,i]=findSelectorMatch(r,v),e[1]+=i,r=r.replace(/[*\s+>~]/g," ").replace(/[#.]/g," "),[r,i]=findSelectorMatch(r,x),e[2]+=i,e.join("")}var P=1e-8;function vectorMagnitude(t){return Math.sqrt(Math.pow(t[0],2)+Math.pow(t[1],2))}function vectorsRatio(t,e){return(t[0]*e[0]+t[1]*e[1])/(vectorMagnitude(t)*vectorMagnitude(e))}function vectorsAngle(t,e){return(t[0]*e[1]<t[1]*e[0]?-1:1)*Math.acos(vectorsRatio(t,e))}function CB1(t){return t*t*t}function CB2(t){return 3*t*t*(1-t)}function CB3(t){return 3*t*(1-t)*(1-t)}function CB4(t){return(1-t)*(1-t)*(1-t)}function QB1(t){return t*t}function QB2(t){return 2*t*(1-t)}function QB3(t){return(1-t)*(1-t)}let Property=class Property{constructor(t,e,r){this.document=t,this.name=e,this.value=r,this.isNormalizedColor=!1}static empty(t){return new Property(t,"EMPTY","")}split(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:" ",{document:e,name:r}=this;return compressSpaces(this.getString()).trim().split(t).map(t=>new Property(e,r,t))}hasValue(t){var{value:e}=this;return null!==e&&""!==e&&(t||0!==e)&&void 0!==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 void 0===t||this.hasValue()?this.value:t}getNumber(t){if(!this.hasValue())return void 0===t?0:parseFloat(t);var{value:e}=this,r=parseFloat(e);return this.isString(/%$/)&&(r/=100),r}getString(t){return void 0===t||this.hasValue()?void 0===this.value?"":String(this.value):String(t)}getColor(t){var e=this.getString(t);return this.isNormalizedColor||(this.isNormalizedColor=!0,e=normalizeColor(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 s=this.getNumber();if(e&&s<1)return s*n.computeSize(r);return s}}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()?Property.textBaselineMapping[this.getString()]:null}addOpacity(t){for(var e=this.getColor(),r=e.length,i=0,n=0;n<r&&(","===e[n]&&i++,3!==i);n++);if(t.hasValue()&&this.isString()&&3!==i){var s=new a(e);s.ok&&(s.alpha=t.getNumber(),e=s.toRGBA())}return new Property(this.document,this.name,e)}};Property.textBaselineMapping={baseline:"alphabetic","before-edge":"top","text-before-edge":"top",middle:"middle",central:"middle","after-edge":"bottom","text-after-edge":"bottom",ideographic:"ideographic",alphabetic:"alphabetic",hanging:"hanging",mathematical:"alphabetic"};let ViewPort=class ViewPort{constructor(){this.viewPorts=[]}clear(){this.viewPorts=[]}setCurrent(t,e){this.viewPorts.push({width:t,height:e})}removeCurrent(){this.viewPorts.pop()}getCurrent(){var{viewPorts:t}=this;return t[t.length-1]}get width(){return this.getCurrent().width}get height(){return this.getCurrent().height}computeSize(t){return"number"==typeof t?t:"x"===t?this.width:"y"===t?this.height:Math.sqrt(Math.pow(this.width,2)+Math.pow(this.height,2))/Math.sqrt(2)}};let Point=class Point{constructor(t,e){this.x=t,this.y=e}static parse(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,[r=e,i=e]=toNumbers(t);return new Point(r,i)}static parseScale(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,[r=e,i=r]=toNumbers(t);return new Point(r,i)}static parsePath(t){for(var e=toNumbers(t),r=e.length,i=[],n=0;n<r;n+=2)i.push(new Point(e[n],e[n+1]));return i}angleTo(t){return Math.atan2(t.y-this.y,t.x-this.x)}applyTransform(t){var{x:e,y:r}=this,i=e*t[0]+r*t[2]+t[4],n=e*t[1]+r*t[3]+t[5];this.x=i,this.y=n}};let Mouse=class Mouse{constructor(t){this.screen=t,this.working=!1,this.events=[],this.eventElements=[],this.onClick=this.onClick.bind(this),this.onMouseMove=this.onMouseMove.bind(this)}isWorking(){return this.working}start(){if(!this.working){var{screen:t,onClick:e,onMouseMove:r}=this,i=t.ctx.canvas;i.onclick=e,i.onmousemove=r,this.working=!0}}stop(){if(this.working){var t=this.screen.ctx.canvas;this.working=!1,t.onclick=null,t.onmousemove=null}}hasEvents(){return this.working&&this.events.length>0}runEvents(){if(this.working){var{screen:t,events:e,eventElements:r}=this,{style:i}=t.ctx.canvas;i&&(i.cursor=""),e.forEach((t,e)=>{for(var{run:i}=t,n=r[e];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:s,y:a}=r;!i[n]&&e.isPointInPath&&e.isPointInPath(s,a)&&(i[n]=t)})}}checkBoundingBox(t,e){if(this.working&&e){var{events:r,eventElements:i}=this;r.forEach((r,n)=>{var{x:s,y:a}=r;!i[n]&&e.isPointInBox(s,a)&&(i[n]=t)})}}mapXY(t,e){for(var{window:r,ctx:i}=this.screen,n=new Point(t,e),s=i.canvas;s;)n.x-=s.offsetLeft,n.y-=s.offsetTop,s=s.offsetParent;
1return 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 b="undefined"!=typeof window?window:null,S="undefined"!=typeof fetch?fetch.bind(void 0):null;let Screen=class Screen{constructor(t){var{fetch:e=S,window:r=b}=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 ViewPort,this.mouse=new Mouse(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:s,height:a,desiredHeight:o,minX:h=0,minY:l=0,refX:u,refY:g,clip:d=!1,clipX:p=0,clipY:m=0}=t,[f,y]=compressSpaces(i).replace(/^defer\s/,"").split(" "),v=f||"xMidYMid",x=y||"meet",P=n/s,b=a/o,S=Math.min(P,b),E=Math.max(P,b),w=s,C=o;"meet"===x&&(w*=S,C*=S),"slice"===x&&(w*=E,C*=E);var A=new Property(e,"refX",u),T=new Property(e,"refY",g),M=A.hasValue()&&T.hasValue();if(M&&r.translate(-S*A.getPixels("x"),-S*T.getPixels("y")),d){var V=S*p,k=S*m;r.beginPath(),r.moveTo(V,k),r.lineTo(n,k),r.lineTo(n,a),r.lineTo(V,a),r.closePath(),r.clip()}if(!M){var O="meet"===x&&S===b,B="slice"===x&&E===b,N="meet"===x&&S===P,D="slice"===x&&E===P;v.startsWith("xMid")&&(O||B)&&r.translate(n/2-w/2,0),v.endsWith("YMid")&&(N||D)&&r.translate(0,a/2-C/2),v.startsWith("xMax")&&(O||B)&&r.translate(n-w,0),v.endsWith("YMax")&&(N||D)&&r.translate(0,a-C)}switch(!0){case"none"===v:r.scale(P,b);break;case"meet"===x:r.scale(S,S);break;case"slice"===x:r.scale(E,E)}r.translate(-h,-l)}start(t){var{enableRedraw:e=!1,ignoreMouse:r=!1,ignoreAnimation:i=!1,ignoreDimensions:n=!1,ignoreClear:a=!1,forceRedraw:o,scaleWidth:h,scaleHeight:l,offsetX:u,offsetY:g}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{FRAMERATE:d,mouse:p}=this,m=1e3/d;if(this.frameDuration=m,this.readyPromise=new Promise(t=>{this.resolveReady=t}),this.isReady()&&this.render(t,n,a,h,l,u,g),e){var f=Date.now(),y=f,v=0,tick=()=>{(v=(f=Date.now())-y)>=m&&(y=f-v%m,this.shouldUpdate(i,o)&&(this.render(t,n,a,h,l,u,g),p.runEvents())),this.intervalId=s(tick)};r||p.start(),this.intervalId=s(tick)}}stop(){this.intervalId&&(s.cancel(this.intervalId),this.intervalId=null),this.mouse.stop()}shouldUpdate(t,e){if(!t){var{frameDuration:r}=this;if(this.animations.reduce((t,e)=>e.update(r)||t,!1))return!0}return!!("function"==typeof e&&e()||!this.isReadyLock&&this.isReady()||this.mouse.hasEvents())}render(t,e,r,i,n,s,a){var{CLIENT_WIDTH:o,CLIENT_HEIGHT:h,viewPort:l,ctx:u,isFirstRender:g}=this,d=u.canvas;l.clear(),d.width&&d.height?l.setCurrent(d.width,d.height):l.setCurrent(o,h);var p=t.getStyle("width"),m=t.getStyle("height");!e&&(g||"number"!=typeof i&&"number"!=typeof n)&&(p.hasValue()&&(d.width=p.getPixels("x"),d.style&&(d.style.width="".concat(d.width,"px"))),m.hasValue()&&(d.height=m.getPixels("y"),d.style&&(d.style.height="".concat(d.height,"px"))));var f=d.clientWidth||d.width,y=d.clientHeight||d.height;if(e&&p.hasValue()&&m.hasValue()&&(f=p.getPixels("x"),y=m.getPixels("y")),l.setCurrent(f,y),"number"==typeof s&&t.getAttribute("x",!0).setValue(s),"number"==typeof a&&t.getAttribute("y",!0).setValue(a),"number"==typeof i||"number"==typeof n){var v=toNumbers(t.getAttribute("viewBox").getString()),x=0,P=0;if("number"==typeof i){var b=t.getStyle("width");b.hasValue()?x=b.getPixels("x")/i:isNaN(v[2])||(x=v[2]/i)}if("number"==typeof n){var S=t.getStyle("height");S.hasValue()?P=S.getPixels("y")/n:isNaN(v[3])||(P=v[3]/n)}x||(x=P),P||(P=x),t.getAttribute("width",!0).setValue(i),t.getAttribute("height",!0).setValue(n);var E=t.getStyle("transform",!0,!0);E.setValue("".concat(E.getString()," scale(").concat(1/x,", ").concat(1/P,")"))}r||u.clearRect(0,0,f,y),t.render(u),g&&(this.isFirstRender=!1)}};Screen.defaultWindow=b,Screen.defaultFetch=S;var{defaultFetch:E}=Screen,w="undefined"!=typeof DOMParser?DOMParser:null;let Parser=class Parser{constructor(){var{fetch:t=E,DOMParser:e=w}
1=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.fetch=t,this.DOMParser=e}parse(t){var e=this;return(0,i.Z)(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 Error(e.textContent);return t}load(t){var e=this;return(0,i.Z)(function*(){var r=yield e.fetch(t),i=yield r.text();return e.parseFromString(i)})()}};let Translate=class Translate{constructor(t,e){this.type="translate",this.point=null,this.point=Point.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])}};let Rotate=class Rotate{constructor(t,e,r){this.type="rotate",this.angle=null,this.originX=null,this.originY=null,this.cx=0,this.cy=0;var i=toNumbers(e);this.angle=new Property(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:s}=this,a=e+i.getPixels("x"),o=r+n.getPixels("y");t.translate(a,o),t.rotate(s.getRadians()),t.translate(-a,-o)}unapply(t){var{cx:e,cy:r,originX:i,originY:n,angle:s}=this,a=e+i.getPixels("x"),o=r+n.getPixels("y");t.translate(a,o),t.rotate(-1*s.getRadians()),t.translate(-a,-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])}};let Scale=class Scale{constructor(t,e,r){this.type="scale",this.scale=null,this.originX=null,this.originY=null;var i=Point.parseScale(e);(0===i.x||0===i.y)&&(i.x=P,i.y=P),this.scale=i,this.originX=r[0],this.originY=r[1]}apply(t){var{scale:{x:e,y:r},originX:i,originY:n}=this,s=i.getPixels("x"),a=n.getPixels("y");t.translate(s,a),t.scale(e,r||e),t.translate(-s,-a)}unapply(t){var{scale:{x:e,y:r},originX:i,originY:n}=this,s=i.getPixels("x"),a=n.getPixels("y");t.translate(s,a),t.scale(1/e,1/r||e),t.translate(-s,-a)}applyToPoint(t){var{x:e,y:r}=this.scale;t.applyTransform([e||0,0,0,r||0,0,0])}};let Matrix=class Matrix{constructor(t,e,r){this.type="matrix",this.matrix=[],this.originX=null,this.originY=null,this.matrix=toNumbers(e),this.originX=r[0],this.originY=r[1]}apply(t){var{originX:e,originY:r,matrix:i}=this,n=e.getPixels("x"),s=r.getPixels("y");t.translate(n,s),t.transform(i[0],i[1],i[2],i[3],i[4],i[5]),t.translate(-n,-s)}unapply(t){var{originX:e,originY:r,matrix:i}=this,n=i[0],s=i[2],a=i[4],o=i[1],h=i[3],l=i[5],u=1/(n*(1*h-0*l)-s*(1*o-0*l)+a*(0*o-0*h)),g=e.getPixels("x"),d=r.getPixels("y");t.translate(g,d),t.transform(u*(1*h-0*l),u*(0*l-1*o),u*(0*a-1*s),u*(1*n-0*a),u*(s*l-a*h),u*(a*o-n*l)),t.translate(-g,-d)}applyToPoint(t){t.applyTransform(this.matrix)}};let Skew=class Skew extends Matrix{constructor(t,e,r){super(t,e,r),this.type="skew",this.angle=null,this.angle=new Property(t,"angle",e)}};let SkewX=class SkewX extends Skew{constructor(t,e,r){super(t,e,r),this.type="skewX",this.matrix=[1,0,Math.tan(this.angle.getRadians()),1,0,0]}};let SkewY=class SkewY extends Skew{constructor(t,e,r){super(t,e,r),this.type="skewY",this.matrix=[1,Math.tan(this.angle.getRadians()),0,1,0,0]}};let Transform=class Transform{constructor(t,e,r){this.document=t,this.transforms=[],compressSpaces(e).trim().replace(/\)([a-zA-Z])/g,") $1").replace(/\)(\s?,\s?)/g,") ").split(/\s(?=[a-z])/).forEach(t=>{if("none"!==t){var[e,i]=function(t){var[e,r]=t.split("(");return[e.trim(),r.trim().replace(")","")]}(t),n=Transform.transformTypes[e];void 0!==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();return r.hasValue()?new Transform(t,r.getString(),[i,n]):null}apply(t){for(var{transforms:e}=this,r=e.length,i=0;i<r;i++)e[i].apply(t)}unapply(t){for(var{transforms:e}=this,r=e.length,i=r-1;i>=0;i--)e[i].unapply(t)}applyToPoint(t){for(var{transforms:e}=this,r=e.length,i=0;i<r;i++)e[i].applyToPoint(t)}};Transform.transformTypes={translate:Translate,rotate:Rotate,scale:Scale,matrix:Matrix,skewX:SkewX,skewY:SkewY};let Element=class Element{constructor(t,e){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(this.document=t,this.node=e,this.captureTextNodes=r,this.attributes=Object.create(null),this.styles=Object.create(null),this.stylesSpecificity=Object.create(null),this.animationFrozen=!1,this.animationFrozenValue="",this.parent=null,this.children=[],
1!e||1!==e.nodeType)return;Array.from(e.attributes).forEach(e=>{var r=normalizeAttributeName(e.nodeName);this.attributes[r]=new Property(t,r,e.value)}),this.addStylesFromStyleDefinition(),this.getAttribute("style").hasValue()&&this.getAttribute("style").getString().split(";").map(t=>t.trim()).forEach(e=>{if(e){var[r,i]=e.split(":").map(t=>t.trim());this.styles[r]=new Property(t,r,i)}});var{definitions:i}=t,n=this.getAttribute("id");n.hasValue()&&!i[n.getString()]&&(i[n.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 Property(this.document,t,"");return this.attributes[t]=i,i}return r||Property.empty(this.document)}getHrefAttribute(){for(var t in this.attributes)if("href"===t||t.endsWith(":href"))return this.attributes[t];return Property.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&&n.hasValue())return this.styles[t]=n,n;if(!r){var{parent:s}=this;if(s){var a=s.getStyle(t);if(null!=a&&a.hasValue())return a}}if(e){var o=new Property(this.document,t,"");return this.styles[t]=o,o}return i||Property.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=Transform.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 Element?t:this.document.createElement(t);e.parent=this,Element.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 s in i){var a=this.stylesSpecificity[s];void 0===a&&(a="000"),n>=a&&(this.styles[s]=i[s],this.stylesSpecificity[s]=n)}}}removeStyles(t,e){return e.reduce((e,r)=>{var i=t.getStyle(r);if(!i.hasValue())return e;var n=i.getString();return i.setValue(""),[...e,[r,n]]},[])}restoreStyles(t,e){e.forEach(e=>{var[r,i]=e;t.getStyle(r,!0).setValue(i)})}isFirstChild(){var t;return(null===(t=this.parent)||void 0===t?void 0:t.children.indexOf(this))===0}};Element.ignoreChildTypes=["title"];let UnknownElement=class UnknownElement extends Element{constructor(t,e,r){super(t,e,r)}};function wrapFontFamily(t){var e=t.trim();return/^('|")/.test(e)?e:'"'.concat(e,'"')}let Font=class Font{constructor(t,e,r,i,n,s){var a=s?"string"==typeof s?Font.parse(s):s:{};this.fontFamily=n||a.fontFamily,this.fontSize=i||a.fontSize,this.fontStyle=t||a.fontStyle,this.fontWeight=r||a.fontWeight,this.fontVariant=e||a.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="",s="",a="",o=compressSpaces(t).trim().split(" "),h={fontSize:!1,fontStyle:!1,fontWeight:!1,fontVariant:!1};return o.forEach(t=>{switch(!0){case!h.fontStyle&&Font.styles.includes(t):"inherit"!==t&&(r=t),h.fontStyle=!0;break;case!h.fontVariant&&Font.variants.includes(t):"inherit"!==t&&(i=t),h.fontStyle=!0,h.fontVariant=!0;break;case!h.fontWeight&&Font.weights.includes(t):"inherit"!==t&&(n=t),h.fontStyle=!0,h.fontVariant=!0,h.fontWeight=!0;break;case!h.fontSize:"inherit"!==t&&([s]=t.split("/")),h.fontStyle=!0,h.fontVariant=!0,h.fontWeight=!0,h.fontSize=!0;break;
1default:"inherit"!==t&&(a+=t)}}),new Font(r,i,n,s,a,e)}toString(){var t;return[function(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:if(/^oblique\s+(-|)\d+deg$/.test(e))return e;return""}}(this.fontStyle),this.fontVariant,function(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:if(/^[\d.]+$/.test(e))return e;return""}}(this.fontWeight),this.fontSize,(t=this.fontFamily,void 0===l?t:t.trim().split(",").map(wrapFontFamily).join(","))].join(" ").trim()}};Font.styles="normal|italic|oblique|inherit",Font.variants="normal|small-caps|inherit",Font.weights="normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900|inherit";let BoundingBox=class BoundingBox{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){void 0!==t&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=t,this.x2=t),t<this.x1&&(this.x1=t),t>this.x2&&(this.x2=t)),void 0!==e&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=e,this.y2=e),e<this.y1&&(this.y1=e),e>this.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 s=6*e-12*r+6*i,a=-3*e+9*r-9*i+3*n,o=3*r-3*e;if(0===a){if(0===s)return;var h=-o/s;0<h&&h<1&&(t?this.addX(this.sumCubic(h,e,r,i,n)):this.addY(this.sumCubic(h,e,r,i,n)));return}var l=Math.pow(s,2)-4*o*a;if(!(l<0)){var u=(-s+Math.sqrt(l))/(2*a);0<u&&u<1&&(t?this.addX(this.sumCubic(u,e,r,i,n)):this.addY(this.sumCubic(u,e,r,i,n)));var g=(-s-Math.sqrt(l))/(2*a);0<g&&g<1&&(t?this.addX(this.sumCubic(g,e,r,i,n)):this.addY(this.sumCubic(g,e,r,i,n)))}}addBezierCurve(t,e,r,i,n,s,a,o){this.addPoint(t,e),this.addPoint(a,o),this.bezierCurveAdd(!0,t,r,n,a),this.bezierCurveAdd(!1,e,i,s,o)}addQuadraticCurve(t,e,r,i,n,s){var a=t+2/3*(r-t),o=e+2/3*(i-e),h=a+1/3*(n-t),l=o+1/3*(s-e);this.addBezierCurve(t,e,a,h,o,l,n,s)}isPointInBox(t,e){var{x1:r,y1:i,x2:n,y2:s}=this;return r<=t&&t<=n&&i<=e&&e<=s}};let PathParser=class PathParser extends o.OU{constructor(t){super(t.replace(/([+\-.])\s+/gm,"$1").replace(/[^MmZzLlHhVvCcSsQqTtAae\d\s.,+-].*/g,"")),this.control=null,this.start=null,this.current=null,this.command=null,this.commands=this.commands,this.i=-1,this.previousCommand=null,this.points=[],this.angles=[]}reset(){this.i=-1,this.command=null,this.previousCommand=null,this.start=new Point(0,0),this.control=new Point(0,0),this.current=new Point(0,0),this.points=[],this.angles=[]}isEnd(){var{i:t,commands:e}=this;return t>=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 Point(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!==o.OU.CURVE_TO&&t!==o.OU.SMOOTH_CURVE_TO&&t!==o.OU.QUAD_TO&&t!==o.OU.SMOOTH_QUAD_TO)return this.current;var{current:{x:e,y:r},control:{x:i,y:n}}=this;return new Point(2*e-i,2*r-n)}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)}
vendor: 39,411 bytes, line 1
1addMarkerAngle(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;r<e;r++)if(!t[r]){for(var i=r+1;i<e;i++)if(t[i]){t[r]=t[i];break}}return t}};let RenderedElement=class RenderedElement extends Element{constructor(){super(...arguments),this.modifiedEmSizeStack=!1}calculateOpacity(){for(var t=1,e=this;e;){var r=e.getStyle("opacity",!1,!0);r.hasValue(!0)&&(t*=r.getNumber()),e=e.parent}return t}setContext(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(!e){var r=this.getStyle("fill"),i=this.getStyle("fill-opacity"),n=this.getStyle("stroke"),s=this.getStyle("stroke-opacity");if(r.isUrlDefinition()){var a=r.getFillStyleDefinition(this,i);a&&(t.fillStyle=a)}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 Property(this.document,"fill",t.fillStyle).addOpacity(i).getColor();t.fillStyle=h}if(n.isUrlDefinition()){var l=n.getFillStyleDefinition(this,s);l&&(t.strokeStyle=l)}else if(n.hasValue()){"currentColor"===n.getString()&&n.setValue(this.getStyle("color").getColor());var u=n.getString();"inherit"!==u&&(t.strokeStyle="none"===u?"rgba(0,0,0,0)":u)}if(s.hasValue()){var g=new Property(this.document,"stroke",t.strokeStyle).addOpacity(s).getString();t.strokeStyle=g}var d=this.getStyle("stroke-width");if(d.hasValue()){var p=d.getPixels();t.lineWidth=p||P}var m=this.getStyle("stroke-linecap"),f=this.getStyle("stroke-linejoin"),y=this.getStyle("stroke-miterlimit"),v=this.getStyle("stroke-dasharray"),x=this.getStyle("stroke-dashoffset");if(m.hasValue()&&(t.lineCap=m.getString()),f.hasValue()&&(t.lineJoin=f.getString()),y.hasValue()&&(t.miterLimit=y.getNumber()),v.hasValue()&&"none"!==v.getString()){var b=toNumbers(v.getString());void 0!==t.setLineDash?t.setLineDash(b):void 0!==t.webkitLineDash?t.webkitLineDash=b:void 0===t.mozDash||1===b.length&&0===b[0]||(t.mozDash=b);var S=x.getPixels();void 0!==t.lineDashOffset?t.lineDashOffset=S:void 0!==t.webkitLineDashOffset?t.webkitLineDashOffset=S:void 0!==t.mozDashOffset&&(t.mozDashOffset=S)}}if(this.modifiedEmSizeStack=!1,void 0!==t.font){var E=this.getStyle("font"),w=this.getStyle("font-style"),C=this.getStyle("font-variant"),A=this.getStyle("font-weight"),T=this.getStyle("font-size"),M=this.getStyle("font-family"),V=new Font(w.getString(),C.getString(),A.getString(),T.hasValue()?"".concat(T.getPixels(!0),"px"):"",M.getString(),Font.parse(E.getString(),t.font));w.setValue(V.fontStyle),C.setValue(V.fontVariant),A.setValue(V.fontWeight),T.setValue(V.fontSize),M.setValue(V.fontFamily),t.font=V.toString(),T.isPixels()&&(this.document.emSize=T.getPixels(),this.modifiedEmSizeStack=!0)}e||(this.applyEffects(t),t.globalAlpha=this.calculateOpacity())}clearContext(t){super.clearContext(t),this.modifiedEmSizeStack&&this.document.popEmSize()}};let PathElement=class PathElement extends RenderedElement{constructor(t,e,r){super(t,e,r),this.type="path",this.pathParser=null,this.pathParser=new PathParser(this.getAttribute("d").getString())}path(t){var{pathParser:e}=this,r=new BoundingBox;for(e.reset(),t&&t.beginPath();!e.isEnd();)switch(e.next().type){case PathParser.MOVE_TO:this.pathM(t,r);break;case PathParser.LINE_TO:this.pathL(t,r);break;case PathParser.HORIZ_LINE_TO:this.pathH(t,r);break;case PathParser.VERT_LINE_TO:this.pathV(t,r);break;case PathParser.CURVE_TO:this.pathC(t,r);break;case PathParser.SMOOTH_CURVE_TO:this.pathS(t,r);break;case PathParser.QUAD_TO:this.pathQ(t,r);break;case PathParser.SMOOTH_QUAD_TO:this.pathT(t,r);break;case PathParser.ARC:this.pathA(t,r);break;case PathParser.CLOSE_PATH:this.pathZ(t,r)}return r}getBoundingBox(t){return this.path()}getMarkers(){var{pathParser:t}=this,e=t.getMarkerPoints(),r=t.getMarkerAngles();return e.map((t,e)=>[t,r[e]])}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"),s=this.getStyle("marker-mid"),a=this.getStyle("marker-end");if(n.isUrlDefinition()){var o=n.getDefinition(),[h,l]=r[0];o.render(t,h,l)}if(s.isUrlDefinition())for(var u=s.getDefinition(),g=1;g<i;g++){var[d,p]=r[g];u.render(t,d,p)}if(a.isUrlDefinition()){var m=a.getDefinition(),[f,y]=r[i];m.render(t,f,y)}}}static pathM(t){var e=t.getAsCurrentPoint();return t.start=t.current,{point:e}}pathM(t,e){var{pathParser:r}=this,{point:i}=PathElement.pathM(r),{x:n,y:s}=i;r.addMarker(i),e.addPoint(n,s),t&&t.moveTo(n,s)}static pathL(t){var{current:e}=t;return{current:e,point:t.getAsCurrentPoint()}}pathL(t,e){var{pathParser:r}=this,{current:i,point:n}=PathElement.pathL(r),{x:s,y:a}=n;r.addMarker(n,i),e.addPoint(s,a),t&&t.lineTo(s,a)}static pathH(t){var{current:e,command:r}=t,i=new Point((r.relative?e.x:0)+r.x,e.y);return t.current=i,{current:e,point:i}}pathH(t,e){var{pathParser:r}=this,{current:i,point:n}=PathElement.pathH(r),{x:s,y:a}=n;r.addMarker(n,i),e.addPoint(s,a),t&&t.lineTo(s,a)}static pathV(t){var{current:e,command:r}=t,i=new Point(e.x,(r.relative?e.y:0)+r.y);return t.current=i,{current:e,point:i}}pathV(t,e){var{pathParser:r}=this,{current:i,point:n}=PathElement.pathV(r),{x:s,y:a}=n;r.addMarker(n,i),e.addPoint(s,a),t&&t.lineTo(s,a)}static pathC(t){var{current:e}=t;return{current:e,point:t.getPoint("x1","y1"),controlPoint:t.getAsControlPoint("x2","y2"),currentPoint:t.getAsCurrentPoint()}}pathC(t,e){var{pathParser:r}=this,{current:i,point:n,controlPoint:s,currentPoint:a}=PathElement.pathC(r);r.addMarker(a,s,n),e.addBezierCurve(i.x,i.y,n.x,n.y,s.x,s.y,a.x,a.y),t&&t.bezierCurveTo(n.x,n.y,s.x,s.y,a.x,a.y)}static pathS(t){var{current:e}=t;return{current:e,point:t.getReflectedControlPoint(),controlPoint:t.getAsControlPoint("x2","y2"),currentPoint:t.getAsCurrentPoint()}}pathS(t,e){var{pathParser:r}=this,{current:i,point:n,controlPoint:s,currentPoint:a}=PathElement.pathS(r);r.addMarker(a,s,n),e.addBezierCurve(i.x,i.y,n.x,n.y,s.x,s.y,a.x,a.y),t&&t.bezierCurveTo(n.x,n.y,s.x,s.y,a.x,a.y)}static pathQ(t){var{current:e}=t;return{current:e,controlPoint:t.getAsControlPoint("x1","y1"),currentPoint:t.getAsCurrentPoint()}}pathQ(t,e){var{pathParser:r}=this,{current:i,controlPoint:n,currentPoint:s}=PathElement.pathQ(r);r.addMarker(s,n,n),e.addQuadraticCurve(i.x,i.y,n.x,n.y,s.x,s.y),t&&t.quadraticCurveTo(n.x,n.y,s.x,s.y)}static pathT(t){var{current:e}=t,r=t.getReflectedControlPoint();return t.control=r,{current:e,controlPoint:r,currentPoint:t.getAsCurrentPoint()}}pathT(t,e){var{pathParser:r}=this,{current:i,controlPoint:n,currentPoint:s}=PathElement.pathT(r);r.addMarker(s,n,n),e.addQuadraticCurve(i.x,i.y,n.x,n.y,s.x,s.y),t&&t.quadraticCurveTo(n.x,n.y,s.x,s.y)}static pathA(t){var{current:e,command:r}=t,{rX:i,rY:n,xRot:s,lArcFlag:a,sweepFlag:o}=r,h=s*(Math.PI/180),l=t.getAsCurrentPoint(),u=new Point(Math.cos(h)*(e.x-l.x)/2+Math.sin(h)*(e.y-l.y)/2,-Math.sin(h)*(e.x-l.x)/2+Math.cos(h)*(e.y-l.y)/2),g=Math.pow(u.x,2)/Math.pow(i,2)+Math.pow(u.y,2)/Math.pow(n,2);g>1&&(i*=Math.sqrt(g),n*=Math.sqrt(g));var d=(a===o?-1:1)*Math.sqrt((Math.pow(i,2)*Math.pow(n,2)-Math.pow(i,2)*Math.pow(u.y,2)-Math.pow(n,2)*Math.pow(u.x,2))/(Math.pow(i,2)*Math.pow(u.y,2)+Math.pow(n,2)*Math.pow(u.x,2)));isNaN(d)&&(d=0);var p=new Point(d*i*u.y/n,-(d*n)*u.x/i),m=new Point((e.x+l.x)/2+Math.cos(h)*p.x-Math.sin(h)*p.y,(e.y+l.y)/2+Math.sin(h)*p.x+Math.cos(h)*p.y),f=vectorsAngle([1,0],[(u.x-p.x)/i,(u.y-p.y)/n]),y=[(u.x-p.x)/i,(u.y-p.y)/n],v=[(-u.x-p.x)/i,(-u.y-p.y)/n],x=vectorsAngle(y,v);return -1>=vectorsRatio(y,v)&&(x=Math.PI),vectorsRatio(y,v)>=1&&(x=0),{currentPoint:l,rX:i,rY:n,sweepFlag:o,xAxisRotation:h,centp:m,a1:f,ad:x}}pathA(t,e){var{pathParser:r}=this,{currentPoint:i,rX:n,rY:s,sweepFlag:a,xAxisRotation:o,centp:h,a1:l,ad:u}=PathElement.pathA(r),g=1-a?1:-1,d=l+g*(u/2),p=new Point(h.x+n*Math.cos(d),h.y+s*Math.sin(d));if(r.addMarkerAngle(p,d-g*Math.PI/2),r.addMarkerAngle(i,d-g*Math.PI),e.addPoint(i.x,i.y),t&&!isNaN(l)&&!isNaN(u)){var m=n>s?n:s,f=n>s?1:n/s,y=n>s?s/n:1;t.translate(h.x,h.y),t.rotate(o),t.scale(f,y),t.arc(0,0,m,l,l+u,!!(1-a)),t.scale(1/f,1/y),t.rotate(-o),t.translate(-h.x,-h.y)}}static pathZ(t){t.current=t.start}pathZ(t,e){PathElement.pathZ(this.pathParser),t&&e.x1!==e.x2&&e.y1!==e.y2&&t.closePath()}};let GlyphElement=class GlyphElement extends PathElement{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()}};let TextElement=class TextElement extends RenderedElement{constructor(t,e,r){super(t,e,new.target===TextElement||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=Font.parse(t.ctx.font).fontSize;return e.getStyle("font-size").getNumber(r)}getTElementBoundingBox(t){var e=this.getFontSize();return new BoundingBox(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 s=e.length,a=e[r-1],o=e[r+1],h="isolated";if((0===r||" "===a)&&r<s-1&&" "!==o&&(h="terminal"),r>0&&" "!==a&&r<s-1&&" "!==o&&(h="medial"),r>0&&" "!==a&&(r===s-1||" "===o)&&(h="initial"),void 0!==t.glyphs[i]){var l=t.glyphs[i];n=l instanceof GlyphElement?l:l[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,s=compressSpaces(e.textContent||"");return 0===i&&(s=trimLeft(s)),i===n&&(s=trimRight(s)),s}renderChildren(t){if("text"!==this.type){this.renderTElementChildren(t);return}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))}renderTElementChildren(t){var{document:e,parent:r}=this,i=this.getText(),n=r.getStyle("font-family").getDefinition();if(n){for(var{unitsPerEm:s}=n.fontFace,a=Font.parse(e.ctx.font),o=r.getStyle("font-size").getNumber(a.fontSize),h=r.getStyle("font-style").getString(a.fontStyle),l=o/s,u=n.isRTL?i.split("").reverse().join(""):i,g=toNumbers(r.getAttribute("dx").getString()),d=u.length,p=0;p<d;p++){var m=this.getGlyph(n,u,p);t.translate(this.x,this.y),t.scale(l,-l);var f=t.lineWidth;t.lineWidth=t.lineWidth*s/o,"italic"===h&&t.transform(1,0,.4,1,0,0),m.render(t),"italic"===h&&t.transform(1,0,-.4,1,0,0),t.lineWidth=f,t.scale(1/l,-1/l),t.translate(-this.x,-this.y),this.x+=o*(m.horizAdvX||n.horizAdvX)/s,void 0===g[p]||isNaN(g[p])||(this.x+=g[p])}return}var{x:y,y:v}=this;t.fillStyle&&t.fillText(i,y,v),t.strokeStyle&&t.strokeText(i,y,v)}applyAnchoring(){if(!(this.textChunkStart>=this.leafTexts.length)){var t=this.leafTexts[this.textChunkStart],e=t.getStyle("text-anchor").getString("start"),r=0;r="start"===e?t.x-this.minX:"end"===e?t.x-this.maxX:t.x-(this.minX+this.maxX)/2;for(var i=this.textChunkStart;i<this.leafTexts.length;i++)this.leafTexts[i].x+=r;this.minX=Number.POSITIVE_INFINITY,this.maxX=Number.NEGATIVE_INFINITY,this.textChunkStart=this.leafTexts.length}}adjustChildCoordinatesRecursive(t){this.children.forEach((e,r)=>{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 s=n.getAttribute("x"),a=n.getAttribute("y"),o=n.getAttribute("dx"),h=n.getAttribute("dy"),l=n.getStyle("font-family").getDefinition(),u=!!l&&l.isRTL;0!==i||(s.hasValue()||s.setValue(n.getInheritedAttribute("x")),a.hasValue()||a.setValue(n.getInheritedAttribute("y")),o.hasValue()||o.setValue(n.getInheritedAttribute("dx")),h.hasValue()||h.setValue(n.getInheritedAttribute("dy")));var g=n.measureText(t);return u&&(e.x-=g),s.hasValue()?(e.applyAnchoring(),n.x=s.getPixels("x"),o.hasValue()&&(n.x+=o.getPixels("x"))):(o.hasValue()&&(e.x+=o.getPixels("x")),n.x=e.x),e.x=n.x,u||(e.x+=g),a.hasValue()?(n.y=a.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+g),e.maxX=Math.max(e.maxX,n.x,n.x+g),n.clearContext(t),t.restore(),n}getChildBoundingBox(t,e,r,i){var n=r.children[i];if("function"!=typeof n.getBoundingBox)return null;var s=n.getBoundingBox(t);return s?(n.children.forEach((r,i)=>{var a=e.getChildBoundingBox(t,e,n,i);s.addBoundingBox(a)}),s):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(),s=i.isRTL?e.split("").reverse().join(""):e,a=toNumbers(r.getAttribute("dx").getString()),o=s.length,h=0,l=0;l<o;l++)h+=(this.getGlyph(i,s,l).horizAdvX||i.horizAdvX)*n/i.fontFace.unitsPerEm,void 0===a[l]||isNaN(a[l])||(h+=a[l]);return h}if(!t.measureText)return 10*e.length;t.save(),this.setContext(t,!0);var{width:u}=t.measureText(e);return this.clearContext(t),t.restore(),u}getInheritedAttribute(t){for(var e=this;e instanceof TextElement&&e.isFirstChild();){var r=e.parent.getAttribute(t);if(r.hasValue(!0))return r.getValue("0");e=e.parent}return null}};let TSpanElement=class TSpanElement extends TextElement{constructor(t,e,r){super(t,e,new.target===TSpanElement||r),this.type="tspan",this.text=this.children.length>0?"":this.getTextFromNode()}getText(){return this.text}};let TextNode=class TextNode extends TSpanElement{constructor(){super(...arguments),this.type="textNode"}};let SVGElement=class SVGElement extends RenderedElement{constructor(){super(...arguments),this.type="svg",this.root=!1}setContext(t){var e,{document:r}=this,{screen:i,window:n}=r,s=t.canvas;if(i.setDefaults(t),s.style&&void 0!==t.font&&n&&void 0!==n.getComputedStyle){t.font=n.getComputedStyle(s).getPropertyValue("font");var a=new Property(r,"fontSize",Font.parse(t.font).fontSize);a.hasValue()&&(r.rootEmSize=a.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 l=this.getAttribute("refX"),u=this.getAttribute("refY"),g=this.getAttribute("viewBox"),d=g.hasValue()?toNumbers(g.getString()):null,p=!this.root&&"visible"!==this.getStyle("overflow").getValue("hidden"),m=0,f=0,y=0,v=0;d&&(m=d[0],f=d[1]),this.root||(o=this.getStyle("width").getPixels("x"),h=this.getStyle("height").getPixels("y"),"marker"!==this.type||(y=m,v=f,m=0,f=0)),i.viewPort.setCurrent(o,h),this.node&&(!this.parent||(null===(e=this.node.parentNode)||void 0===e?void 0:e.nodeName)==="foreignObject")&&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")),d&&(o=d[2],h=d[3]),r.setViewBox({ctx:t,aspectRatio:this.getAttribute("preserveAspectRatio").getString(),width:i.viewPort.width,desiredWidth:o,height:i.viewPort.height,desiredHeight:h,minX:m,minY:f,refX:l.getValue(),refY:u.getValue(),clip:p,clipX:y,clipY:v}),d&&(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),s=this.getAttribute("viewBox"),a=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 l=this.getAttribute("preserveAspectRatio");l.hasValue()&&l.setValue(l.getString().replace(/^\s*(\S.*\S)\s*$/,"$1"))}}if(i.setValue(t),n.setValue(e),s.hasValue()||s.setValue("0 0 ".concat(o||t," ").concat(h||e)),a.hasValue()){var u=this.getStyle("width"),g=this.getStyle("height");u.hasValue()&&u.setValue("".concat(t,"px")),g.hasValue()&&g.setValue("".concat(e,"px"))}}};let RectElement=class RectElement extends PathElement{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"),s=this.getAttribute("rx"),a=this.getAttribute("ry"),o=s.getPixels("x"),h=a.getPixels("y");if(s.hasValue()&&!a.hasValue()&&(h=o),a.hasValue()&&!s.hasValue()&&(o=h),o=Math.min(o,i/2),h=Math.min(h,n/2),t){var l=4*((Math.sqrt(2)-1)/3);t.beginPath(),n>0&&i>0&&(t.moveTo(e+o,r),t.lineTo(e+i-o,r),t.bezierCurveTo(e+i-o+l*o,r,e+i,r+h-l*h,e+i,r+h),t.lineTo(e+i,r+n-h),t.bezierCurveTo(e+i,r+n-h+l*h,e+i-o+l*o,r+n,e+i-o,r+n),t.lineTo(e+o,r+n),t.bezierCurveTo(e+o-l*o,r+n,e,r+n-h+l*h,e,r+n-h),t.lineTo(e,r+h),t.bezierCurveTo(e,r+h-l*h,e+o-l*o,r,e+o,r),t.closePath())}return new BoundingBox(e,r,e+i,r+n)}getMarkers(){return null}};let CircleElement=class CircleElement extends PathElement{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 BoundingBox(e-i,r-i,e+i,r+i)}getMarkers(){return null}};let EllipseElement=class EllipseElement extends PathElement{constructor(){super(...arguments),this.type="ellipse"}path(t){var e=4*((Math.sqrt(2)-1)/3),r=this.getAttribute("rx").getPixels("x"),i=this.getAttribute("ry").getPixels("y"),n=this.getAttribute("cx").getPixels("x"),s=this.getAttribute("cy").getPixels("y");return t&&r>0&&i>0&&(t.beginPath(),t.moveTo(n+r,s),t.bezierCurveTo(n+r,s+e*i,n+e*r,s+i,n,s+i),t.bezierCurveTo(n-e*r,s+i,n-r,s+e*i,n-r,s),t.bezierCurveTo(n-r,s-e*i,n-e*r,s-i,n,s-i),t.bezierCurveTo(n+e*r,s-i,n+r,s-e*i,n+r,s),t.closePath()),new BoundingBox(n-r,s-i,n+r,s+i)}getMarkers(){return null}};let LineElement=class LineElement extends PathElement{constructor(){super(...arguments),this.type="line"}getPoints(){return[new Point(this.getAttribute("x1").getPixels("x"),this.getAttribute("y1").getPixels("y")),new Point(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 BoundingBox(e,r,i,n)}getMarkers(){var[t,e]=this.getPoints(),r=t.angleTo(e);return[[t,r],[e,r]]}};let PolylineElement=class PolylineElement extends PathElement{constructor(t,e,r){super(t,e,r),this.type="polyline",this.points=[],this.points=Point.parsePath(this.getAttribute("points").getString())}path(t){var{points:e}=this,[{x:r,y:i}]=e,n=new BoundingBox(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}};let PolygonElement=class PolygonElement extends PolylineElement{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}};let PatternElement=class PatternElement extends Element{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),s=new SVGElement(this.document,null);s.attributes.viewBox=new Property(this.document,"viewBox",this.getAttribute("viewBox").getValue()),s.attributes.width=new Property(this.document,"width","".concat(i,"px")),s.attributes.height=new Property(this.document,"height","".concat(n,"px")),s.attributes.transform=new Property(this.document,"transform",this.getAttribute("patternTransform").getValue()),s.children=this.children;var a=this.document.createCanvas(i,n),o=a.getContext("2d"),h=this.getAttribute("x"),l=this.getAttribute("y");h.hasValue()&&l.hasValue()&&o.translate(h.getPixels("x",!0),l.getPixels("y",!0)),r.hasValue()?this.styles["fill-opacity"]=r:Reflect.deleteProperty(this.styles,"fill-opacity");for(var u=-1;u<=1;u++)for(var g=-1;g<=1;g++)o.save(),s.attributes.x=new Property(this.document,"x",u*a.width),s.attributes.y=new Property(this.document,"y",g*a.height),s.render(o),o.restore();return t.createPattern(a,"repeat")}};let MarkerElement=class MarkerElement extends Element{constructor(){super(...arguments),this.type="marker"}render(t,e,r){if(e){var{x:i,y:n}=e,s=this.getAttribute("orient").getString("auto"),a=this.getAttribute("markerUnits").getString("strokeWidth");t.translate(i,n),"auto"===s&&t.rotate(r),"strokeWidth"===a&&t.scale(t.lineWidth,t.lineWidth),t.save();var o=new SVGElement(this.document,null);o.type=this.type,o.attributes.viewBox=new Property(this.document,"viewBox",this.getAttribute("viewBox").getValue()),o.attributes.refX=new Property(this.document,"refX",this.getAttribute("refX").getValue()),o.attributes.refY=new Property(this.document,"refY",this.getAttribute("refY").getValue()),o.attributes.width=new Property(this.document,"width",this.getAttribute("markerWidth").getValue()),o.attributes.height=new Property(this.document,"height",this.getAttribute("markerHeight").getValue()),o.attributes.overflow=new Property(this.document,"overflow",this.getAttribute("overflow").getValue()),o.attributes.fill=new Property(this.document,"fill",this.getAttribute("fill").getColor("black")),o.attributes.stroke=new Property(this.document,"stroke",this.getAttribute("stroke").getValue("none")),o.children=this.children,o.render(t),t.restore(),"strokeWidth"===a&&t.scale(1/t.lineWidth,1/t.lineWidth),"auto"===s&&t.rotate(-r),t.translate(-i,-n)}}};let DefsElement=class DefsElement extends Element{constructor(){super(...arguments),this.type="defs"}render(){}};let GElement=class GElement extends RenderedElement{constructor(){super(...arguments),this.type="g"}getBoundingBox(t){var e=new BoundingBox;return this.children.forEach(r=>{e.addBoundingBox(r.getBoundingBox(t))}),e}};let GradientElement=class GradientElement extends Element{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,s=this.getGradient(t,e);if(!s)return this.addParentOpacity(r,n[n.length-1].color);if(n.forEach(t=>{s.addColorStop(t.offset,this.addParentOpacity(r,t.color))}),this.getAttribute("gradientTransform").hasValue()){var{document:a}=this,{MAX_VIRTUAL_PIXELS:o,viewPort:h}=a.screen,[l]=h.viewPorts,u=new RectElement(a,null);u.attributes.x=new Property(a,"x",-o/3),u.attributes.y=new Property(a,"y",-o/3),u.attributes.width=new Property(a,"width",o),u.attributes.height=new Property(a,"height",o);var g=new GElement(a,null);g.attributes.transform=new Property(a,"transform",this.getAttribute("gradientTransform").getValue()),g.children=[u];var d=new SVGElement(a,null);d.attributes.x=new Property(a,"x",0),d.attributes.y=new Property(a,"y",0),d.attributes.width=new Property(a,"width",l.width),d.attributes.height=new Property(a,"height",l.height),d.children=[g];var p=a.createCanvas(l.width,l.height),m=p.getContext("2d");return m.fillStyle=s,d.render(m),m.createPattern(p,"no-repeat")}return s}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){return t.hasValue()?new Property(this.document,"color",e).addOpacity(t).getColor():e}};let LinearGradientElement=class LinearGradientElement extends GradientElement{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"),s=r?i.y+i.height*this.getAttribute("y1").getNumber():this.getAttribute("y1").getPixels("y"),a=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===a&&s===o?null:t.createLinearGradient(n,s,a,o)}};let RadialGradientElement=class RadialGradientElement extends GradientElement{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"),s=r?i.y+i.height*this.getAttribute("cy").getNumber():this.getAttribute("cy").getPixels("y"),a=n,o=s;this.getAttribute("fx").hasValue()&&(a=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(),l=this.getAttribute("fr").getPixels();return t.createRadialGradient(a,o,l,n,s,h)}};let StopElement=class StopElement extends Element{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"),s=this.getStyle("stop-color",!0);""===s.getString()&&s.setValue("#000"),n.hasValue()&&(s=s.addOpacity(n)),this.offset=i,this.color=s.getColor()}};let AnimateElement=class AnimateElement extends Element{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 Property(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<this.duration){var s=this.calcValue(),a=this.getAttribute("type");if(a.hasValue()){var o=a.getString();s="".concat(o,"(").concat(s,")")}r.setValue(s),n=!0}return n}getProgress(){var{document:t,values:e}=this,r={progress:(this.duration-this.begin)/(this.maxDuration-this.begin)};if(e.hasValue()){var i=r.progress*(e.getValue().length-1),n=Math.floor(i),s=Math.ceil(i);r.from=new Property(t,"from",parseFloat(e.getValue()[n])),r.to=new Property(t,"to",parseFloat(e.getValue()[s])),r.progress=(i-n)/(s-n)}else r.from=this.from,r.to=this.to;return r}};let AnimateColorElement=class AnimateColorElement extends AnimateElement{constructor(){super(...arguments),this.type="animateColor"}calcValue(){var{progress:t,from:e,to:r}=this.getProgress(),i=new a(e.getColor()),n=new a(r.getColor());if(i.ok&&n.ok){var s=i.r+(n.r-i.r)*t,o=i.g+(n.g-i.g)*t,h=i.b+(n.b-i.b)*t;return"rgb(".concat(Math.floor(s),", ").concat(Math.floor(o),", ").concat(Math.floor(h),")")}return this.getAttribute("from").getColor()}};let AnimateTransformElement=class AnimateTransformElement extends AnimateElement{constructor(){super(...arguments),this.type="animateTransform"}calcValue(){var{progress:t,from:e,to:r}=this.getProgress(),i=toNumbers(e.getString()),n=toNumbers(r.getString());return i.map((e,r)=>e+(n[r]-e)*t).join(" ")}};let FontElement=class FontElement extends Element{constructor(t,e,r){super(t,e,r),this.type="font",this.glyphs=Object.create(null),this.horizAdvX=this.getAttribute("horiz-adv-x").getNumber();var{definitions:i}=t,{children:n}=this;for(var s of n)switch(s.type){case"font-face":this.fontFace=s;var a=s.getStyle("font-family");a.hasValue()&&(i[a.getString()]=this);break;case"missing-glyph":this.missingGlyph=s;break;case"glyph":s.arabicForm?(this.isRTL=!0,this.isArabic=!0,void 0===this.glyphs[s.unicode]&&(this.glyphs[s.unicode]=Object.create(null)),this.glyphs[s.unicode][s.arabicForm]=s):this.glyphs[s.unicode]=s}}render(){}};let FontFaceElement=class FontFaceElement extends Element{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()}};let MissingGlyphElement=class MissingGlyphElement extends PathElement{constructor(){super(...arguments),this.type="missing-glyph",this.horizAdvX=0}};let TRefElement=class TRefElement extends TextElement{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""}};let AElement=class AElement extends TextElement{constructor(t,e,r){super(t,e,r),this.type="a";var{childNodes:i}=e,n=i[0],s=i.length>0&&Array.from(i).every(t=>3===t.nodeType);this.hasText=s,this.text=s?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,s=new Property(e,"fontSize",Font.parse(e.ctx.font).fontSize);n.isWorking()&&n.checkBoundingBox(this,new BoundingBox(r,i-s.getPixels("y"),r+this.measureText(t),i))}else if(this.children.length>0){var a=new GElement(this.document,null);a.children=this.children,a.parent=this,a.render(t)}}onClick(){var{window:t}=this.document;t&&t.open(this.getHrefAttribute().getString())}onMouseMove(){this.document.ctx.canvas.style.cursor="pointer"}};function ownKeys$2(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 _objectSpread$2(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys$2(Object(r),!0).forEach(function(e){(0,n.Z)(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys$2(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}let TextPathElement=class TextPathElement extends TextElement{constructor(t,e,r){super(t,e,r),this.type="textPath",this.textWidth=0,this.textHeight=0,this.pathLength=-1,this.glyphInfo=null,this.letterSpacingCache=[],this.measuresCache=new Map([["",0]]);var i=this.getHrefAttribute().getDefinition();this.text=this.getTextFromNode(),this.dataArray=this.parsePathData(i)}getText(){return this.text}path(t){var{dataArray:e}=this;t&&t.beginPath(),e.forEach(e=>{var{type:r,points:i}=e;switch(r){case PathParser.LINE_TO:t&&t.lineTo(i[0],i[1]);break;case PathParser.MOVE_TO:t&&t.moveTo(i[0],i[1]);break;case PathParser.CURVE_TO:t&&t.bezierCurveTo(i[0],i[1],i[2],i[3],i[4],i[5]);break;case PathParser.QUAD_TO:t&&t.quadraticCurveTo(i[0],i[1],i[2],i[3]);break;case PathParser.ARC:var[n,s,a,o,h,l,u,g]=i,d=a>o?1:a/o,p=a>o?o/a:1;t&&(t.translate(n,s),t.rotate(u),t.scale(d,p),t.arc(0,0,a>o?a:o,h,h+l,!!(1-g)),t.scale(1/d,1/p),t.rotate(-u),t.translate(-n,-s));break;case PathParser.CLOSE_PATH:t&&t.closePath()}})}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:s,p1:a,rotation:o,text:h}=i;t.save(),t.translate(s.x,s.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(s.x,s.y+r/8),t.lineTo(a.x,a.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,s,a,o,h){var l=s,u=this.measureText(t,o);" "===o&&"justify"===e&&r<i&&(u+=(i-r)/n),h>-1&&(l+=this.getLetterSpacingAt(h));var g=this.textHeight/20,d=this.getEquidistantPointOnPath(l,g,0),p=this.getEquidistantPointOnPath(l+u,g,0),m={p0:d,p1:p},f=d&&p?Math.atan2(p.y-d.y,p.x-d.x):0;if(a){var y=Math.cos(Math.PI/2+f)*a,v=Math.cos(-f)*a;m.p0=_objectSpread$2(_objectSpread$2({},d),{},{x:d.x+y,y:d.y+v}),m.p1=_objectSpread$2(_objectSpread$2({},p),{},{x:p.x+y,y:p.y+v})}return{offset:l+=u,segment:m,rotation:f}}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")),s=this.parent.getAttribute("dy").getPixels("y"),a=this.parent.getStyle("text-anchor").getString("start"),o=this.getStyle("letter-spacing"),h=this.parent.getStyle("letter-spacing"),l=0;o.hasValue()&&"inherit"!==o.getValue()?o.hasValue()&&"initial"!==o.getValue()&&"unset"!==o.getValue()&&(l=o.getPixels()):l=h.getPixels();var u=[],g=e.length;this.letterSpacingCache=u;for(var d=0;d<g;d++)u.push(void 0!==n[d]?n[d]:l);var p=u.reduce((t,e,r)=>0===r?0:t+e||0,0),m=this.measureText(t),f=Math.max(m+p,0);this.textWidth=m,this.textHeight=this.getFontSize(),this.glyphInfo=[];var y=this.getPathLength(),v=this.getStyle("startOffset").getNumber(0)*y,x=0;("middle"===a||"center"===a)&&(x=-f/2),("end"===a||"right"===a)&&(x=-f),x+=v,r.forEach((e,n)=>{var{offset:o,segment:h,rotation:l}=this.findSegmentToFitChar(t,a,f,y,i,x,s,e,n);x=o,h.p0&&h.p1&&this.glyphInfo.push({text:r[n],p0:h.p0,p1:h.p1,rotation:l})})}}parsePathData(t){if(this.pathLength=-1,!t)return[];var e=[],{pathParser:r}=t;for(r.reset();!r.isEnd();){var{current:i}=r,n=i?i.x:0,s=i?i.y:0,a=r.next(),o=a.type,h=[];switch(a.type){case PathParser.MOVE_TO:this.pathM(r,h);break;case PathParser.LINE_TO:o=this.pathL(r,h);break;case PathParser.HORIZ_LINE_TO:o=this.pathH(r,h);break;case PathParser.VERT_LINE_TO:o=this.pathV(r,h);break;case PathParser.CURVE_TO:this.pathC(r,h);break;case PathParser.SMOOTH_CURVE_TO:o=this.pathS(r,h);break;case PathParser.QUAD_TO:this.pathQ(r,h);break;case PathParser.SMOOTH_QUAD_TO:o=this.pathT(r,h);break;case PathParser.ARC:h=this.pathA(r);break;case PathParser.CLOSE_PATH:PathElement.pathZ(r)}a.type!==PathParser.CLOSE_PATH?e.push({type:o,points:h,start:{x:n,y:s},pathLength:this.calcLength(n,s,o,h)}):e.push({type:PathParser.CLOSE_PATH,points:[],pathLength:0})}return e}pathM(t,e){var{x:r,y:i}=PathElement.pathM(t).point;e.push(r,i)}pathL(t,e){var{x:r,y:i}=PathElement.pathL(t).point;return e.push(r,i),PathParser.LINE_TO}pathH(t,e){var{x:r,y:i}=PathElement.pathH(t).point;return e.push(r,i),PathParser.LINE_TO}pathV(t,e){var{x:r,y:i}=PathElement.pathV(t).point;return e.push(r,i),PathParser.LINE_TO}pathC(t,e){var{point:r,controlPoint:i,currentPoint:n}=PathElement.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}=PathElement.pathS(t);return e.push(r.x,r.y,i.x,i.y,n.x,n.y),PathParser.CURVE_TO}pathQ(t,e){var{controlPoint:r,currentPoint:i}=PathElement.pathQ(t);e.push(r.x,r.y,i.x,i.y)}pathT(t,e){var{controlPoint:r,currentPoint:i}=PathElement.pathT(t);return e.push(r.x,r.y,i.x,i.y),PathParser.QUAD_TO}pathA(t){var{rX:e,rY:r,sweepFlag:i,xAxisRotation:n,centp:s,a1:a,ad:o}=PathElement.pathA(t);return 0===i&&o>0&&(o-=2*Math.PI),1===i&&o<0&&(o+=2*Math.PI),[s.x,s.y,e,r,a,o,n,i]}calcLength(t,e,r,i){var n=0,s=null,a=null,o=0;switch(r){case PathParser.LINE_TO:return this.getLineLength(t,e,i[0],i[1]);case PathParser.CURVE_TO:for(o=.01,n=0,s=this.getPointOnCubicBezier(0,t,e,i[0],i[1],i[2],i[3],i[4],i[5]);o<=1;o+=.01)a=this.getPointOnCubicBezier(o,t,e,i[0],i[1],i[2],i[3],i[4],i[5]),n+=this.getLineLength(s.x,s.y,a.x,a.y),s=a;return n;case PathParser.QUAD_TO:for(o=.01,n=0,s=this.getPointOnQuadraticBezier(0,t,e,i[0],i[1],i[2],i[3]);o<=1;o+=.01)a=this.getPointOnQuadraticBezier(o,t,e,i[0],i[1],i[2],i[3]),n+=this.getLineLength(s.x,s.y,a.x,a.y),s=a;return n;case PathParser.ARC:n=0;var h=i[4],l=i[5],u=i[4]+l,g=Math.PI/180;
1if(Math.abs(h-u)<g&&(g=Math.abs(h-u)),s=this.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],h,0),l<0)for(o=h-g;o>u;o-=g)a=this.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],o,0),n+=this.getLineLength(s.x,s.y,a.x,a.y),s=a;else for(o=h+g;o<u;o+=g)a=this.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],o,0),n+=this.getLineLength(s.x,s.y,a.x,a.y),s=a;return a=this.getPointOnEllipticalArc(i[0],i[1],i[2],i[3],u,0),n+=this.getLineLength(s.x,s.y,a.x,a.y)}return 0}getPointOnLine(t,e,r,i,n){var s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:e,a=arguments.length>6&&void 0!==arguments[6]?arguments[6]:r,o=(n-r)/(i-e+P),h=Math.sqrt(t*t/(1+o*o));i<e&&(h*=-1);var l=o*h,u=null;if(i===e)u={x:s,y:a+l};else if((a-r)/(s-e+P)===o)u={x:s+h,y:a+l};else{var g=0,d=0,p=this.getLineLength(e,r,i,n);if(p<P)return null;var m=(s-e)*(i-e)+(a-r)*(n-r);m/=p*p,g=e+m*(i-e),d=r+m*(n-r);var f=this.getLineLength(s,a,g,d),y=Math.sqrt(t*t-f*f);h=Math.sqrt(y*y/(1+o*o)),i<e&&(h*=-1),l=o*h,u={x:g+h,y:d+l}}return u}getPointOnPath(t){var e=this.getPathLength(),r=0,i=null;if(t<-.00005||t-5e-5>e)return null;var{dataArray:n}=this;for(var s of n){if(s&&(s.pathLength<5e-5||r+s.pathLength+5e-5<t)){r+=s.pathLength;continue}var a=t-r,o=0;switch(s.type){case PathParser.LINE_TO:i=this.getPointOnLine(a,s.start.x,s.start.y,s.points[0],s.points[1],s.start.x,s.start.y);break;case PathParser.ARC:var h=s.points[4],l=s.points[5],u=s.points[4]+l;if(o=h+a/s.pathLength*l,l<0&&o<u||l>=0&&o>u)break;i=this.getPointOnEllipticalArc(s.points[0],s.points[1],s.points[2],s.points[3],o,s.points[6]);break;case PathParser.CURVE_TO:(o=a/s.pathLength)>1&&(o=1),i=this.getPointOnCubicBezier(o,s.start.x,s.start.y,s.points[0],s.points[1],s.points[2],s.points[3],s.points[4],s.points[5]);break;case PathParser.QUAD_TO:(o=a/s.pathLength)>1&&(o=1),i=this.getPointOnQuadraticBezier(o,s.start.x,s.start.y,s.points[0],s.points[1],s.points[2],s.points[3])}if(i)return i;break}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,s,a,o,h){return{x:o*CB1(t)+s*CB2(t)+i*CB3(t)+e*CB4(t),y:h*CB1(t)+a*CB2(t)+n*CB3(t)+r*CB4(t)}}getPointOnQuadraticBezier(t,e,r,i,n,s,a){return{x:s*(t*t)+i*QB2(t)+e*QB3(t),y:a*(t*t)+n*QB2(t)+r*QB3(t)}}getPointOnEllipticalArc(t,e,r,i,n,s){var a=Math.cos(s),o=Math.sin(s),h={x:r*Math.cos(n),y:i*Math.sin(n)};return{x:t+(h.x*a-h.y*o),y:e+(h.x*o+h.y*a)}}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 s=0,a=0;a<=r;a+=i){var o=this.getPointOnPath(a),h=this.getPointOnPath(a+i);o&&h&&(s+=this.getLineLength(o.x,o.y,h.x,h.y))>=n&&(this.equidistantCache.points.push({x:o.x,y:o.y,distance:a}),s-=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 C=/^\s*data:(([^/,;]+\/[^/,;]+)(?:;([^,;=]+=[^,;=]+))?)?(?:;(base64))?,(.*)$/i;let ImageElement=class ImageElement extends RenderedElement{constructor(t,e,r){super(t,e,r),this.type="image",this.loaded=!1;var i=this.getHrefAttribute().getString();if(!i)return;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(0,i.Z)(function*(){try{var r=yield e.document.createImage(t);e.image=r}catch(e){console.error('Error while loading image "'.concat(t,'":'),e)}e.loaded=!0})()}loadSvg(t){var e=this;return(0,i.Z)(function*(){var r=C.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),s=yield n.text();e.image=s}catch(e){console.error('Error while loading image "'.concat(t,'":'),e)}e.loaded=!0})()}renderChildren(t){var{document:e,image:r,loaded:i}=this,n=this.getAttribute("x").getPixels("x"),s=this.getAttribute("y").getPixels("y"),a=this.getStyle("width").getPixels("x"),o=this.getStyle("height").getPixels("y");if(i&&r&&a&&o){if(t.save(),t.translate(n,s),this.isSvg){var h=e.canvg.forkString(t,this.image,{ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0,ignoreClear:!0,offsetX:0,offsetY:0,scaleWidth:a,scaleHeight:o});h.document.documentElement.parent=this,h.render()}else{var l=this.image;e.setViewBox({ctx:t,aspectRatio:this.getAttribute("preserveAspectRatio").getString(),width:a,desiredWidth:l.width,height:o,desiredHeight:l.height}),this.loaded&&(void 0===l.complete||l.complete)&&t.drawImage(l,0,0)}
1t.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 BoundingBox(t,e,t+r,e+i)}};let SymbolElement=class SymbolElement extends RenderedElement{constructor(){super(...arguments),this.type="symbol"}render(t){}};let SVGFontLoader=class SVGFontLoader{constructor(t){this.document=t,this.loaded=!1,t.fonts.push(this)}load(t,e){var r=this;return(0,i.Z)(function*(){try{var{document:i}=r,n=(yield i.canvg.parser.load(e)).getElementsByTagName("font");Array.from(n).forEach(e=>{var r=i.createElement(e);i.definitions[t]=r})}catch(t){console.error('Error while loading font "'.concat(e,'":'),t)}r.loaded=!0})()}};let StyleElement=class StyleElement extends Element{constructor(t,e,r){super(t,e,r),this.type="style",compressSpaces(Array.from(e.childNodes).map(t=>t.textContent).join("").replace(/(\/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+\/)|(^[\s]*\/\/.*)/gm,"").replace(/@import.*;/g,"")).split("}").forEach(e=>{var r=e.trim();if(r){var i=r.split("{"),n=i[0].split(","),s=i[1].split(";");n.forEach(e=>{var r=e.trim();if(r){var i=t.styles[r]||{};if(s.forEach(e=>{var r=e.indexOf(":"),n=e.substr(0,r).trim(),s=e.substr(r+1,e.length-r).trim();n&&s&&(i[n]=new Property(t,n,s))}),t.styles[r]=i,t.stylesSpecificity[r]=getSelectorSpecificity(r),"@font-face"===r){var n=i["font-family"].getString().replace(/"|'/g,"");i.src.getString().split(",").forEach(e=>{if(e.indexOf('format("svg")')>0){var r=parseExternalUrl(e);r&&new SVGFontLoader(t).load(n,r)}})}}})}})}};StyleElement.parseExternalUrl=parseExternalUrl;let UseElement=class UseElement extends RenderedElement{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 SVGElement(e,null)).attributes.viewBox=new Property(e,"viewBox",r.getAttribute("viewBox").getString()),i.attributes.preserveAspectRatio=new Property(e,"preserveAspectRatio",r.getAttribute("preserveAspectRatio").getString()),i.attributes.overflow=new Property(e,"overflow",r.getAttribute("overflow").getString()),i.children=r.children,r.styles.opacity=new Property(e,"opacity",this.calculateOpacity())),"svg"===i.type){var n=this.getStyle("width",!1,!0),s=this.getStyle("height",!1,!0);n.hasValue()&&(i.attributes.width=new Property(e,"width",n.getString())),s.hasValue()&&(i.attributes.height=new Property(e,"height",s.getString()))}var a=i.parent;i.parent=this,i.render(t),i.parent=a}}getBoundingBox(t){var{element:e}=this;return e?e.getBoundingBox(t):null}elementTransform(){var{document:t,element:e}=this;return Transform.fromElement(t,e)}get element(){return this.cachedElement||(this.cachedElement=this.getHrefAttribute().getDefinition()),this.cachedElement}};function c(t,e,r,i){return e+Math.cos(t)*r+Math.sin(t)*i}let FeColorMatrixElement=class FeColorMatrixElement extends Element{constructor(t,e,r){super(t,e,r),this.type="feColorMatrix";var i=toNumbers(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 s=i[0]*Math.PI/180;i=[c(s,.213,.787,-.213),c(s,.715,-.715,-.715),c(s,.072,-.072,.928),0,0,c(s,.213,-.213,.143),c(s,.715,.285,.14),c(s,.072,-.072,-.283),0,0,c(s,.213,-.213,-.787),c(s,.715,-.715,.715),c(s,.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]}this.matrix=i,this.includeOpacity=this.getAttribute("includeOpacity").hasValue()}apply(t,e,r,i,n){for(var{includeOpacity:s,matrix:a}=this,o=t.getImageData(0,0,i,n),h=0;h<n;h++)for(var l=0;l<i;l++){var u,g,d,p,m,f,y,v,x,P,b,S,E,w,C,A,T,M,V,k,O=o.data[h*i*4+4*l+0],B=o.data[h*i*4+4*l+1],N=o.data[h*i*4+4*l+2],D=o.data[h*i*4+4*l+3],F=a[0]*O+a[1]*B+a[2]*N+a[3]*D+1*a[4],R=a[5]*O+a[6]*B+a[7]*N+a[8]*D+1*a[9],z=a[10]*O+a[11]*B+a[12]*N+a[13]*D+1*a[14],L=a[15]*O+a[16]*B+a[17]*N+a[18]*D+1*a[19];s&&(F=0,R=0,z=0,L*=D/255),m=o.data,f=l,y=h,v=F,m[y*i*4+4*f+0]=v,x=o.data,P=l,b=h,S=R,x[b*i*4+4*P+1]=S,E=o.data,w=l,C=h,A=z,E[C*i*4+4*w+2]=A,T=o.data,M=l,V=h,k=L,T[V*i*4+4*M+3]=k}t.clearRect(0,0,i,n),t.putImageData(o,0,0)}};
1let MaskElement=class MaskElement extends Element{constructor(){super(...arguments),this.type="mask"}apply(t,e){var{document:r}=this,i=this.getAttribute("x").getPixels("x"),n=this.getAttribute("y").getPixels("y"),s=this.getStyle("width").getPixels("x"),a=this.getStyle("height").getPixels("y");if(!s&&!a){var o=new BoundingBox;this.children.forEach(e=>{o.addBoundingBox(e.getBoundingBox(t))}),i=Math.floor(o.x1),n=Math.floor(o.y1),s=Math.floor(o.width),a=Math.floor(o.height)}var h=this.removeStyles(e,MaskElement.ignoreStyles),l=r.createCanvas(i+s,n+a),u=l.getContext("2d");r.screen.setDefaults(u),this.renderChildren(u),new FeColorMatrixElement(r,{nodeType:1,childNodes:[],attributes:[{nodeName:"type",value:"luminanceToAlpha"},{nodeName:"includeOpacity",value:"true"}]}).apply(u,0,0,i+s,n+a);var g=r.createCanvas(i+s,n+a),d=g.getContext("2d");r.screen.setDefaults(d),e.render(d),d.globalCompositeOperation="destination-in",d.fillStyle=u.createPattern(l,"no-repeat"),d.fillRect(0,0,i+s,n+a),t.fillStyle=d.createPattern(g,"no-repeat"),t.fillRect(0,0,i+s,n+a),this.restoreStyles(e,h)}render(t){}};MaskElement.ignoreStyles=["mask","transform","clip-path"];var noop=()=>{};let ClipPathElement=class ClipPathElement extends Element{constructor(){super(...arguments),this.type="clipPath"}apply(t){var{document:e}=this,r=Reflect.getPrototypeOf(t),{beginPath:i,closePath:n}=t;r&&(r.beginPath=noop,r.closePath=noop),Reflect.apply(i,t,[]),this.children.forEach(i=>{if(void 0!==i.path){var s=void 0!==i.elementTransform?i.elementTransform():null;s||(s=Transform.fromElement(e,i)),s&&s.apply(t),i.path(t),r&&(r.closePath=n),s&&s.unapply(t)}}),Reflect.apply(n,t,[]),t.clip(),r&&(r.beginPath=i,r.closePath=n)}render(t){}};let FilterElement=class FilterElement extends Element{constructor(){super(...arguments),this.type="filter"}apply(t,e){var{document:r,children:i}=this,n=e.getBoundingBox(t);if(n){var s=0,a=0;i.forEach(t=>{var e=t.extraFilterDistance||0;s=Math.max(s,e),a=Math.max(a,e)});var o=Math.floor(n.width),h=Math.floor(n.height),l=o+2*s,u=h+2*a;if(!(l<1)&&!(u<1)){var g=Math.floor(n.x),d=Math.floor(n.y),p=this.removeStyles(e,FilterElement.ignoreStyles),m=r.createCanvas(l,u),f=m.getContext("2d");r.screen.setDefaults(f),f.translate(-g+s,-d+a),e.render(f),i.forEach(t=>{"function"==typeof t.apply&&t.apply(f,0,0,l,u)}),t.drawImage(m,0,0,l,u,g-s,d-a,l,u),this.restoreStyles(e,p)}}}render(t){}};FilterElement.ignoreStyles=["filter","transform","clip-path"];let FeDropShadowElement=class FeDropShadowElement extends Element{constructor(t,e,r){super(t,e,r),this.type="feDropShadow",this.addStylesFromStyleDefinition()}apply(t,e,r,i,n){}};let FeMorphologyElement=class FeMorphologyElement extends Element{constructor(){super(...arguments),this.type="feMorphology"}apply(t,e,r,i,n){}};let FeCompositeElement=class FeCompositeElement extends Element{constructor(){super(...arguments),this.type="feComposite"}apply(t,e,r,i,n){}};let FeGaussianBlurElement=class FeGaussianBlurElement extends Element{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:s,blurRadius:a}=this,o=s.window?s.window.document.body:null,l=t.canvas;l.id=s.getUniqueId(),o&&(l.style.display="none",o.appendChild(l)),(0,h.vR)(l,e,r,i,n,a),o&&o.removeChild(l)}};let TitleElement=class TitleElement extends Element{constructor(){super(...arguments),this.type="title"}};let DescElement=class DescElement extends Element{constructor(){super(...arguments),this.type="desc"}};function ownKeys$1(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 _createImage(){return(_createImage=(0,i.Z)(function*(t){var e=arguments.length>1&&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,s)=>{i(s)},r.src=t})})).apply(this,arguments)}let Document=class Document{constructor(t){var{rootEmSize:e=12,emSize:r=12,createCanvas:i=Document.createCanvas,createImage:n=Document.createImage,anonymousCrossOrigin:s}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.canvg=t,this.definitions=Object.create(null),this.styles=Object.create(null),this.stylesSpecificity=Object.create(null),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,s),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=Document.elementTypes[e];return void 0!==r?new r(this,t):new UnknownElement(this,t)}createTextNode(t){return new TextNode(this,t)}
1setViewBox(t){this.screen.setViewBox(function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys$1(Object(r),!0).forEach(function(e){(0,n.Z)(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys$1(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}({document:this},t))}};function ownKeys(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 _objectSpread(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ownKeys(Object(r),!0).forEach(function(e){(0,n.Z)(t,e,r[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))})}return t}Document.createCanvas=function(t,e){var r=document.createElement("canvas");return r.width=t,r.height=e,r},Document.createImage=function(t){return _createImage.apply(this,arguments)},Document.elementTypes={svg:SVGElement,rect:RectElement,circle:CircleElement,ellipse:EllipseElement,line:LineElement,polyline:PolylineElement,polygon:PolygonElement,path:PathElement,pattern:PatternElement,marker:MarkerElement,defs:DefsElement,linearGradient:LinearGradientElement,radialGradient:RadialGradientElement,stop:StopElement,animate:AnimateElement,animateColor:AnimateColorElement,animateTransform:AnimateTransformElement,font:FontElement,"font-face":FontFaceElement,"missing-glyph":MissingGlyphElement,glyph:GlyphElement,text:TextElement,tspan:TSpanElement,tref:TRefElement,a:AElement,textPath:TextPathElement,image:ImageElement,g:GElement,symbol:SymbolElement,style:StyleElement,use:UseElement,mask:MaskElement,clipPath:ClipPathElement,filter:FilterElement,feDropShadow:FeDropShadowElement,feMorphology:FeMorphologyElement,feComposite:FeCompositeElement,feColorMatrix:FeColorMatrixElement,feGaussianBlur:FeGaussianBlurElement,title:TitleElement,desc:DescElement};let Canvg=class Canvg{constructor(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};this.parser=new Parser(r),this.screen=new Screen(t,r),this.options=r;var i=new Document(this,r),n=i.createDocumentElement(e);this.document=i,this.documentElement=n}static from(t,e){var r=arguments;return(0,i.Z)(function*(){var i=r.length>2&&void 0!==r[2]?r[2]:{},n=new Parser(i),s=yield n.parse(e);return new Canvg(t,s,i)})()}static fromString(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=new Parser(r).parseFromString(e);return new Canvg(t,i,r)}fork(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return Canvg.from(t,e,_objectSpread(_objectSpread({},this.options),r))}forkString(t,e){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return Canvg.fromString(t,e,_objectSpread(_objectSpread({},this.options),r))}ready(){return this.screen.ready()}isReady(){return this.screen.isReady()}render(){var t=arguments,e=this;return(0,i.Z)(function*(){var r=t.length>0&&void 0!==t[0]?t[0]:{};e.start(_objectSpread({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,_objectSpread(_objectSpread({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)}}}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.