svg-path-simplify 0.4.3 → 0.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +2 -1
  3. package/dist/svg-path-simplify.esm.js +1670 -509
  4. package/dist/svg-path-simplify.esm.min.js +2 -2
  5. package/dist/svg-path-simplify.js +1671 -508
  6. package/dist/svg-path-simplify.min.js +2 -2
  7. package/dist/svg-path-simplify.pathdata.esm.js +936 -463
  8. package/dist/svg-path-simplify.pathdata.esm.min.js +2 -2
  9. package/dist/svg-path-simplify.poly.cjs +9 -8
  10. package/index.html +60 -20
  11. package/package.json +1 -1
  12. package/src/constants.js +4 -0
  13. package/src/detect_input.js +47 -29
  14. package/src/index.js +8 -0
  15. package/src/pathData_simplify_cubic.js +46 -18
  16. package/src/pathData_simplify_revertToquadratics.js +0 -1
  17. package/src/pathSimplify-main.js +81 -20
  18. package/src/pathSimplify-only-pathdata.js +7 -2
  19. package/src/pathSimplify-presets.js +14 -4
  20. package/src/svg-getAttributes.js +5 -3
  21. package/src/svgii/convert_units.js +1 -1
  22. package/src/svgii/geometry.js +140 -2
  23. package/src/svgii/geometry_bbox_element.js +1 -1
  24. package/src/svgii/geometry_deduceRadius.js +116 -27
  25. package/src/svgii/geometry_length.js +18 -2
  26. package/src/svgii/pathData_analyze.js +18 -0
  27. package/src/svgii/pathData_convert.js +188 -88
  28. package/src/svgii/pathData_fix_directions.js +10 -18
  29. package/src/svgii/pathData_reorder.js +123 -16
  30. package/src/svgii/pathData_simplify_refineCorners.js +130 -35
  31. package/src/svgii/pathData_simplify_refine_round.js +420 -0
  32. package/src/svgii/poly_normalize.js +9 -8
  33. package/src/svgii/rounding.js +112 -80
  34. package/src/svgii/svg_cleanup.js +75 -22
  35. package/src/svgii/svg_cleanup_convertPathLength.js +27 -15
  36. package/src/svgii/svg_cleanup_normalize_transforms.js +1 -1
  37. package/src/svgii/svg_cleanup_remove_els_and_atts.js +6 -1
  38. package/src/svgii/svg_el_parse_style_props.js +13 -10
  39. package/src/svgii/svg_validate.js +220 -0
  40. package/tests/testSVG.js +14 -1
  41. package/src/svgii/pathData_refine_round.js +0 -222
@@ -1,3 +1,3 @@
1
- !function(e){"use strict";function t(e,t,l="red",a="1%",r="1",n="",s=!0,i="",o=""){Array.isArray(t)&&(t={x:t[0],y:t[1]});let u=`<circle class="${o}" opacity="${r}" id="${i}" cx="${t.x}" cy="${t.y}" r="${a}" fill="${l}">\n <title>${n}</title></circle>`;if(!s)return u;e.insertAdjacentHTML("beforeend",u)}function l(e,t="",l="green",a="1%",r="1",n=!0){let s=`<path d="${t}" fill="none" stroke="${l}" stroke-width="${a}" stroke-opacity="${r}" /> `;if(!n)return s;e.insertAdjacentHTML("beforeend",s)}const{abs:a,acos:r,asin:n,atan:s,atan2:i,ceil:o,cos:u,exp:h,floor:p,log:c,hypot:y,max:f,min:x,pow:m,random:d,round:g,sin:v,sqrt:b,tan:A,PI:M}=Math,w=180/Math.PI,C=Math.PI/180,k="http://www.w3.org/2000/svg",S=.39370078,{abs:E,acos:P,asin:D,atan:L,atan2:$,ceil:T,cos:N,exp:q,floor:j,log:z,max:I,min:B,pow:F,random:O,round:R,sin:Q,sqrt:V,tan:G,PI:H}=Math;function U(e,t,l=!1){let a=$(t.y-e.y,t.x-e.x);return l&&a<0&&(a+=2*Math.PI),a}function Z(e,t,l,a=!1){let r=Math.atan2(t.y-e.y,t.x-e.x),n=Math.atan2(l.y-e.y,l.x-e.x),s=n-r;s=(e=>{let t=e%(2*Math.PI);return t>Math.PI?t-=2*Math.PI:t<=-Math.PI&&(t+=2*Math.PI),t})(s),a&&(s=2*Math.PI-Math.abs(s));let i=180/Math.PI;return{startAngle:r,endAngle:n,deltaAngle:s,startAngleDeg:r*i,endAngleDeg:n*i,deltaAngleDeg:s*i}}function W(e=null,t=null,l=null,a=null,r=!0,n=!1,s=!1){let i,o,u,h,p,c={};if(!(e&&t&&l&&a))return s&&console.warn("points missing"),!1;if(e.x===t.x&&e.y===t.y||l.x===a.x&&l.y===a.y)return!1;try{if(i=(a.y-l.y)*(t.x-e.x)-(a.x-l.x)*(t.y-e.y),0===i)return!1}catch{return s&&console.warn("!catch",e,t,"p3:",l,"p4:",a),!1}o=e.y-l.y,u=e.x-l.x,h=(a.x-l.x)*o-(a.y-l.y)*u,p=(t.x-e.x)*o-(t.y-e.y)*u,o=h/i,u=p/i,c={x:e.x+o*(t.x-e.x),y:e.y+o*(t.y-e.y)};let y=!1;return o>0&&o<1&&u>0&&u<1&&(y=!0),!r&&n&&(o>0&&u<0||o<0&&u>0)?(y=!1,!1):!(r&&!y)&&c}function X(e,t,l,a=!1){const r=(e,t,l)=>e>=t&&e<=l||e<=t&&e>=l;let n=!1;if((!a||!l.bottom)&&(l.left>e.x||l.top>e.y||l.bottom<e.y||l.right<e.x))return!1;let s=t.length;for(let l=s-1,a=0;a<s;l=a,a++){const s=t[l],i=t[a];if(e.x==s.x&&e.y==s.y||e.x==i.x&&e.y==i.y)return!0;if(s.y==i.y&&e.y==s.y&&r(e.x,s.x,i.x))return!0;if(r(e.y,s.y,i.y)){if(e.y==s.y&&i.y>=s.y||e.y==i.y&&s.y>=i.y)continue;const t=(s.x-e.x)*(i.y-e.y)-(i.x-e.x)*(s.y-e.y);if(0==t)return!0;s.y<i.y==t>0&&(n=!n)}}return!!n}function J(e,t,l,a=!1){let r={x:(t.x-e.x)*l+e.x,y:(t.y-e.y)*l+e.y};return a&&(r.angle=U(e,t),r.angle<0&&(r.angle+=2*H)),r}function Y(e,t=.5,l=!1,a=!1,r=!1){let n;return Array.isArray(e[0])&&(e=e.map(e=>({x:e[0],y:e[1]})),r=!0),n=e.length>2?((e,t,l=!1)=>{let r=4===e.length,n=e[0],s=e[1],i=r?e[2]:e[1],o=e[e.length-1],u={x:0,y:0};if(l||a){let e,l,h,p,c,y=n.x===s.x&&n.y===s.y,f=o.x===i.x&&o.y===i.y;0!==t||y?1!==t||f?(y&&(t+=1e-7),f&&(t-=1e-7),e=J(n,s,t),r?(l=J(s,i,t),h=J(i,o,t),p=J(e,l,t),c=J(l,h,t),u=J(p,c,t),u.angle=U(p,c),a&&(u.cpts=[l,h,p,c])):(l=J(n,s,t),h=J(s,o,t),u=J(l,h,t),u.angle=U(l,h),a&&(u.cpts=[l,h]))):(u.x=o.x,u.y=o.y,u.angle=U(i,o)):(u.x=n.x,u.y=n.y,u.angle=U(n,s))}else{let e=1-t;u=r?{x:e**3*n.x+3*e**2*t*s.x+3*e*t**2*i.x+t**3*o.x,y:e**3*n.y+3*e**2*t*s.y+3*e*t**2*i.y+t**3*o.y}:{x:e*e*n.x+2*e*t*s.x+t**2*o.x,y:e*e*n.y+2*e*t*s.y+t**2*o.y}}return u})(e,t,l):J(e[0],e[1],t,l),l&&n.angle<0&&(n.angle+=2*H),r?[n.x,n.y]:n}function _(e=[],t=!1,l=-1){let a=[];return e.forEach(e=>{let{type:r,values:n}=e;if(n.length)if(l>-1&&(n=n.map(e=>+e.toFixed(l))),t)for(let e=1;e<n.length;e+=2)a.push({x:n[e-1],y:n[e]});else a.push({x:n[n.length-2],y:n[n.length-1]})}),a}function K(e,t,l,a,r,n,s,i,o,u=!0){const h=(e,t,l,a,r=!0)=>{let n=Math.atan2(a-t,l-e);return r&&n<0&&(n+=2*Math.PI),n};let p={cx:0,cy:0,rx:l=Math.abs(l),ry:a=Math.abs(a),startAngle:0,endAngle:0,deltaAngle:0,clockwise:s,xAxisRotation:r=l===a?0:r<0&&u?r+360:r,largeArc:n,sweep:s};if(0==l||0==a)throw Error("rx and ry can not be 0");let c,y,f=l===a?0:r*C,x=f?Math.sin(f):0,m=f?Math.cos(f):1,d=(e-i)/2,g=(t-o)/2,v=(e+i)/2,b=(t+o)/2,A=f?m*d+x*g:d,M=f?m*g-x*d:g,k=A*A/(l*l)+M*M/(a*a);if(k>1){let e=Math.sqrt(k);l*=e,a*=e,p.rx=l,p.ry=a}let S=l*a,E=l*M,P=a*A,D=E**2+P**2;if(!D)throw Error("start point can not be same as end point");let L=Math.sqrt(Math.abs((S*S-D)/D));n===s&&(L=-L);let $=L*E/a,T=-L*P/l;c=f?m*$-x*T+v:v+$,y=f?x*$+m*T+b:b+T,p.cy=y,p.cx=c;let N=h(c,y,e,t,u),q=h(c,y,i,o,u);s?q<N&&(q+=2*Math.PI):q>N&&(q-=2*Math.PI);let j=q-N;return p.startAngle=N,p.startAngle_deg=N*w,p.endAngle=q,p.endAngle_deg=q*w,p.deltaAngle=j,p.deltaAngle_deg=j*w,p}function ee(e,t,l,a=0,r=!1){return a?(a=r?a/180*Math.PI:a,{x:t+(e.x-t)*Math.cos(a)-(e.y-l)*Math.sin(a),y:l+(e.x-t)*Math.sin(a)+(e.y-l)*Math.cos(a)}):e}function te(e,t,l,a,r,n=0,s=!0,i=!1){if(r=i?r*H/180:r,n=i?n*H/180:n,n=l!==a&&n!==2*H?n:0,s&&l!==a){let e=L(G(r=n?r-n:r)*(l/a));r=N(r)<0?e+H:e}let o=e+l*N(r),u=t+a*Q(r),h={x:o,y:u};return n&&(h.x=e+(o-e)*N(n)-(u-t)*Q(n),h.y=t+(o-e)*Q(n)+(u-t)*N(n)),h}function le(e,t,l){if(t===l||e%H*.5==0)return e;let a=L(G(e)*(t/l));return a=N(e)<0?a+H:a,a}function ae(e=null,t=[]){e||(e=t[0],t=t.slice(1,t.length));let l=t.length,a=t[l-1],r=t[0],n=3===l?t[1]:r,s=Math.min(e.y,a.y),i=Math.min(e.x,a.x),o=Math.max(e.x,a.x),u=Math.max(e.y,a.y);return!(r.y>=s&&r.y<=u&&n.y>=s&&n.y<=u&&r.x>=i&&r.x<=o&&n.x>=i&&n.x<=o)}function re(e,{addExtremes:t=!0,addSemiExtremes:l=!1}={}){let a=4===e.length?function(e,t,l,a,{addExtremes:r=!0,addSemiExtremes:n=!1}={}){const s=e=>{const t=Math.PI/4,l=Math.cos(t),a=Math.sin(t);return{x:e.x*l-e.y*a,y:e.x*a+e.y*l}};n&&(e=s(e),t=s(t),l=s(l),a=s(a));let[i,o,u,h,p,c,y,f]=[e.x,e.y,t.x,t.y,l.x,l.y,a.x,a.y],x=Math.min(e.y,a.y),m=Math.min(e.x,a.x),d=Math.max(e.x,a.x),g=Math.max(e.y,a.y);if(t.y>=x&&t.y<=g&&l.y>=x&&l.y<=g&&t.x>=m&&t.x<=d&&l.x>=m&&l.x<=d)return[];let v,b,A,M,w,C,k,S,E=[];for(let e=0;e<2;++e)if(0==e?(b=6*i-12*u+6*p,v=-3*i+9*u-9*p+3*y,A=3*u-3*i):(b=6*o-12*h+6*c,v=-3*o+9*h-9*c+3*f,A=3*h-3*o),Math.abs(v)<1e-8){if(Math.abs(b)<1e-8)continue;M=-A/b,0<M&&M<1&&E.push(M)}else k=b*b-4*A*v,k<0?Math.abs(k)<1e-8&&(M=-b/(2*v),0<M&&M<1&&E.push(M)):(S=Math.sqrt(k),w=(-b+S)/(2*v),0<w&&w<1&&E.push(w),C=(-b-S)/(2*v),0<C&&C<1&&E.push(C));let P=E.length;for(;P--;)M=E[P];return E}(e[0],e[1],e[2],e[3],{addExtremes:t,addSemiExtremes:l}):function(e,t,l,{addExtremes:a=!0,addSemiExtremes:r=!1}={}){const n=e=>{const t=-Math.PI/4,l=Math.cos(t),a=Math.sin(t);return{x:e.x*l-e.y*a,y:e.x*a+e.y*l}};r&&(e=n(e),t=n(t),l=n(l));let s,i,o,u=Math.min(e.y,l.y),h=Math.min(e.x,l.x),p=Math.max(e.x,l.x),c=Math.max(e.y,l.y);if(t.y>=u&&t.y<=c&&t.x>=h&&t.x<=p)return[];let[y,f,x,m,d,g]=[e.x,e.y,t.x,t.y,l.x,l.y],v=[];for(let e=0;e<2;++e)s=0==e?y-2*x+d:f-2*m+g,i=0==e?-2*y+2*x:-2*f+2*m,Math.abs(s)>1e-12&&(o=-i/(2*s),o>0&&o<1&&v.push(o));return v}(e[0],e[1],e[2],{addExtremes:t,addSemiExtremes:l});return a}function ne(e,t){const l=(e,t,l,a,r,n)=>{var s=Math.cos(n),i=Math.sin(n),o=a*Math.cos(e),u=r*Math.sin(e);return{x:t+s*o-i*u,y:l+i*o+s*u}};let a,r,n,s,i,o=K(e.x,e.y,t[0],t[1],t[2],t[3],t[4],t[5],t[6]),{rx:u,ry:h,cx:p,cy:c,endAngle:y,deltaAngle:f}=o,x=t[2],m={x:t[5],y:t[6]},d=[m],g=x*Math.PI/180,v=Math.tan(g);i=Math.atan2(-h*v,u);let b=i,A=i+Math.PI,M=Math.atan2(h,u*v),w=M+Math.PI,C=[e.x,m.x],k=[e.y,m.y],S=Math.min(...C),E=Math.max(...C),P=Math.min(...k),D=Math.max(...k),L=l(y-.001*f,p,c,u,h,g),$=l(y-.999*f,p,c,u,h,g);return(L.x>E||$.x>E)&&(a=l(b,p,c,u,h,g),d.push(a)),(L.x<S||$.x<S)&&(r=l(A,p,c,u,h,g),d.push(r)),(L.y<P||$.y<P)&&(s=l(w,p,c,u,h,g),d.push(s)),(L.y>D||$.y>D)&&(n=l(M,p,c,u,h,g),d.push(n)),d}function se(e=[],t=[]){let l=e.length,a=4===l;t.length||(t=[0]);let r=t.length,n=[];for(let s=0;s<r;s++){let r=t[s],i=r?[]:e.slice(0);if(r)for(let t=0;t<l;t++){let l=e[t];i.push(ee(l,0,0,r))}let o=a?ie(...i):oe(...i);n.push(...o)}return n=[...new Set(n)].sort(),n}function ie(e,t,l,a){if(!ae(e,[t,l,a]))return[];let r,n,s,i,o,u,h,p,[c,y,f,x,m,d,g,v]=[e.x,e.y,t.x,t.y,l.x,l.y,a.x,a.y],b=[],A=1e-8;for(let e=0;e<2;++e)if(0==e?(n=6*c-12*f+6*m,r=-3*c+9*f-9*m+3*g,s=3*f-3*c):(n=6*y-12*x+6*d,r=-3*y+9*x-9*d+3*v,s=3*x-3*y),Math.abs(r)<A){if(Math.abs(n)<A)continue;i=-s/n,i>0&&i<1&&b.push(i)}else h=n*n-4*s*r,h<0?Math.abs(h)<A&&(i=-n/(2*r),i>0&&i<1&&b.push(i)):(p=Math.sqrt(h),o=(-n+p)/(2*r),o>0&&o<1&&b.push(o),u=(-n-p)/(2*r),u>0&&u<1&&b.push(u));let M=b.length;for(;M--;)i=b[M];return[...new Set(b)].sort()}function oe(e,t,l){if(!ae(e,[t,l]))return[];let a,r,n,[s,i,o,u,h,p]=[e.x,e.y,t.x,t.y,l.x,l.y],c=[];for(let e=0;e<2;++e)a=0==e?s-2*o+h:i-2*u+p,r=0==e?-2*s+2*o:-2*i+2*u,Math.abs(a)>1e-12&&(n=-r/(2*a),n>0&&n<1&&c.push(n));return[...new Set(c)].sort()}function ue(e,t=.001){let l=Math.PI/2,a=l/2;return!(Math.abs(e/l-Math.round(e/l))<t)&&Math.abs(e/a-Math.round(e/a))<t}function he(e,t,l=!1){let a=l?t[0]-e[0]:t.x-e.x,r=l?t[1]-e[1]:t.y-e.y;return Math.sqrt(a*a+r*r)}function pe(e,t){let l=t.x-e.x,a=t.y-e.y;return l*l+a*a}function ce(e,t){return Math.abs(t.x-e.x)+Math.abs(t.y-e.y)}function ye(e,t){return.5*(Math.abs(t.x-e.x)+Math.abs(t.y-e.y))}function fe(e,t=48){if(!Array.isArray(e)||e.length<=t)return e;let l=e.length,a=l/t,r=[];for(let l=0;l<t;l++)r.push(e[Math.floor(l*a)]);let n=r.length;return r[n-1]!==e[l-1]&&(r[n-1]=e[l-1]),r}function xe(e,t){if(!e||!t)return{a:1,b:0,c:0,d:1,e:0,f:0};return e.getScreenCTM().inverse().multiply(t.getScreenCTM())}function me(e){let t=[],l=[e[0]],a=e.length;for(let r=1;r<a;r++){let a=e[r];"M"!==a.type&&"m"!==a.type||(t.push(l),l=[]),l.push(a)}return l.length&&t.push(l),t}function de(e,t){let l,a,r,n,s,i,o=[],u=[],h=e[0],p=e[1],c=e[e.length-2],y=e[e.length-1];return 4===e.length?(l=Y([h,p],t),a=Y([p,c],t),r=Y([c,y],t),n=Y([l,a],t),s=Y([a,r],t),i=Y([n,s],t),o.push({x:h.x,y:h.y},{x:l.x,y:l.y},{x:n.x,y:n.y},{x:i.x,y:i.y}),u.push({x:i.x,y:i.y},{x:s.x,y:s.y},{x:r.x,y:r.y},{x:y.x,y:y.y})):3===e.length?(a=Y([h,p],t),r=Y([p,y],t),i=Y([a,r],t),o.push({x:h.x,y:h.y},{x:a.x,y:a.y},{x:i.x,y:i.y}),u.push({x:i.x,y:i.y},{x:r.x,y:r.y},{x:y.x,y:y.y})):2===e.length&&(a=Y([h,y],t),o.push({x:h.x,y:h.y},{x:a.x,y:a.y}),u.push({x:a.x,y:a.y},{x:y.x,y:y.y})),[o,u]}function ge(e,t,{tMin:l=0,tMax:a=1,addExtremes:r=!0,addSemiExtremes:n=!1}={}){let s=[],i=6===t.length?"C":"Q",o={x:t[0],y:t[1]},u="C"===i?{x:t[2],y:t[3]}:o,h={x:t[4],y:t[5]},p=0;let c="C"===i?[e,o,u,h]:[e,o,h],y=r?re(c,{addExtremes:r,addSemiExtremes:!1}):[],f=n?re(c,{addExtremes:r,addSemiExtremes:n}):[],x=Array.from(new Set([...y,...f])).sort();if(x=x.filter(e=>e>0&&e<1),x.length){let l=function(e,t,l,a=!0){let r=[];if(!l.length)return!1;let n,s,i,o=t.length,u={x:t[o-2],y:t[o-1]};2===t.length?i=[e,u]:4===t.length?(n={x:t[0],y:t[1]},i=[e,n,u]):6===t.length&&(n={x:t[0],y:t[1]},s={x:t[2],y:t[3]},i=[e,n,s,u]);if(l.length)if(1===l.length){let e=de(i,l[0]),t=e[0],a=e[1];r.push(t,a)}else{let e=l[0],t=de(i,e),a=t[0];r.push(a),i=t[1];for(let t=1;t<l.length;t++){e=l[t-1];let a=de(i,(l[t]-e)/(1-e));r.push(a[0]),t===l.length-1&&r.push(a[a.length-1]),i=a[1]}}if(a){let e,t,l=[];return r.forEach(a=>{e={type:"",values:[]},a.shift(),t=a.map(e=>Object.values(e)).flat(),e.values=t,3===a.length?e.type="C":2===a.length?e.type="Q":1===a.length&&(e.type="L"),l.push(e)}),l}return r}(e,t,x);s.push(...l),p+=l.length}else s.push({type:i,values:t});return{pathData:s,count:p}}function ve(e,{tMin:t=0,tMax:l=1,addExtremes:a=!0,addSemiExtremes:r=!1}={}){let n=[e[0]],s={x:e[0].values[0],y:e[0].values[1]},i={x:e[0].values[0],y:e[0].values[1]},o=e.length;for(let u=1;o&&u<o;u++){let o=e[u],{type:h,values:p}=o,c=p.slice(-2);if(c[0],c[1],"C"!==h&&"Q"!==h)n.push(o);else if((a||r)&&("C"===h||"Q"===h)){let e=ge(s,p,{tMin:t,tMax:l,addExtremes:a,addSemiExtremes:r}).pathData;n.push(...e)}s={x:c[0],y:c[1]},"z"===h.toLowerCase()?s=i:"M"===h&&(i={x:c[0],y:c[1]})}return n}function be(e){let t=e.startsWith("#")?"rgbHex":e.includes("(")?"fn":typeof e,l={},a=null,r={mode:null,values:[]};if("rgbHex"===t)l=function(e=""){e.startsWith("#")&&(e=e.substring(1));(3===e.length||4===e.length)&&(e=e.split("").map(e=>e+e).join(""));let t=0,l=0,a=0,r=0;if(e.length<6||e.length>8)return console.warn("Invalid hex format"),{r:t,g:l,b:a,a:r};let n=8===e.length,s=parseInt(e,16);return t=n?parseInt(e.substring(0,2),16):s>>16&255,l=n?parseInt(e.substring(2,4),16):s>>8&255,a=n?parseInt(e.substring(4,6),16):255&s,r=n?parseInt(e.substring(6,8),16):255,{r:t,g:l,b:a,a:r}}(e),a="rgba";else if("fn"===t){let t=e.split(/\(|\)/).filter(Boolean);if(t.length<2)return e;a=t[0];let r=t[1].split(/,| /).filter(Boolean).map(Number);a.split("").forEach((e,t)=>{let n=r[t];"rgba"===a&&"a"===e&&(n=Math.floor(255*n)),l[e]=n})}else if("string"===t)return r.mode="keyword",r.values=[e],r;return"rgba"!==a&&"rgb"!==a||(l.a=l.a?l.a:255),r.mode=a,r.values=Object.values(l),r}function Ae({r:e=0,g:t=0,b:l=0,a:a=255,values:r=[]}){const n=e=>{const t=Math.min(255,Math.max(0,Math.round(e))).toString(16);return 1===t.length?"0"+t:t};e||t||l||!r.length||([e,t,l,a=255]=r);let s=n(e),i=n(t),o=n(l),u=a<255?n(a):0,h=s[0]===s[1]&&i[0]===i[1]&&o[0]===o[1];return!u&&h?`#${s[0]}${i[0]}${o[0]}`:u&&h?`#${s[0]}${i[0]}${o[0]}${u[0]}`:u?`#${s}${i}${o}${u}`:`#${s}${i}${o}`}function Me(e){let t=[];for(let l=1,a=e.length;l<a;l++){let a=e[l],{type:r,values:n,p0:s=null,p:i=null,dimA:o=0}=a;n.length&&i&&s&&(o=o||ce(s,i),o&&t.push(o))}let l=t.sort(),a=Math.ceil(l.length/6);l=l.slice(0,a);let r=l.reduce((e,t)=>e+t,0)/a,n=r>112.5?0:Math.floor(75/r).toString().length;return Math.min(Math.max(0,n),8)}function we(e=0,t=3){if(t<=-1)return e;if(!t)return Math.round(e);let l=10**t;return Math.round(e*l)/l}function Ce(e,t=50){let l=8;l=e>2*t?0:e>t?1:Math.ceil(500/e).toString().length;let a=10**l;return Math.round(e*a)/a}function ke(e,t=-1){if(t<0)return e;let l=e.length,a=t;for(let t=0;t<l;t++){let l=e[t],{values:r}=l,n=r.length;if(n)for(let l=0;l<n;l++)e[t].values[l]=we(r[l],a)}return e}const Se=["polygon","polyline","line","rect","circle","ellipse"],Ee=["x","cx","rx","dx","width","translateX"],Pe=["y","cy","ry","dy","height","translateY"],De=["scaleX","translateX","skewX"],Le=["scaleY","translateY","skewY"],$e=["fill","stroke","stop-color"],Te=["d","points","cx","cy","x1","x2","y1","y2","width","height","r","rx","ry","x","y"],Ne=["path",...Se],qe=["text","textPath","tspan",...Ne],je=["textPath","text","tspan"],ze=["stroke","stroke-width","stroke-linecap","stroke-linejoin","stroke-linecap","stroke-dasharray","stroke-dashoffset","stroke-miterlimit","stroke-opacity"],Ie={atts:{id:"*",class:"*",viewBox:["symbol","svg"],preserveAspectRatio:["symbol","svg"],width:["svg","rect","use","image"],height:["svg","rect","use","image"],d:["path"],points:["polygon","polyline"],x:["image","rect","text","textPath","tspan","use","mask"],y:["image","rect","text","textPath","tspan","use","mask"],x1:["line","linearGradient"],x2:["line","linearGradient"],y1:["line","linearGradient"],y2:["line","linearGradient"],r:["circle","radialGradient"],rx:["rect","ellipse"],ry:["rect","ellipse"],cx:["circle","ellipse","radialGradient"],cy:["circle","ellipse","radialGradient"],refX:["symbol","markers"],refY:["symbol","markers"],transform:["svg","g","use",...Ne,...je],"transform-origin":["svg","g","use",...Ne,...je],fill:["svg","g","use",...Ne,...je,"animate","animateMotion"],"fill-opacity":["svg","g","use",...Ne,...je],"fill-rule":["svg","g","path","polygon","text","textPath"],opacity:["svg","g","use",...Ne,...je],stroke:["svg","g","use",...Ne,...je],"stroke-width":["svg","g","use",...Ne,...je,"mask"],"stroke-opacity":["svg","g","use",...Ne,...je,"mask"],"stroke-miterlimit":["svg","g","use",...Ne,...je,"mask"],"stroke-linejoin":["svg","g","use",...Ne,...je,"mask"],"stroke-linecap":["svg","g","use",...Ne,...je,"mask"],"stroke-dashoffset":["svg","g","use",...Ne,...je,"mask"],"stroke-dasharray":["svg","g","use",...Ne,...je,"mask"],"clip-path":["svg","g","use",...Ne,...je],"clip-rule":["path","polygon"],clipPathUnits:["clipPath"],mask:["svg","g","use",...Ne,...je],maskContentUnits:["mask"],maskUnits:["mask"],"font-family":["svg","g",...je],"font-size":["svg","g",...je],"font-style":["svg","g",...je],"font-weight":["svg","g",...je],"font-stretch":["svg","g",...je],"dominant-baseline":[...je],lengthAdjust:[...je],"text-anchor":["text"],textLength:["text","textPath","tspan"],dx:["text","tspan"],dy:["text","tspan"],method:["textPath"],spacing:["textPath"],startOffset:["textPath"],rotate:["text","tspan","animateMotion"],side:["textPath"],"white-space":["svg","g",...je],color:["svg","g",...je],playbackorder:["svg"],timelinebegin:["svg"],dur:["animate","animateTransform","animateMotion"],end:["animate","animateTransform","animateMotion"],from:["animate","animateTransform","animateMotion"],to:["animate","animateTransform","animateMotion"],type:["animateTransform"],values:["animate","animateTransform","animateMotion"],accumulate:["animate","animateTransform","animateMotion"],additive:["animate","animateTransform","animateMotion"],attributeName:["animate","animateTransform"],begin:["animate","animateTransform","animateMotion"],by:["animate","animateTransform","animateMotion"],calcMode:["animate","animateTransform","animateMotion"],keyPoints:["animateMotion"],keySplines:["animate","animateTransform","animateMotion"],keyTimes:["animate","animateTransform","animateMotion"],max:["animate","animateTransform","animateMotion"],min:["animate","animateTransform","animateMotion"],origin:["animateMotion"],repeatCount:["animate","animateTransform","animateMotion"],repeatDur:["animate","animateTransform","animateMotion"],restart:["animate","animateTransform","animateMotion"],gradientUnits:["linearGradient","radialGradient"],gradientTransform:["linearGradient","radialGradient"],fr:["radialGradient"],fx:["radialGradient"],fy:["radialGradient"],offset:["stop"],"stop-color":["stop"],"stop-opacity":["stop"],spreadMethod:["linearGradient","radialGradient"],href:["pattern","textPath","linearGradient","radialGradient","use","animate","animateTransform","animateMotion","image"],pathLength:[...Ne]},defaults:{transform:["none","matrix(1, 0, 0, 1, 0, 0)","matrix(1 0 0 1 0 0)"],"transform-origin":["0px, 0px","0 0"],rx:["0","0px"],ry:["0","0px"],x:["0","0px"],y:["0","0px"],fill:["black","rgb(0, 0, 0)","rgba(0, 0, 0, 0)","#000","#000000"],color:["black","rgb(0, 0, 0)","rgba(0, 0, 0, 0)","#000","#000000"],stroke:["none"],opacity:["1"],"fill-opacity":["1"],"stroke-width":["1","1px"],"stroke-opacity":["1"],"stroke-linecap":["butt"],"stroke-miterlimit":["4"],"stroke-linejoin":["miter"],"stroke-dasharray":["none"],"stroke-dashoffset":["0","0px","none"],pathLength:["none"],"font-family":["serif"],"font-weight":["normal","400"],"font-stretch":["normal"],"font-width":["normal"],"letter-spacing":["auto","normal","0"],lengthAdjust:["spacing"],"text-anchor":["start"],"dominant-baseline":["auto"],spacing:["auto"],"white-space":["normal"],"stop-opacity":["1"],gradientUnits:["objectBoundingBox"],patternUnits:["objectBoundingBox"],"clip-path":["none"],"clip-rule":["nonzero"],"fill-rule":["nonzero"],clipPathUnits:["userSpaceOnUse"],mask:["none"],maskUnits:["objectBoundingBox"]}};function Be(e=null,{unit:t=null,width:l=0,height:a=0,decimals:r=-1,isHorizontal:n=!1,isVertical:s=!1,autoRoundValues:i=!1,dpi:o=96,fontSize:u=16,normalizedDiagonal:h=!1}={}){h=l!==a&&h;let p=typeof e;if(!e)return e;let c="number"===p||Oe(e),y="string"===p&&e.split(/,| /).length>1,f="string"===p&&e.includes("(");if(!c||y||f)return e;t=t||Fe(e);let x=parseFloat(e),m=1,d=Math.sqrt(l*l+a*a)/1.4142135623730951;if(!t)return x;switch(t){case"%":m=l&&n?l/100:a&&s?a/100:h?d/100:1;break;case"rad":m=w;break;case"turn":m=360;break;case"in":m=o;break;case"pt":m=.01388889*o;break;case"pc":m=.16666667*o;break;case"cm":m=S*o;break;case"mm":m=S*o*.1;break;case"Q":m=S*o*.025;break;case"em":case"rem":m=u;break;default:m=1}let g=x*m;return i?g=Ce(g):r>-1&&(g=+g.toFixed(r)),g}function Fe(e){if(!e||!isNaN(e))return"";return(e=e.replace(/\+|\-/g,"")).match(/[^\d|.]+/g)[0]}function Oe(e=""){return!isNaN(e)||!isNaN(parseFloat(e))}function Re(e,{x:t=0,y:l=0,width:a=0,height:r=0}={}){let n=[...e.attributes],s={};return n.forEach(e=>{let n=Be(e.nodeValue,{x:t,y:l,width:a,height:r});s[e.name]=n}),s}function Qe(e,t=-1){let l=e.map(e=>e.x),a=e.map(e=>e.y),r=Math.min(...l),n=Math.max(...l),s=Math.min(...a),i=Math.max(...a),o={x:r,left:r,right:n,y:s,top:s,bottom:i,width:n-r,height:i-s};if(t>-1)for(let e in o)o[e]=+o[e].toFixed(t);return o}function Ve(e){let t=[];return e.forEach(e=>{let l=function(e){let t=He(e),l=Qe(t);return l}(e);t.push(l)}),t}function Ge(e,t){let[l,a,r,n,s,i]=[e.x,e.y,e.width,e.height,e.x+e.width,e.y+e.height],[o,u,h,p,c,y]=[t.x,t.y,t.width,t.height,t.x+t.width,t.y+t.height],f=!1;return r*n!=h*p&&r*n>h*p&&l<o&&s>c&&a<u&&i>y&&(f=!0),f}function He(e){let t=[];for(let l=0;l<e.length;l++){let a=e[l],r=l>0?e[l-1]:e[l],{type:n,values:s}=a,i={x:r.values[r.values.length-2],y:r.values[r.values.length-1]},o=s.length?{x:s[s.length-2],y:s[s.length-1]}:"",u=s.length?{x:s[0],y:s[1]}:"";switch(n){case"A":if("function"!=typeof arcToBezier){let e=he(i,o)/2,l=J(i,o,.5),a=te(l.x,l.y,e,e,0),r=te(l.x,l.y,e,e,Math.PI);t.push(a,r,o);break}arcToBezier(i,s).forEach(e=>{let l=e.values,a={x:l[0],y:l[1]},r={x:l[2],y:l[3]},n={x:l[4],y:l[5]};t.push(a,r,n)});break;case"C":let e={x:s[2],y:s[3]};t.push(u,e);break;case"Q":t.push(u)}"z"!==n.toLowerCase()&&t.push(o)}return t}function Ue(e,t=9){let l=0,a=[],r=me(e),n=r.length>1,s=[];if(n){let e=Ve(r);e.forEach(function(t,l){for(let l=0;l<e.length;l++){let a=e[l];if(t!=a){Ge(t,a)&&s.push(l)}}})}return r.forEach((e,t)=>{a=[];let r=0,n=0,i=1,o=[];e.forEach(function(t,l){let[n,s]=[t.type,t.values],i=s.length;if(s.length){let u=(l>0?e[l-1]:e[0]).values,h=u.length,p={x:u[h-2],y:u[h-1]},c={x:s[i-2],y:s[i-1]};if("C"===n||"Q"===n){let e={x:s[0],y:s[1]};o="C"===n?[p,e,{x:s[2],y:s[3]},c]:[p,e,c];let t=Math.abs(function(e,t=!1){let l,[a,r,n,s]=[e[0],e[1],e[2],e[e.length-1]];if(e.length<3)return 0;3===e.length&&(r={x:1*e[0].x/3+2*e[1].x/3,y:1*e[0].y/3+2*e[1].y/3},n={x:1*e[2].x/3+2*e[1].x/3,y:1*e[2].y/3+2*e[1].y/3});return l=3*(a.x*(-2*r.y-n.y+3*s.y)+r.x*(2*a.y-n.y-s.y)+n.x*(a.y+r.y-2*s.y)+s.x*(-3*a.y+r.y+2*n.y))/20,t?Math.abs(l):l}(o));r+=t,a.push(p,c)}else if("A"===n){let e=K(p.x,p.y,t.values[0],t.values[1],t.values[2],t.values[3],t.values[4],c.x,c.y),{cx:l,cy:n,rx:s,ry:i,startAngle:o,endAngle:u,deltaAngle:h}=e,y=Math.abs(function(e,t,l,a){const r=Math.PI*e*t;let n=(a-l+2*Math.PI)%(2*Math.PI);if(e===t)return r*(n/(2*Math.PI));const s=l=>Math.atan2(e*Math.sin(l),t*Math.cos(l));return l=s(l),a=s(a),n=(a-l+2*Math.PI)%(2*Math.PI),r*(n/(2*Math.PI))}(s,i,o,u));y-=Math.abs(Ze([p,{x:l,y:n},c])),a.push(p,c),r+=y}else a.push(p,c)}});let u=Ze(a);-1!==s.indexOf(t)&&(i=-1),n=u<0&&r<0?(Math.abs(r)-Math.abs(u))*i:(Math.abs(r)+Math.abs(u))*i,l+=n}),l}function Ze(e,t=!1){let l=0,a=e.length;for(let t=0;a&&t<a;t++){l+=e[t].x*e[t===e.length-1?0:t+1].y*.5-e[t===e.length-1?0:t+1].x*e[t].y*.5}return t&&(l=Math.abs(l)),l}function We(e,t=0){t=parseFloat(t);let l=e.length,a=e[0].values.join(" "),r=t>1?"\n":t<1?"":" ",n=t>.5?" ":"",s=`${e[0].type}${n}${a}${r}`;for(let i=1;i<l;i++){let o=e[i-1],u=e[i],{type:h,values:p}=u;if(a="",t||"A"!==h&&"a"!==h||(p=[p[0],p[1],p[2],`${p[3]}${p[4]}${p[5]}`,p[6]]),h=t<1&&o.type===u.type&&"m"!==u.type.toLowerCase()||t<1&&"M"===o.type&&"L"===u.type?" ":u.type,t)a=p.join(" ");else{let e=!1;for(let t=0,l=p.length;t<l;t++){let l=p[t],r=l.toString(),n=r.includes(".")&&Math.abs(l)<1;n&&e&&(r=r.replace(/^0\./,".")),!(t>0)||e&&n||(a+=" "),a+=r,e=n}}i===l-1&&(r=""),s+=`${h}${n}${a}${r}`}return t<1&&(s=s.replace(/[A-Za-z]0(?=\.)/g,e=>e[0]).replace(/ 0\./g," .").replace(/ -/g,"-").replace(/-0\./g,"-.").replace(/Z/g,"z")),s}function Xe(e,t,l=0,a=1,r=!1){const n=(e,t,l,a,r)=>{let n=1-r;return{x:3*n*n*(t.x-e.x)+6*n*r*(l.x-t.x)+3*r*r*(a.x-l.x),y:3*n*n*(t.y-e.y)+6*n*r*(l.y-t.y)+3*r*r*(a.y-l.y)}};let s=[e,t],i=ye(e.p0,e.p)>ye(t.p0,t.p),o=JSON.parse(JSON.stringify(e)),u=JSON.parse(JSON.stringify(t)),h=W(o.p0,o.cp1,u.p,u.cp2,!1);if(!h)return s;if(i){let l={p0:{x:e.p.x,y:e.p.y},cp1:{x:e.cp2.x,y:e.cp2.y},cp2:{x:e.cp1.x,y:e.cp1.y},p:{x:e.p0.x,y:e.p0.y}};e={p0:{x:t.p.x,y:t.p.y},cp1:{x:t.cp2.x,y:t.cp2.y},cp2:{x:t.cp1.x,y:t.cp1.y},p:{x:t.p0.x,y:t.p0.y}},t=l}let p=(e,t)=>({x:e.x-t.x,y:e.y-t.y}),c=(e,t)=>({x:e.x*t,y:e.y*t}),y=(e,t)=>e.x*t.x+e.y*t.y,f=t.p0,x=n(t.p0,t.cp1,t.cp2,t.p,0),m=y(p(e.p0,f),x)/y(x,x),d=Y([t.p0,t.cp1,t.cp2,t.p],m),g=n(t.p0,t.cp1,t.cp2,t.p,m);m-=y(p(d,e.p0),g)/y(g,g);let v=Y([t.p0,t.cp1,t.cp2,t.p],m),b=t.p,A=n(t.p0,t.cp1,t.cp2,t.p,m),M=n(t.p0,t.cp1,t.cp2,t.p,1),w=1-m,C=(k=v,S=c(A,w/3),{x:k.x+S.x,y:k.y+S.y});var k,S;let E=p(b,c(M,w/3)),P={p0:v,cp1:C,cp2:E,p:b,t0:m};i&&(P={p0:b,cp1:E,cp2:C,p:v,t0:m});let D=.5*(1-m),L=Y([P.p0,P.cp1,P.cp2,P.p],D,!1,!0),$=L.cpts[2],T=W(L,$,P.p0,h,!1),N=W(L,$,P.p,h,!1),q=J(P.p0,T,1.333),j=J(P.p,N,1.333);if(W(o.p0,q,u.p,j,!0))return s;P.cp1=q,P.cp2=j;let z=ye(o.p0,P.p0)+ye(u.p,P.p);if(P.p0=o.p0,P.p=u.p,P.extreme=u.extreme,P.corner=u.corner,P.dimA=u.dimA,P.directionChange=u.directionChange,P.type="C",P.values=[P.cp1.x,P.cp1.y,P.cp2.x,P.cp2.y,P.p.x,P.p.y],z<l){let t=i?1+m:Math.abs(m),n=1+Math.abs(m);if(t=i?1+m:Math.abs(m)/n,ye(Y([P.p0,P.cp1,P.cp2,P.p],t),e.p)>l*a)return s;let h=Ue([{type:"M",values:[o.p0.x,o.p0.y]},{type:"C",values:[o.cp1.x,o.cp1.y,o.cp2.x,o.cp2.y,o.p.x,o.p.y]},{type:"C",values:[u.cp1.x,u.cp1.y,u.cp2.x,u.cp2.y,u.p.x,u.p.y]}]),p=[{type:"M",values:[P.p0.x,P.p0.y]},{type:"C",values:[P.cp1.x,P.cp1.y,P.cp2.x,P.cp2.y,P.p.x,P.p.y]}],c=Ue(p),y=Math.abs(c/h-1);P.error=5*y*a,r&&We(p),y<.05*a&&(s=[P])}return s}function Je(e,{keepExtremes:t=!0,keepInflections:l=!0,keepCorners:a=!0,extrapolateDominant:r=!0,tolerance:n=1}={}){let s=[e[0]],i=e.length;for(let r=2;i&&r<=i;r++){let o=e[r-1],u=r<i?e[r]:null,h=u?.type||null,{type:p,values:c,p0:y,p:f,cp1:x=null,cp2:m=null,extreme:d=!1,directionChange:g=!1,corner:v=!1,dimA:b=0}=o;if("C"===p&&"C"===h)if(a&&v||t&&d)s.push(o);else{let h=Ye(o,u,{tolerance:n}),p=0;if(1===h.length){o=h[0];let u=1;p+=o.error;for(let s=r+1;p<n&&s<i;s++){let r=e[s];if("C"!==r.type||l&&o.directionChange||a&&o.corner||t&&o.extreme)break;let i=Ye(o,r,{tolerance:n});if(i.length>1)break;p+=.5*i[0].error,u++,o=i[0]}s.push(o),r<i&&(r+=u)}else s.push(o)}else s.push(o)}return s}function Ye(e,t,{tolerance:l=1}={}){let a=[e,t],r=function(e,t){let l=ce(e.cp2,e.p);if(0===l)return 0;let a=ce(e.p,t.cp1);if(0===a)return 0;let r=ce(e.cp2,t.cp1);return l/r}(e,t);if(!r)return a;let n=ce(e.p0,e.p),s=ce(t.p0,t.p),i=.08*Math.max(0,Math.min(n,s))*l,o=function(e,t,l=0){let{p0:a,cp1:r}=e,{p:n,cp2:s}=t;return r={x:(r.x-(1-l)*a.x)/l,y:(r.y-(1-l)*a.y)/l},s={x:(s.x-l*n.x)/(1-l),y:(s.y-l*n.y)/(1-l)},{p0:a,cp1:r,cp2:s,p:n}}(e,t,r),u=Y([o.p0,o.cp1,o.cp2,o.p],r),h=ce(e.p,u),p=0,c=0,y=!1,f=h;if(h<i){let l=.5*(1+r);if(p=ce(Y([t.p0,t.cp1,t.cp2,t.p],.5),Y([o.p0,o.cp1,o.cp2,o.p],l)),f+=p,p<i){let t=.5*r;c=ce(Y([e.p0,e.cp1,e.cp2,e.p],.5),Y([o.p0,o.cp1,o.cp2,o.p],t)),f+=c,f<i&&(y=!0)}}return y&&(o.p0=e.p0,o.p=t.p,o.dimA=ce(o.p0,o.p),o.type="C",o.extreme=t.extreme,o.directionChange=t.directionChange,o.corner=t.corner,o.values=[o.cp1.x,o.cp1.y,o.cp2.x,o.cp2.y,o.p.x,o.p.y],o.error=f/i,a=[o]),a}function _e(e,{tolerance:t=1,debug:l=!1}={}){let a=!1,r={flat:!0,steepness:0},n=e[0],s=e[e.length-1],i=new Set([...e.map(e=>+e.x.toFixed(8))]),o=new Set([...e.map(e=>+e.y.toFixed(8))]);if(1===i.size||1===o.size)return!l||r;let u=pe(n,s),h=u/1e3*t,p=Ze(e,!0);return p<h&&(a=!0),l&&(r.flat=a,r.steepness=p/u*10),l?r:a}function Ke(e=[],{detectExtremes:l=!0,detectCorners:a=!0,detectDirection:r=!0,detectSemiExtremes:n=!1,debug:s=!1,addSquareLength:i=!0,addArea:o=!0}={}){let u=[],h=Qe(_(e=et(e,{addSquareLength:i,addArea:o}))),{left:p,right:c,top:y,bottom:f,width:x,height:m}=h;e[0].corner=!1,e[0].extreme=!1,e[0].semiExtreme=!1,e[0].directionChange=!1,e[0].closePath=!1;let d=[e[0]],g=e.length;for(let t=2;g&&t<=g;t++){let l=e[t-1],{type:a,values:r,p0:s,p:i,cp1:o=null,cp2:u=null,squareDist:h=0,cptArea:x=0,dimA:m=0}=l,g=e[t]||null;l.corner=!1,l.extreme=!1,l.semiExtreme=!1,l.directionChange=!1,l.closePath=!1;let v="C"===a||"Q"===a?"C"===a?[s,o,u,i]:[s,o,i]:[s,i],b=.1*m,A=.01*b,M="Q"===a||"C"===a,w=g&&("Q"===g.type||"C"===g.type),C=!1;
1
+ !function(e){"use strict";function t(e,t,l="red",a="1%",r="1",n="",s=!0,i="",o=""){Array.isArray(t)&&(t={x:t[0],y:t[1]});let u=`<circle class="${o}" opacity="${r}" id="${i}" cx="${t.x}" cy="${t.y}" r="${a}" fill="${l}">\n <title>${n}</title></circle>`;if(!s)return u;e.insertAdjacentHTML("beforeend",u)}const{abs:l,acos:a,asin:r,atan:n,atan2:s,ceil:i,cos:o,exp:u,floor:h,log:p,hypot:c,max:y,min:f,pow:x,random:d,round:g,sin:m,sqrt:v,tan:b,PI:A}=Math,M=180/Math.PI,w=Math.PI/180,C="http://www.w3.org/2000/svg",S=`<svg id="svgInvalid" xmlns="${C}" viewBox="0 0 1 1"><path d="M0 0 h0" /></svg>`,k=.39370078;function E(e,t={}){let l=function(e,t={}){let l,a;e=e.trim();let r=+(e.length/1024).toFixed(3),n={totalEls:1,hasEls:!0,hasDefs:!1,geometryEls:[],useEls:0,useElsNested:0,nonsensePaths:0,isSuspicious:!1,isBillionLaugh:!1,hasScripts:!1,hasPrologue:!1,hasEntity:!1,isPathData:!1,fileSizeKB:r,hasXmlns:e.includes("http://www.w3.org/2000/svg"),isSymbolSprite:!1,isSvgFont:e.includes("<glyph>")},s=t.useElsNested?t.useElsNested:2e3;const i=(e,t=2e3)=>{let l=0;for(let r=0;r<e.length&&l<t;r++){let n=e[r],s=n.getAttribute("xlink:href")?n.getAttribute("xlink:href"):n.getAttribute("href");s=s?s.replace("#",""):"",n.setAttribute("href","#"+s);let i=a.getElementById(s).querySelectorAll("use");l+=i.length;for(let e=0;e<i.length&&l<t;e++){let t=i[e].getAttribute("href").replace("#","");l+=a.getElementById(t).querySelectorAll("use").length}}return n.useElsNested=l,l};let o=/\<\!ENTITY/gi.test(e),u=!!/\<script/gi.test(e),h=!!/\<use/gi.test(e),p=/[\<path|\<polygon|\<polyline|\<rect|\<circle|\<ellipse|\<line|\<text|\<foreignObject]/gi.test(e),c=/[\<filter|\<linearGradient|\<radialGradient|\<pattern|\<animate|\<animateMotion|\<animateTransform|\<clipPath|\<mask|\<symbol|\<marker]/gi.test(e),y=(e.startsWith("M")||e.startsWith("m"))&&!/[\<svg|\<\/svg]/gi.test(e);if(n.isPathData=y,!o&&!h&&!u&&(p||c)&&r<t.fileSizeKB)return n.hasEls=p,n.hasDefs=c,n;!1===t.hasEntity&&o&&(n.hasEntity=!0);e=e.replace(/\<\?xml.+\?\>|\<\!DOCTYPE.+]\>/g,"").replace(/(<!--.*?-->)|(<!--[\S\s]+?-->)|(<!--[\S\s]*?$)/g,"");try{l=(new DOMParser).parseFromString(e,"text/html"),a=l.querySelector("svg");let t=a.querySelectorAll('path[d="M0,0"], path[d="M0 0"]').length,r=a.querySelectorAll("use").length;if(n.totalEls=a.querySelectorAll("*").length,n.geometryEls=a.querySelectorAll("path, rect, circle, ellipse, polygon, polyline, line").length,n.hasScripts=u,n.useEls=r,n.nonsensePaths=t,n.isSuspicious=!1,n.isBillionLaugh=!1,n.hasXmlns=!!a.getAttribute("xmlns")&&"http://www.w3.org/2000/svg"===a.getAttribute("xmlns"),n.isSymbolSprite=!(!a.querySelectorAll("symbol").length||0!==a.querySelectorAll("use").length),n.isSvgFont=!!a.querySelectorAll("glyph").length,100/n.totalEls*n.useEls>75){n.isSuspicious=!0,i(a.querySelectorAll("use"),s)>=s&&(n.isBillionLaugh=!0)}return n}catch{return console.warn("svg could not be parsed"),!1}}(e,t={useElsNested:5e3,hasScripts:!1,hasEntity:!1,fileSizeKB:1e4,isSymbolSprite:!1,isSvgFont:!1,...t}),a=!0,r=[];if(l.hasEls||(r.push("no elements"),a=!1),Object.keys(l).length){!0===l.isBillionLaugh&&(r.push("suspicious: might contain billion laugh attack"),a=!1);for(let e in t){let n=t[e],s=l[e];"number"==typeof n&&s>n&&(r.push(`allowed "${e}" exceeded: ${s} / ${n} `),a=!1),!0===s&&!1===n&&(r.push(`not allowed: "${e}" `),a=!1)}}else a=!1;return{isValid:a,log:r,fileReport:l}}function P(e){let t="",l=!0,a={inputType:"",isValid:!0,fileReport:{}};if(Array.isArray(e))return a.inputType="array",Array.isArray(e[0])?2===e[0].length?a.inputType="polyArray":Array.isArray(e[0][0])&&2===e[0][0].length?a.inputType="polyComplexArray":void 0!==e[0][0].x&&void 0!==e[0][0].y&&(a.inputType="polyComplexObjectArray"):void 0!==e[0].x&&void 0!==e[0].y?a.inputType="polyObjectArray":e[0]?.type&&e[0]?.values&&(a.inputType="pathData"),a;if("string"==typeof e){let r=(e=e.trim()).includes("<svg")&&e.includes("</svg"),n=e.startsWith("<symbol")&&e.includes("</symbol"),s=e.startsWith("M")||e.startsWith("m"),i=!isNaN(e.substring(0,1))&&!isNaN(e.substring(e.length-1,e.length)),o=function(e){e=e.trim();let t=/\d/.test(e),l=/[abcdfghijklmnopqrstuvwz]/gi.test(e);if(!t||l)return!1;let a=e.startsWith("[")&&e.endsWith("]");return a}(e);if(r){let r=E(e);({isValid:l,log:t}=r),l?a.inputType="svgMarkup":(a.inputType="invalid",a.isValid=!1,a.log=t),a.fileReport=r.fileReport}else if(o)a.inputType="json";else if(n)a.inputType="symbol";else if(s)a.inputType="pathDataString";else if(i)a.inputType="polyString";else{let t=/^(file:|https?:\/\/|\/|\.\/|\.\.\/)/.test(e),l=e.startsWith("data:image");a.inputType=t||l?"url":"string"}return a}return a.inputType=(e.constructor.name||typeof e).toLowerCase(),a}const{abs:D,acos:T,asin:L,atan:$,atan2:N,ceil:q,cos:I,exp:j,floor:z,log:B,max:F,min:O,pow:R,random:Q,round:V,sin:G,sqrt:U,tan:H,PI:W}=Math;function Z(e,t,l=!1){let a=N(t.y-e.y,t.x-e.x);return l&&a<0&&(a+=2*Math.PI),a}function X(e,t,l,a=!1){let r=Math.atan2(t.y-e.y,t.x-e.x),n=Math.atan2(l.y-e.y,l.x-e.x),s=n-r;s=(e=>{let t=e%(2*Math.PI);return t>Math.PI?t-=2*Math.PI:t<=-Math.PI&&(t+=2*Math.PI),t})(s),a&&(s=2*Math.PI-Math.abs(s));let i=180/Math.PI;return{startAngle:r,endAngle:n,deltaAngle:s,startAngleDeg:r*i,endAngleDeg:n*i,deltaAngleDeg:s*i}}function J(e=null,t=null,l=null,a=null,r=!0,n=!1,s=!1){let i,o,u,h,p,c={};if(!(e&&t&&l&&a))return s&&console.warn("points missing"),!1;if(e.x===t.x&&e.y===t.y||l.x===a.x&&l.y===a.y)return!1;try{if(i=(a.y-l.y)*(t.x-e.x)-(a.x-l.x)*(t.y-e.y),0===i)return!1}catch{return s&&console.warn("!catch",e,t,"p3:",l,"p4:",a),!1}o=e.y-l.y,u=e.x-l.x,h=(a.x-l.x)*o-(a.y-l.y)*u,p=(t.x-e.x)*o-(t.y-e.y)*u,o=h/i,u=p/i,c={x:e.x+o*(t.x-e.x),y:e.y+o*(t.y-e.y)};let y=!1;return o>0&&o<1&&u>0&&u<1&&(y=!0),!r&&n&&(o>0&&u<0||o<0&&u>0)?(y=!1,!1):!(r&&!y)&&c}function Y(e,t,l,a=!1){const r=(e,t,l)=>e>=t&&e<=l||e<=t&&e>=l;let n=!1;if((!a||!l.bottom)&&(l.left>e.x||l.top>e.y||l.bottom<e.y||l.right<e.x))return!1;let s=t.length;for(let l=s-1,a=0;a<s;l=a,a++){const s=t[l],i=t[a];if(e.x==s.x&&e.y==s.y||e.x==i.x&&e.y==i.y)return!0;if(s.y==i.y&&e.y==s.y&&r(e.x,s.x,i.x))return!0;if(r(e.y,s.y,i.y)){if(e.y==s.y&&i.y>=s.y||e.y==i.y&&s.y>=i.y)continue;const t=(s.x-e.x)*(i.y-e.y)-(i.x-e.x)*(s.y-e.y);if(0==t)return!0;s.y<i.y==t>0&&(n=!n)}}return!!n}function _(e,t,l,a=!1){let r={x:(t.x-e.x)*l+e.x,y:(t.y-e.y)*l+e.y};return a&&(r.angle=Z(e,t),r.angle<0&&(r.angle+=2*W)),r}function K(e,t=.5,l=!1,a=!1,r=!1){let n;return Array.isArray(e[0])&&(e=e.map(e=>({x:e[0],y:e[1]})),r=!0),n=e.length>2?((e,t,l=!1)=>{let r=4===e.length,n=e[0],s=e[1],i=r?e[2]:e[1],o=e[e.length-1],u={x:0,y:0};if(l||a){let e,l,h,p,c,y=n.x===s.x&&n.y===s.y,f=o.x===i.x&&o.y===i.y;0!==t||y?1!==t||f?(y&&(t+=1e-7),f&&(t-=1e-7),e=_(n,s,t),r?(l=_(s,i,t),h=_(i,o,t),p=_(e,l,t),c=_(l,h,t),u=_(p,c,t),u.angle=Z(p,c),a&&(u.cpts=[l,h,p,c])):(l=_(n,s,t),h=_(s,o,t),u=_(l,h,t),u.angle=Z(l,h),a&&(u.cpts=[l,h]))):(u.x=o.x,u.y=o.y,u.angle=Z(i,o)):(u.x=n.x,u.y=n.y,u.angle=Z(n,s))}else{let e=1-t;u=r?{x:e*e*e*n.x+3*e*e*t*s.x+3*e*t*t*i.x+t*t*t*o.x,y:e*e*e*n.y+3*e*e*t*s.y+3*e*t*t*i.y+t*t*t*o.y}:{x:e*e*n.x+2*e*t*s.x+t*t*o.x,y:e*e*n.y+2*e*t*s.y+t*t*o.y}}return u})(e,t,l):_(e[0],e[1],t,l),l&&n.angle<0&&(n.angle+=2*W),r?[n.x,n.y]:n}function ee(e=[],t=!1,l=-1){let a=[];return e.forEach(e=>{let{type:r,values:n}=e;if(n.length)if(l>-1&&(n=n.map(e=>+e.toFixed(l))),t)for(let e=1;e<n.length;e+=2)a.push({x:n[e-1],y:n[e]});else a.push({x:n[n.length-2],y:n[n.length-1]})}),a}function te(e,t,l,a,r,n,s,i,o,u=!0){const h=(e,t,l,a,r=!0)=>{let n=Math.atan2(a-t,l-e);return r&&n<0&&(n+=2*Math.PI),n};let p={cx:0,cy:0,rx:l=Math.abs(l),ry:a=Math.abs(a),startAngle:0,endAngle:0,deltaAngle:0,clockwise:s,xAxisRotation:r=l===a?0:r<0&&u?r+360:r,largeArc:n,sweep:s};if(0==l||0==a)throw Error("rx and ry can not be 0");let c,y,f=l===a?0:r*w,x=f?Math.sin(f):0,d=f?Math.cos(f):1,g=(e-i)/2,m=(t-o)/2,v=(e+i)/2,b=(t+o)/2,A=f?d*g+x*m:g,C=f?d*m-x*g:m,S=A*A/(l*l)+C*C/(a*a);if(S>1){let e=Math.sqrt(S);l*=e,a*=e,p.rx=l,p.ry=a}let k=l*a,E=l*C,P=a*A,D=E**2+P**2;if(!D)throw Error("start point can not be same as end point");let T=Math.sqrt(Math.abs((k*k-D)/D));n===s&&(T=-T);let L=T*E/a,$=-T*P/l;c=f?d*L-x*$+v:v+L,y=f?x*L+d*$+b:b+$,p.cy=y,p.cx=c;let N=h(c,y,e,t,u),q=h(c,y,i,o,u);s?q<N&&(q+=2*Math.PI):q>N&&(q-=2*Math.PI);let I=q-N;return p.startAngle=N,p.startAngle_deg=N*M,p.endAngle=q,p.endAngle_deg=q*M,p.deltaAngle=I,p.deltaAngle_deg=I*M,p}function le(e,t,l,a=0,r=!1){return a?(a=r?a/180*Math.PI:a,{x:t+(e.x-t)*Math.cos(a)-(e.y-l)*Math.sin(a),y:l+(e.x-t)*Math.sin(a)+(e.y-l)*Math.cos(a)}):e}function ae(e,t,l,a,r,n=0,s=!0,i=!1){if(r=i?r*W/180:r,n=i?n*W/180:n,n=l!==a&&n!==2*W?n:0,s&&l!==a){let e=$(H(r=n?r-n:r)*(l/a));r=I(r)<0?e+W:e}let o=e+l*I(r),u=t+a*G(r),h={x:o,y:u};return n&&(h.x=e+(o-e)*I(n)-(u-t)*G(n),h.y=t+(o-e)*G(n)+(u-t)*I(n)),h}function re(e,t,l){if(t===l||e%W*.5==0)return e;let a=$(H(e)*(t/l));return a=I(e)<0?a+W:a,a}function ne(e=null,t=[]){e||(e=t[0],t=t.slice(1,t.length));let l=t.length,a=t[l-1],r=t[0],n=3===l?t[1]:r,s=Math.min(e.y,a.y),i=Math.min(e.x,a.x),o=Math.max(e.x,a.x),u=Math.max(e.y,a.y);return!(r.y>=s&&r.y<=u&&n.y>=s&&n.y<=u&&r.x>=i&&r.x<=o&&n.x>=i&&n.x<=o)}function se(e,{addExtremes:t=!0,addSemiExtremes:l=!1}={}){let a=4===e.length?function(e,t,l,a,{addExtremes:r=!0,addSemiExtremes:n=!1}={}){const s=e=>{const t=Math.PI/4,l=Math.cos(t),a=Math.sin(t);return{x:e.x*l-e.y*a,y:e.x*a+e.y*l}};n&&(e=s(e),t=s(t),l=s(l),a=s(a));let[i,o,u,h,p,c,y,f]=[e.x,e.y,t.x,t.y,l.x,l.y,a.x,a.y],x=Math.min(e.y,a.y),d=Math.min(e.x,a.x),g=Math.max(e.x,a.x),m=Math.max(e.y,a.y);if(t.y>=x&&t.y<=m&&l.y>=x&&l.y<=m&&t.x>=d&&t.x<=g&&l.x>=d&&l.x<=g)return[];let v,b,A,M,w,C,S,k,E=[];for(let e=0;e<2;++e)if(0==e?(b=6*i-12*u+6*p,v=-3*i+9*u-9*p+3*y,A=3*u-3*i):(b=6*o-12*h+6*c,v=-3*o+9*h-9*c+3*f,A=3*h-3*o),Math.abs(v)<1e-8){if(Math.abs(b)<1e-8)continue;M=-A/b,0<M&&M<1&&E.push(M)}else S=b*b-4*A*v,S<0?Math.abs(S)<1e-8&&(M=-b/(2*v),0<M&&M<1&&E.push(M)):(k=Math.sqrt(S),w=(-b+k)/(2*v),0<w&&w<1&&E.push(w),C=(-b-k)/(2*v),0<C&&C<1&&E.push(C));let P=E.length;for(;P--;)M=E[P];return E}(e[0],e[1],e[2],e[3],{addExtremes:t,addSemiExtremes:l}):function(e,t,l,{addExtremes:a=!0,addSemiExtremes:r=!1}={}){const n=e=>{const t=-Math.PI/4,l=Math.cos(t),a=Math.sin(t);return{x:e.x*l-e.y*a,y:e.x*a+e.y*l}};r&&(e=n(e),t=n(t),l=n(l));let s,i,o,u=Math.min(e.y,l.y),h=Math.min(e.x,l.x),p=Math.max(e.x,l.x),c=Math.max(e.y,l.y);if(t.y>=u&&t.y<=c&&t.x>=h&&t.x<=p)return[];let[y,f,x,d,g,m]=[e.x,e.y,t.x,t.y,l.x,l.y],v=[];for(let e=0;e<2;++e)s=0==e?y-2*x+g:f-2*d+m,i=0==e?-2*y+2*x:-2*f+2*d,Math.abs(s)>1e-12&&(o=-i/(2*s),o>0&&o<1&&v.push(o));return v}(e[0],e[1],e[2],{addExtremes:t,addSemiExtremes:l});return a}function ie(e,t){const l=(e,t,l,a,r,n)=>{var s=Math.cos(n),i=Math.sin(n),o=a*Math.cos(e),u=r*Math.sin(e);return{x:t+s*o-i*u,y:l+i*o+s*u}};let a,r,n,s,i,o=te(e.x,e.y,t[0],t[1],t[2],t[3],t[4],t[5],t[6]),{rx:u,ry:h,cx:p,cy:c,endAngle:y,deltaAngle:f}=o,x=t[2],d={x:t[5],y:t[6]},g=[d],m=x*Math.PI/180,v=Math.tan(m);i=Math.atan2(-h*v,u);let b=i,A=i+Math.PI,M=Math.atan2(h,u*v),w=M+Math.PI,C=[e.x,d.x],S=[e.y,d.y],k=Math.min(...C),E=Math.max(...C),P=Math.min(...S),D=Math.max(...S),T=l(y-.001*f,p,c,u,h,m),L=l(y-.999*f,p,c,u,h,m);return(T.x>E||L.x>E)&&(a=l(b,p,c,u,h,m),g.push(a)),(T.x<k||L.x<k)&&(r=l(A,p,c,u,h,m),g.push(r)),(T.y<P||L.y<P)&&(s=l(w,p,c,u,h,m),g.push(s)),(T.y>D||L.y>D)&&(n=l(M,p,c,u,h,m),g.push(n)),g}function oe(e=[],t=[]){let l=e.length,a=4===l;t.length||(t=[0]);let r=t.length,n=[];for(let s=0;s<r;s++){let r=t[s],i=r?[]:e.slice(0);if(r)for(let t=0;t<l;t++){let l=e[t];i.push(le(l,0,0,r))}let o=a?ue(...i):he(...i);n.push(...o)}return n=[...new Set(n)].sort(),n}function ue(e,t,l,a){if(!ne(e,[t,l,a]))return[];let r,n,s,i,o,u,h,p,[c,y,f,x,d,g,m,v]=[e.x,e.y,t.x,t.y,l.x,l.y,a.x,a.y],b=[],A=1e-8;for(let e=0;e<2;++e)if(0==e?(n=6*c-12*f+6*d,r=-3*c+9*f-9*d+3*m,s=3*f-3*c):(n=6*y-12*x+6*g,r=-3*y+9*x-9*g+3*v,s=3*x-3*y),Math.abs(r)<A){if(Math.abs(n)<A)continue;i=-s/n,i>0&&i<1&&b.push(i)}else h=n*n-4*s*r,h<0?Math.abs(h)<A&&(i=-n/(2*r),i>0&&i<1&&b.push(i)):(p=Math.sqrt(h),o=(-n+p)/(2*r),o>0&&o<1&&b.push(o),u=(-n-p)/(2*r),u>0&&u<1&&b.push(u));let M=b.length;for(;M--;)i=b[M];return[...new Set(b)].sort()}function he(e,t,l){if(!ne(e,[t,l]))return[];let a,r,n,[s,i,o,u,h,p]=[e.x,e.y,t.x,t.y,l.x,l.y],c=[];for(let e=0;e<2;++e)a=0==e?s-2*o+h:i-2*u+p,r=0==e?-2*s+2*o:-2*i+2*u,Math.abs(a)>1e-12&&(n=-r/(2*a),n>0&&n<1&&c.push(n));return[...new Set(c)].sort()}function pe(e,t=.001){let l=Math.PI/2,a=l/2;return!(Math.abs(e/l-Math.round(e/l))<t)&&Math.abs(e/a-Math.round(e/a))<t}function ce(e,t,l=!1){let a=l?t[0]-e[0]:t.x-e.x,r=l?t[1]-e[1]:t.y-e.y;return Math.sqrt(a*a+r*r)}function ye(e,t){let l=t.x-e.x,a=t.y-e.y;return l*l+a*a}function fe(e,t){return Math.abs(t.x-e.x)+Math.abs(t.y-e.y)}function xe(e,t){return.5*(Math.abs(t.x-e.x)+Math.abs(t.y-e.y))}function de(e,t=48){if(!Array.isArray(e)||e.length<=t)return e;let l=e.length,a=l/t,r=[];for(let l=0;l<t;l++)r.push(e[Math.floor(l*a)]);let n=r.length;return r[n-1]!==e[l-1]&&(r[n-1]=e[l-1]),r}function ge(e,t){if(!e||!t)return{a:1,b:0,c:0,d:1,e:0,f:0};return e.getScreenCTM().inverse().multiply(t.getScreenCTM())}function me(e){let t=[],l=[e[0]],a=e.length;for(let r=1;r<a;r++){let a=e[r];"M"!==a.type&&"m"!==a.type||(t.push(l),l=[]),l.push(a)}return l.length&&t.push(l),t}function ve(e,t){let l,a,r,n,s,i,o=[],u=[],h=e[0],p=e[1],c=e[e.length-2],y=e[e.length-1];return 4===e.length?(l=K([h,p],t),a=K([p,c],t),r=K([c,y],t),n=K([l,a],t),s=K([a,r],t),i=K([n,s],t),o.push({x:h.x,y:h.y},{x:l.x,y:l.y},{x:n.x,y:n.y},{x:i.x,y:i.y}),u.push({x:i.x,y:i.y},{x:s.x,y:s.y},{x:r.x,y:r.y},{x:y.x,y:y.y})):3===e.length?(a=K([h,p],t),r=K([p,y],t),i=K([a,r],t),o.push({x:h.x,y:h.y},{x:a.x,y:a.y},{x:i.x,y:i.y}),u.push({x:i.x,y:i.y},{x:r.x,y:r.y},{x:y.x,y:y.y})):2===e.length&&(a=K([h,y],t),o.push({x:h.x,y:h.y},{x:a.x,y:a.y}),u.push({x:a.x,y:a.y},{x:y.x,y:y.y})),[o,u]}function be(e,t,{tMin:l=0,tMax:a=1,addExtremes:r=!0,addSemiExtremes:n=!1}={}){let s=[],i=6===t.length?"C":"Q",o={x:t[0],y:t[1]},u="C"===i?{x:t[2],y:t[3]}:o,h={x:t[4],y:t[5]},p=0;let c="C"===i?[e,o,u,h]:[e,o,h],y=r?se(c,{addExtremes:r,addSemiExtremes:!1}):[],f=n?se(c,{addExtremes:r,addSemiExtremes:n}):[],x=Array.from(new Set([...y,...f])).sort();if(x=x.filter(e=>e>0&&e<1),x.length){let l=function(e,t,l,a=!0){let r=[];if(!l.length)return!1;let n,s,i,o=t.length,u={x:t[o-2],y:t[o-1]};2===t.length?i=[e,u]:4===t.length?(n={x:t[0],y:t[1]},i=[e,n,u]):6===t.length&&(n={x:t[0],y:t[1]},s={x:t[2],y:t[3]},i=[e,n,s,u]);if(l.length)if(1===l.length){let e=ve(i,l[0]),t=e[0],a=e[1];r.push(t,a)}else{let e=l[0],t=ve(i,e),a=t[0];r.push(a),i=t[1];for(let t=1;t<l.length;t++){e=l[t-1];let a=ve(i,(l[t]-e)/(1-e));r.push(a[0]),t===l.length-1&&r.push(a[a.length-1]),i=a[1]}}if(a){let e,t,l=[];return r.forEach(a=>{e={type:"",values:[]},a.shift(),t=a.map(e=>Object.values(e)).flat(),e.values=t,3===a.length?e.type="C":2===a.length?e.type="Q":1===a.length&&(e.type="L"),l.push(e)}),l}return r}(e,t,x);s.push(...l),p+=l.length}else s.push({type:i,values:t});return{pathData:s,count:p}}function Ae(e,{tMin:t=0,tMax:l=1,addExtremes:a=!0,addSemiExtremes:r=!1}={}){let n=[e[0]],s={x:e[0].values[0],y:e[0].values[1]},i={x:e[0].values[0],y:e[0].values[1]},o=e.length;for(let u=1;o&&u<o;u++){let o=e[u],{type:h,values:p}=o,c=p.slice(-2);if(c[0],c[1],"C"!==h&&"Q"!==h)n.push(o);else if((a||r)&&("C"===h||"Q"===h)){let e=be(s,p,{tMin:t,tMax:l,addExtremes:a,addSemiExtremes:r}).pathData;n.push(...e)}s={x:c[0],y:c[1]},"z"===h.toLowerCase()?s=i:"M"===h&&(i={x:c[0],y:c[1]})}return n}function Me(e){let t=e.startsWith("#")?"rgbHex":e.includes("(")?"fn":typeof e,l={},a=null,r={mode:null,values:[]};if("rgbHex"===t)l=function(e=""){e.startsWith("#")&&(e=e.substring(1));(3===e.length||4===e.length)&&(e=e.split("").map(e=>e+e).join(""));let t=0,l=0,a=0,r=0;if(e.length<6||e.length>8)return console.warn("Invalid hex format"),{r:t,g:l,b:a,a:r};let n=8===e.length,s=parseInt(e,16);return t=n?parseInt(e.substring(0,2),16):s>>16&255,l=n?parseInt(e.substring(2,4),16):s>>8&255,a=n?parseInt(e.substring(4,6),16):255&s,r=n?parseInt(e.substring(6,8),16):255,{r:t,g:l,b:a,a:r}}(e),a="rgba";else if("fn"===t){let t=e.split(/\(|\)/).filter(Boolean);if(t.length<2)return e;a=t[0];let r=t[1].split(/,| /).filter(Boolean).map(Number);a.split("").forEach((e,t)=>{let n=r[t];"rgba"===a&&"a"===e&&(n=Math.floor(255*n)),l[e]=n})}else if("string"===t)return r.mode="keyword",r.values=[e],r;return"rgba"!==a&&"rgb"!==a||(l.a=l.a?l.a:255),r.mode=a,r.values=Object.values(l),r}function we({r:e=0,g:t=0,b:l=0,a:a=255,values:r=[]}){const n=e=>{const t=Math.min(255,Math.max(0,Math.round(e))).toString(16);return 1===t.length?"0"+t:t};e||t||l||!r.length||([e,t,l,a=255]=r);let s=n(e),i=n(t),o=n(l),u=a<255?n(a):0,h=s[0]===s[1]&&i[0]===i[1]&&o[0]===o[1];return!u&&h?`#${s[0]}${i[0]}${o[0]}`:u&&h?`#${s[0]}${i[0]}${o[0]}${u[0]}`:u?`#${s}${i}${o}${u}`:`#${s}${i}${o}`}function Ce(e,t=-1){if(t<0)return e;let l=e.length,a=t,r=a<3?a+2:a;for(let t=0;t<l;t++){let l=e[t],{type:n,values:s}=l,i=s.length;if(!i)continue;let o="a"===n.toLowerCase();for(let l=0;l<i;l++)e[t].values[l]=ke(s[l],o&&l<2?r:a)}return e}function Se(e){let t=[];for(let l=1,a=e.length;l<a;l++){let a=e[l],{type:r,values:n,p0:s=null,p:i=null,dimA:o=0}=a;n.length&&i&&s&&(o=o||fe(s,i),o&&t.push(+o.toFixed(8)))}t=t.sort();let l=t.length,a=t[Math.floor(.5*l)],r=Math.ceil(.25*l),n=.5*(t.slice(0,r).reduce((e,t)=>e+t,0)/r+a),s=n>112.5?0:Math.floor(75/n).toString().length;return Math.min(Math.max(0,s),8)}function ke(e=0,t=3){if(t<0)return e;if(!t)return Math.round(e);let l=Math.floor(t);if(l!==t){let a=+(t-l).toFixed(2);a=a>.5?.5*Math.floor(a/.5):a;let r=10**-l*a;return+(Math.round(e/r)*r).toFixed(8)}let a=10**t;return Math.round(e*a)/a}function Ee(e,t=50){let l=8;l=e>2*t?0:e>t?1:Math.ceil(500/e).toString().length;let a=10**l;return Math.round(e*a)/a}const Pe=["polygon","polyline","line","rect","circle","ellipse"],De=["x","cx","rx","dx","width","translateX"],Te=["y","cy","ry","dy","height","translateY"],Le=["scaleX","translateX","skewX"],$e=["scaleY","translateY","skewY"],Ne=["fill","stroke","stop-color"],qe=["d","points","cx","cy","x1","x2","y1","y2","width","height","r","rx","ry","x","y"],Ie=["path",...Pe],je=["text","textPath","tspan",...Ie],ze=["textPath","text","tspan"],Be=["stroke","stroke-width","stroke-linecap","stroke-linejoin","stroke-linecap","stroke-dasharray","stroke-dashoffset","stroke-miterlimit","stroke-opacity"],Fe={atts:{id:"*",class:"*",viewBox:["symbol","svg"],preserveAspectRatio:["symbol","svg"],width:["svg","rect","use","image"],height:["svg","rect","use","image"],d:["path"],points:["polygon","polyline"],x:["image","rect","text","textPath","tspan","use","mask"],y:["image","rect","text","textPath","tspan","use","mask"],x1:["line","linearGradient"],x2:["line","linearGradient"],y1:["line","linearGradient"],y2:["line","linearGradient"],r:["circle","radialGradient"],rx:["rect","ellipse"],ry:["rect","ellipse"],cx:["circle","ellipse","radialGradient"],cy:["circle","ellipse","radialGradient"],refX:["symbol","markers"],refY:["symbol","markers"],transform:["svg","g","use",...Ie,...ze],"transform-origin":["svg","g","use",...Ie,...ze],fill:["svg","g","use",...Ie,...ze,"animate","animateMotion"],"fill-opacity":["svg","g","use",...Ie,...ze],"fill-rule":["svg","g","path","polygon","text","textPath"],opacity:["svg","g","use",...Ie,...ze],stroke:["svg","g","use",...Ie,...ze],"stroke-width":["svg","g","use",...Ie,...ze,"mask"],"stroke-opacity":["svg","g","use",...Ie,...ze,"mask"],"stroke-miterlimit":["svg","g","use",...Ie,...ze,"mask"],"stroke-linejoin":["svg","g","use",...Ie,...ze,"mask"],"stroke-linecap":["svg","g","use",...Ie,...ze,"mask"],"stroke-dashoffset":["svg","g","use",...Ie,...ze,"mask"],"stroke-dasharray":["svg","g","use",...Ie,...ze,"mask"],"clip-path":["svg","g","use",...Ie,...ze],"clip-rule":["path","polygon"],clipPathUnits:["clipPath"],mask:["svg","g","use",...Ie,...ze],maskContentUnits:["mask"],maskUnits:["mask"],"font-family":["svg","g",...ze],"font-size":["svg","g",...ze],"font-style":["svg","g",...ze],"font-weight":["svg","g",...ze],"font-stretch":["svg","g",...ze],"dominant-baseline":[...ze],lengthAdjust:[...ze],"text-anchor":["text"],textLength:["text","textPath","tspan"],dx:["text","tspan"],dy:["text","tspan"],method:["textPath"],spacing:["textPath"],startOffset:["textPath"],rotate:["text","tspan","animateMotion"],side:["textPath"],"white-space":["svg","g",...ze],color:["svg","g",...ze],playbackorder:["svg"],timelinebegin:["svg"],dur:["animate","animateTransform","animateMotion"],end:["animate","animateTransform","animateMotion"],from:["animate","animateTransform","animateMotion"],to:["animate","animateTransform","animateMotion"],type:["animateTransform"],values:["animate","animateTransform","animateMotion"],accumulate:["animate","animateTransform","animateMotion"],additive:["animate","animateTransform","animateMotion"],attributeName:["animate","animateTransform"],begin:["animate","animateTransform","animateMotion"],by:["animate","animateTransform","animateMotion"],calcMode:["animate","animateTransform","animateMotion"],keyPoints:["animateMotion"],keySplines:["animate","animateTransform","animateMotion"],keyTimes:["animate","animateTransform","animateMotion"],max:["animate","animateTransform","animateMotion"],min:["animate","animateTransform","animateMotion"],origin:["animateMotion"],repeatCount:["animate","animateTransform","animateMotion"],repeatDur:["animate","animateTransform","animateMotion"],restart:["animate","animateTransform","animateMotion"],gradientUnits:["linearGradient","radialGradient"],gradientTransform:["linearGradient","radialGradient"],fr:["radialGradient"],fx:["radialGradient"],fy:["radialGradient"],offset:["stop"],"stop-color":["stop"],"stop-opacity":["stop"],spreadMethod:["linearGradient","radialGradient"],href:["pattern","textPath","linearGradient","radialGradient","use","animate","animateTransform","animateMotion","image"],pathLength:[...Ie]},defaults:{transform:["none","matrix(1, 0, 0, 1, 0, 0)","matrix(1 0 0 1 0 0)"],"transform-origin":["0px, 0px","0 0"],rx:["0","0px"],ry:["0","0px"],x:["0","0px"],y:["0","0px"],fill:["black","rgb(0, 0, 0)","rgba(0, 0, 0, 0)","#000","#000000"],color:["black","rgb(0, 0, 0)","rgba(0, 0, 0, 0)","#000","#000000"],stroke:["none"],opacity:["1"],"fill-opacity":["1"],"stroke-width":["1","1px"],"stroke-opacity":["1"],"stroke-linecap":["butt"],"stroke-miterlimit":["4"],"stroke-linejoin":["miter"],"stroke-dasharray":["none"],"stroke-dashoffset":["0","0px","none"],pathLength:["none"],"font-family":["serif"],"font-weight":["normal","400"],"font-stretch":["normal"],"font-width":["normal"],"letter-spacing":["auto","normal","0"],lengthAdjust:["spacing"],"text-anchor":["start"],"dominant-baseline":["auto"],spacing:["auto"],"white-space":["normal"],"stop-opacity":["1"],gradientUnits:["objectBoundingBox"],patternUnits:["objectBoundingBox"],"clip-path":["none"],"clip-rule":["nonzero"],"fill-rule":["nonzero"],clipPathUnits:["userSpaceOnUse"],mask:["none"],maskUnits:["objectBoundingBox"]}};function Oe(e=null,{unit:t=null,width:l=0,height:a=0,decimals:r=-1,isHorizontal:n=!1,isVertical:s=!1,autoRoundValues:i=!1,dpi:o=96,fontSize:u=16,normalizedDiagonal:h=!1}={}){h=l!==a&&h;let p=typeof e;if(!e)return e;let c="number"===p||Qe(e),y="string"===p&&e.split(/,| /).length>1,f="string"===p&&e.includes("(");if(!c||y||f)return e;t=t||Re(e);let x=parseFloat(e),d=1,g=Math.sqrt(l*l+a*a)/1.4142135623730951;if(!t)return x;switch(t){case"%":d=l&&n?l/100:a&&s?a/100:h?g/100:l/100;break;case"rad":d=M;break;case"turn":d=360;break;case"in":d=o;break;case"pt":d=.01388889*o;break;case"pc":d=.16666667*o;break;case"cm":d=k*o;break;case"mm":d=k*o*.1;break;case"Q":d=k*o*.025;break;case"em":case"rem":d=u;break;default:d=1}let m=x*d;return i?m=Ee(m):r>-1&&(m=+m.toFixed(r)),m}function Re(e){if(!e||!isNaN(e))return"";return(e=e.replace(/\+|\-/g,"")).match(/[^\d|.]+/g)[0]}function Qe(e=""){return!isNaN(e)||!isNaN(parseFloat(e))}function Ve(e,{x:t=0,y:l=0,width:a=0,height:r=0}={}){let n=[...e.attributes].map(e=>e.name),s={};return n.forEach(n=>{let i=Oe(e.getAttribute(n),{x:t,y:l,width:a,height:r});s[n]=i}),s}function Ge(e,t=-1){let l=e.map(e=>e.x),a=e.map(e=>e.y),r=Math.min(...l),n=Math.max(...l),s=Math.min(...a),i=Math.max(...a),o={x:r,left:r,right:n,y:s,top:s,bottom:i,width:n-r,height:i-s};if(t>-1)for(let e in o)o[e]=+o[e].toFixed(t);return o}function Ue(e){let t=[];return e.forEach(e=>{let l=function(e){let t=We(e),l=Ge(t);return l}(e);t.push(l)}),t}function He(e,t){let[l,a,r,n,s,i]=[e.x,e.y,e.width,e.height,e.x+e.width,e.y+e.height],[o,u,h,p,c,y]=[t.x,t.y,t.width,t.height,t.x+t.width,t.y+t.height],f=!1;return r*n!=h*p&&r*n>h*p&&l<o&&s>c&&a<u&&i>y&&(f=!0),f}function We(e){let t=[];for(let l=0;l<e.length;l++){let a=e[l],r=l>0?e[l-1]:e[l],{type:n,values:s}=a,i={x:r.values[r.values.length-2],y:r.values[r.values.length-1]},o=s.length?{x:s[s.length-2],y:s[s.length-1]}:"",u=s.length?{x:s[0],y:s[1]}:"";switch(n){case"A":if("function"!=typeof arcToBezier){let e=ce(i,o)/2,l=_(i,o,.5),a=ae(l.x,l.y,e,e,0),r=ae(l.x,l.y,e,e,Math.PI);t.push(a,r,o);break}arcToBezier(i,s).forEach(e=>{let l=e.values,a={x:l[0],y:l[1]},r={x:l[2],y:l[3]},n={x:l[4],y:l[5]};t.push(a,r,n)});break;case"C":let e={x:s[2],y:s[3]};t.push(u,e);break;case"Q":t.push(u)}"z"!==n.toLowerCase()&&t.push(o)}return t}function Ze(e,t=9){let l=0,a=[],r=me(e),n=r.length>1,s=[];if(n){let e=Ue(r);e.forEach(function(t,l){for(let l=0;l<e.length;l++){let a=e[l];if(t!=a){He(t,a)&&s.push(l)}}})}return r.forEach((e,t)=>{a=[];let r=0,n=0,i=1,o=[];e.forEach(function(t,l){let[n,s]=[t.type,t.values],i=s.length;if(s.length){let u=(l>0?e[l-1]:e[0]).values,h=u.length,p={x:u[h-2],y:u[h-1]},c={x:s[i-2],y:s[i-1]};if("C"===n||"Q"===n){let e={x:s[0],y:s[1]};o="C"===n?[p,e,{x:s[2],y:s[3]},c]:[p,e,c];let t=Math.abs(function(e,t=!1){let l,[a,r,n,s]=[e[0],e[1],e[2],e[e.length-1]];if(e.length<3)return 0;3===e.length&&(r={x:1*e[0].x/3+2*e[1].x/3,y:1*e[0].y/3+2*e[1].y/3},n={x:1*e[2].x/3+2*e[1].x/3,y:1*e[2].y/3+2*e[1].y/3});return l=3*(a.x*(-2*r.y-n.y+3*s.y)+r.x*(2*a.y-n.y-s.y)+n.x*(a.y+r.y-2*s.y)+s.x*(-3*a.y+r.y+2*n.y))/20,t?Math.abs(l):l}(o));r+=t,a.push(p,c)}else if("A"===n){let e=te(p.x,p.y,t.values[0],t.values[1],t.values[2],t.values[3],t.values[4],c.x,c.y),{cx:l,cy:n,rx:s,ry:i,startAngle:o,endAngle:u,deltaAngle:h}=e,y=Math.abs(function(e,t,l,a){const r=Math.PI*e*t;let n=(a-l+2*Math.PI)%(2*Math.PI);if(e===t)return r*(n/(2*Math.PI));const s=l=>Math.atan2(e*Math.sin(l),t*Math.cos(l));return l=s(l),a=s(a),n=(a-l+2*Math.PI)%(2*Math.PI),r*(n/(2*Math.PI))}(s,i,o,u));y-=Math.abs(Xe([p,{x:l,y:n},c])),a.push(p,c),r+=y}else a.push(p,c)}});let u=Xe(a);-1!==s.indexOf(t)&&(i=-1),n=u<0&&r<0?(Math.abs(r)-Math.abs(u))*i:(Math.abs(r)+Math.abs(u))*i,l+=n}),l}function Xe(e,t=!1){let l=0,a=e.length;for(let t=0;a&&t<a;t++){l+=e[t].x*e[t===e.length-1?0:t+1].y*.5-e[t===e.length-1?0:t+1].x*e[t].y*.5}return t&&(l=Math.abs(l)),l}function Je(e,t=0){t=parseFloat(t);let l=e.length,a=e[0].values.join(" "),r=t>1?"\n":t<1?"":" ",n=t>.5?" ":"",s=`${e[0].type}${n}${a}${r}`;for(let i=1;i<l;i++){let o=e[i-1],u=e[i],{type:h,values:p}=u;if(a="",t||"A"!==h&&"a"!==h||(p=[p[0],p[1],p[2],`${p[3]}${p[4]}${p[5]}`,p[6]]),h=t<1&&o.type===u.type&&"m"!==u.type.toLowerCase()||t<1&&"M"===o.type&&"L"===u.type?" ":u.type,t)a=p.join(" ");else{let e=!1;for(let t=0,l=p.length;t<l;t++){let l=p[t],r=l.toString(),n=r.includes(".")&&Math.abs(l)<1;n&&e&&(r=r.replace(/^0\./,".")),!(t>0)||e&&n||(a+=" "),a+=r,e=n}}i===l-1&&(r=""),s+=`${h}${n}${a}${r}`}return t<1&&(s=s.replace(/[A-Za-z]0(?=\.)/g,e=>e[0]).replace(/ 0\./g," .").replace(/ -/g,"-").replace(/-0\./g,"-.").replace(/Z/g,"z")),s}function Ye(e,t,l=0,a=1,r=!1){const n=(e,t,l,a,r)=>{let n=1-r;return{x:3*n*n*(t.x-e.x)+6*n*r*(l.x-t.x)+3*r*r*(a.x-l.x),y:3*n*n*(t.y-e.y)+6*n*r*(l.y-t.y)+3*r*r*(a.y-l.y)}};let s=[e,t],i=xe(e.p0,e.p)>xe(t.p0,t.p),o=JSON.parse(JSON.stringify(e)),u=JSON.parse(JSON.stringify(t)),h=J(o.p0,o.cp1,u.p,u.cp2,!1);if(!h)return s;if(i){let l={p0:{x:e.p.x,y:e.p.y},cp1:{x:e.cp2.x,y:e.cp2.y},cp2:{x:e.cp1.x,y:e.cp1.y},p:{x:e.p0.x,y:e.p0.y}};e={p0:{x:t.p.x,y:t.p.y},cp1:{x:t.cp2.x,y:t.cp2.y},cp2:{x:t.cp1.x,y:t.cp1.y},p:{x:t.p0.x,y:t.p0.y}},t=l}let p=(e,t)=>({x:e.x-t.x,y:e.y-t.y}),c=(e,t)=>({x:e.x*t,y:e.y*t}),y=(e,t)=>e.x*t.x+e.y*t.y,f=t.p0,x=n(t.p0,t.cp1,t.cp2,t.p,0),d=y(p(e.p0,f),x)/y(x,x),g=K([t.p0,t.cp1,t.cp2,t.p],d),m=n(t.p0,t.cp1,t.cp2,t.p,d);d-=y(p(g,e.p0),m)/y(m,m);let v=K([t.p0,t.cp1,t.cp2,t.p],d),b=t.p,A=n(t.p0,t.cp1,t.cp2,t.p,d),M=n(t.p0,t.cp1,t.cp2,t.p,1),w=1-d,C=(S=v,k=c(A,w/3),{x:S.x+k.x,y:S.y+k.y});var S,k;let E=p(b,c(M,w/3)),P={p0:v,cp1:C,cp2:E,p:b,t0:d};i&&(P={p0:b,cp1:E,cp2:C,p:v,t0:d});let D=.5*(1-d),T=K([P.p0,P.cp1,P.cp2,P.p],D,!1,!0),L=T.cpts[2],$=J(T,L,P.p0,h,!1),N=J(T,L,P.p,h,!1),q=_(P.p0,$,1.333),I=_(P.p,N,1.333);if(J(o.p0,q,u.p,I,!0))return s;P.cp1=q,P.cp2=I;let j=xe(o.p0,P.p0)+xe(u.p,P.p);if(P.p0=o.p0,P.p=u.p,P.extreme=u.extreme,P.corner=u.corner,P.dimA=u.dimA,P.directionChange=u.directionChange,P.type="C",P.values=[P.cp1.x,P.cp1.y,P.cp2.x,P.cp2.y,P.p.x,P.p.y],j<l){let t=i?1+d:Math.abs(d),n=1+Math.abs(d);if(t=i?1+d:Math.abs(d)/n,xe(K([P.p0,P.cp1,P.cp2,P.p],t),e.p)>l*a)return s;let h=Ze([{type:"M",values:[o.p0.x,o.p0.y]},{type:"C",values:[o.cp1.x,o.cp1.y,o.cp2.x,o.cp2.y,o.p.x,o.p.y]},{type:"C",values:[u.cp1.x,u.cp1.y,u.cp2.x,u.cp2.y,u.p.x,u.p.y]}]),p=[{type:"M",values:[P.p0.x,P.p0.y]},{type:"C",values:[P.cp1.x,P.cp1.y,P.cp2.x,P.cp2.y,P.p.x,P.p.y]}],c=Ze(p),y=Math.abs(c/h-1);P.error=5*y*a,r&&Je(p),y<.05*a&&(s=[P])}return s}function _e(e,{keepExtremes:t=!0,keepInflections:l=!0,keepCorners:a=!0,extrapolateDominant:r=!0,tolerance:n=1}={}){let s=[e[0]],i=e.length;for(let r=2;i&&r<=i;r++){let o=e[r-1],u=r<i?e[r]:null,h=u?.type||null,{type:p,values:c,p0:y,p:f,cp1:x=null,cp2:d=null,extreme:g=!1,directionChange:m=!1,corner:v=!1,dimA:b=0}=o;if("C"===p&&"C"===h)if(a&&v||t&&g)s.push(o);else{let h=Ke(o,u,{tolerance:n}),p=0;if(1===h.length){o=h[0];let u=1;p+=o.error;for(let s=r+u;p<n&&s<i;s++){let r=e[s];if("C"!==r.type||l&&o.directionChange||a&&o.corner||t&&o.extreme)break;let i=Ke(o,r,{tolerance:n});if(i.length>1)break;p+=.5*i[0].error,u++,o=i[0]}s.push(o),r<i&&(r+=u)}else s.push(o)}else s.push(o)}return s}function Ke(e,t,{tolerance:l=1}={}){let a=[e,t],r=function(e,t){let l=fe(e.cp2,e.p);if(0===l)return 0;let a=fe(e.p,t.cp1);if(0===a)return 0;let r=fe(e.cp2,t.cp1);return l/r}(e,t);if(!r)return a;let n=fe(e.p0,e.p),s=fe(t.p0,t.p),i=.08*Math.max(0,Math.min(n,s))*l,o=function(e,t,l=0){let{p0:a,cp1:r}=e,{p:n,cp2:s}=t;return r={x:(r.x-(1-l)*a.x)/l,y:(r.y-(1-l)*a.y)/l},s={x:(s.x-l*n.x)/(1-l),y:(s.y-l*n.y)/(1-l)},{p0:a,cp1:r,cp2:s,p:n}}(e,t,r),u=K([o.p0,o.cp1,o.cp2,o.p],r),h=fe(e.p,u),p=0,c=0,y=!1,f=h;if(h<i){let l=.5*r;if(p=fe(K([e.p0,e.cp1,e.cp2,e.p],.5),K([o.p0,o.cp1,o.cp2,o.p],l)),f+=p,p<i){let e=.5*(1+r);c=fe(K([t.p0,t.cp1,t.cp2,t.p],.5),K([o.p0,o.cp1,o.cp2,o.p],e)),f+=c,f<i&&(y=!0)}}return y&&(o.p0=e.p0,o.p=t.p,o.dimA=fe(o.p0,o.p),o.type="C",o.extreme=t.extreme,o.directionChange=t.directionChange,o.corner=t.corner,o.extreme||o.corner,o.values=[o.cp1.x,o.cp1.y,o.cp2.x,o.cp2.y,o.p.x,o.p.y],o.error=f/i,a=[o]),a}function et(e,{tolerance:t=1,debug:l=!1}={}){let a=!1,r={flat:!0,steepness:0},n=e[0],s=e[e.length-1],i=new Set([...e.map(e=>+e.x.toFixed(8))]),o=new Set([...e.map(e=>+e.y.toFixed(8))]);if(1===i.size||1===o.size)return!l||r;let u=ye(n,s),h=u/1e3*t,p=Xe(e,!0);return p<h&&(a=!0),l&&(r.flat=a,r.steepness=p/u*10),l?r:a}function tt(e=[],{detectExtremes:l=!0,detectCorners:a=!0,detectDirection:r=!0,detectSemiExtremes:n=!1,debug:s=!1,addSquareLength:i=!0,addArea:o=!0}={}){let u=[],h=Ge(ee(e=lt(e,{addSquareLength:i,addArea:o}))),{left:p,right:c,top:y,bottom:f,width:x,height:d}=h;e[0].corner=!1,e[0].extreme=!1,e[0].semiExtreme=!1,e[0].directionChange=!1,e[0].closePath=!1;let g=[e[0]],m=e.length;for(let t=2;m&&t<=m;t++){let l=e[t-1],{type:a,values:r,p0:s,p:i,cp1:o=null,cp2:u=null,squareDist:h=0,cptArea:x=0,dimA:d=0}=l,m=e[t-2],v=e[t]||null;l.corner=!1,l.extreme=!1,l.semiExtreme=!1,l.directionChange=!1,l.closePath=!1;let b="C"===a||"Q"===a?"C"===a?[s,o,u,i]:[s,o,i]:[s,i],A=.1*d,M=.01*A,w="Q"===a||"C"===a,C="A"===a,S=v&&("Q"===v.type||"C"===v.type),k=!1;
2
2
  //!isFlat &&
3
- if(M){let e="C"===a?Math.abs(l.cp2.x-l.p.x):Math.abs(l.cp1.x-l.p.x),t="C"===a?Math.abs(l.cp2.y-l.p.y):Math.abs(l.cp1.y-l.p.y);if(((0===t||t<=A)&&e>0||(0===e||e<=A)&&t>0)&&(C=!0),(o.x===s.x&&o.y!==s.y||o.y===s.y&&o.x!==s.x)&&(d[d.length-1].extreme=!0),i.x!==p&&i.y!==y&&i.x!==c&&i.y!==f||(C=!0),!C){if(ae(null,v)){let e=se(v);e.length&&e[0]>.2&&(C=!0)}}}if(C&&(l.extreme=!0),M&&w){if(n&&!l.extreme){let e=Math.abs(i.x-u.x),t=Math.abs(i.y-u.y),a=!1;if(e&&t&&e>b||t>b){let e=U(u,i),t=U(i,g.cp1);a=ue(Math.abs(e+t)/2)}a&&(l.semiExtreme=!0)}if((l.cptArea<0&&g.cptArea>0||l.cptArea>0&&g.cptArea<0)&&(l.directionChange=!0),!l.extreme){let e=u||o,t=g.cp1,a=Ze([e,i,t],!1),r=.01*pe(e,t),n=Math.abs(a)<r,s=a<0&&l.cptArea>0||a>0&&l.cptArea<0;!n&&s&&(l.corner=!0)}}d.push(l)}return s&&d.forEach(e=>{e.directionChange&&t(markers,e.p,"orange","1.5%","0.5"),e.corner&&t(markers,e.p,"magenta","1.5%","0.5"),e.extreme&&t(markers,e.p,"cyan","1%","0.5")}),u={pathData:d,bb:h,dimA:(x+m)/2},u}function et(e,{addSquareLength:t=!0,addArea:l=!1,addArcParams:a=!1,addAverageDim:r=!0}={}){let n=e[0],s={x:n.values[0],y:n.values[1]},i=s,o=s;n.p0=i,n.p=o,n.idx=0,n.dimA=0;let u=e.length,h=[n];for(let r=1;r<u;r++){let n,u,p=e[r],{type:c,values:y}=p,f=y.length;if(o=f?{x:y[f-2],y:y[f-1]}:s,p.p0=i,p.p=o,p.dimA=ce(i,o),"M"===c&&(s=o),"Q"===c||"C"===c)n={x:y[0],y:y[1]},u="C"===c?{x:y[2],y:y[3]}:null,p.cp1=n,u&&(p.cp2=u);else if("A"===c&&a){let{rx:e,ry:t,cx:l,cy:a,startAngle:r,endAngle:n,deltaAngle:s}=K(i.x,i.y,...y);p.cx=l,p.cy=a,p.rx=e,p.ry=t,p.xAxisRotation=y[2]/180*Math.PI,p.largeArc=y[3],p.sweep=y[4],p.startAngle=r,p.endAngle=n,p.deltaAngle=s}if("Z"===c&&s.x!==o.x&&s.y!==o.y&&(p.closePath=!0),t&&(p.squareDist=pe(i,o)),l){let e=0;"C"===c&&(e=Ze([i,n,u,o],!1)),"Q"===c&&(e=Ze([i,n,o],!1)),p.cptArea=e}p.idx=r,i=o,h.push(p)}return h}const tt=new Set([77,109,65,97,67,99,76,108,81,113,83,115,84,116,72,104,86,118,90,122]),lt=new Uint8Array(128);lt[77]=2,lt[109]=2,lt[65]=7,lt[97]=7,lt[67]=6,lt[99]=6,lt[76]=2,lt[108]=2,lt[81]=4,lt[113]=4,lt[83]=4,lt[115]=4,lt[84]=2,lt[116]=2,lt[72]=1,lt[104]=1,lt[86]=1,lt[118]=1,lt[90]=0,lt[122]=0;const at=new Set([5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279]),rt=e=>32===e||44===e||10===e||13===e||8232===e||8233===e||9===e||11===e||12===e||160===e||e>=5760&&at.has(e);function nt(e,t=!0,l=0){if(!e)return[];e=e.trim(),l&&console.log("!!!limit",l);let a={pathData:[],hasRelatives:!1,hasShorthands:!1,hasArcs:!1,hasQuadratics:!1,isPolygon:!1,log:[]};if(""===e)return a;let r,n=0,s=e.length,i="",o=-1,u="",h=!1,p=0,c=0,y=0,f=!1,x=new Set([]);const m=()=>{f&&("M"===i?i="L":"m"===i&&(i="l"),a.pathData.push({type:i,values:[]}),o++,c=0,f=!1)},d=(e=!1)=>{(e?p>0:""!==u)&&(t&&-1===o&&(r="Pathdata must start with M command",a.log.push(r),i="M",a.pathData.push({type:i,values:[]}),y=2,c=0,o++),"A"===i||"a"===i?(({val:u,valueIndex:c}=((e="",t=0)=>{let l=e.length;return 3===t&&2===l?(e=[+e[0],+e[1]],t++):4===t&&l>1?(e=[+e[0],+e.substring(1)],t++):3===t&&l>=3?(e=[+e[0],+e[1],+e.substring(2)],t+=2):e=[+e],{val:e,valueIndex:t}})(u,c)),a.pathData[o].values.push(...u)):(t&&u[1]&&"."!==u[1]&&"0"===u[0]&&(r=`${o}. command: Leading zeros not valid: ${u}`,a.log.push(r)),a.pathData[o].values.push(+u)),c++,u="",p=0,f=c>=y)},g=()=>{if(o>0){let e=a.pathData[o].values.length;if(e&&e<y||e&&e>y||("z"===i||"Z"===i)&&e>0){r=`${o}. command of type "${i}": ${y-e} values too few - ${y} expected`,a.log[a.log.length-1]!==r&&a.log.push(r)}}};let v=!1,b=!1,A=!1,M="";for(;n<s;){M=e.charCodeAt(n);let l=M>47&&M<58;if(l||(v=101===M||69===M,b=45===M||43===M,A=46===M),l||b||A||v){if(h||45!==M&&46!==M)m();else{let e=46===M;d(e),m(),e&&p++}u+=e[n],h=v,n++}else if((M<48||M>5759)&&rt(M))d(),n++;else{if(M>64){if(!tt.has(M)){r=`${o}. command "${e[n]}" is not a valid type`,a.log.push(r),n++;continue}""!==u&&(a.pathData[o].values.push(+u),c++,u=""),t&&g(),i=e[n],y=lt[M];let l="M"===i||"m"===i,s=o>0&&("z"===a.pathData[o].type||"Z"===a.pathData[o].type);x.add(i),s&&!l&&(a.pathData.push({type:"m",values:[0,0]}),o++),a.pathData.push({type:i,values:[]}),o++,p=0,c=0,f=!1,n++;continue}l||(r=`${o}. ${e[n]} is not a valid separarator or token`,a.log.push(r),u=""),n++}}d(),t&&g(),t&&a.log.length&&(r="Invalid path data:\n"+a.log.join("\n"),"log"===t||console.warn(r)),a.pathData[0].type="M";let w=Array.from(x).join("");return a.hasRelatives=/[lcqamtsvh]/g.test(w),a.hasShorthands=/[vhst]/gi.test(w),a.hasArcs=/[a]/gi.test(w),a.hasQuadratics=/[qt]/gi.test(w),a.isPolygon=!/[cqats]/gi.test(w),a}function st(e,{toAbsolute:t=!0,toLonghands:l=!0,quadraticToCubic:a=!1,arcToCubic:r=!1,arcAccuracy:n=4}={}){let s=Array.isArray(e),i=s&&"object"==typeof e[0]&&"function"==typeof e[0].constructor,o=s?e:nt(e),{hasRelatives:u=!0,hasShorthands:h=!0,hasQuadratics:p=!0,hasArcs:c=!0}=o,y=i?o:o.pathData;return y=function(e=[],{toAbsolute:t=!0,toLonghands:l=!0,quadraticToCubic:a=!1,arcToCubic:r=!1,arcAccuracy:n=2,hasRelatives:s=!0,hasShorthands:i=!0,hasQuadratics:o=!0,hasArcs:u=!0,testTypes:h=!1}={}){return it(e,{toAbsolute:t,toLonghands:l,quadraticToCubic:a,arcToCubic:r,arcAccuracy:n,hasRelatives:s,hasShorthands:i,hasQuadratics:o,hasArcs:u,testTypes:h,decimals:-1})}(y,{toAbsolute:t,toLonghands:l,quadraticToCubic:a,arcToCubic:r,arcAccuracy:n,hasRelatives:u,hasShorthands:h,hasQuadratics:p,hasArcs:c}),y}function it(e,{toShorthands:t=!0,toLonghands:l=!1,toRelative:a=!0,toMixed:r=!1,toAbsolute:n=!1,decimals:s=3,arcToCubic:i=!1,quadraticToCubic:o=!1,hasRelatives:u=!0,hasShorthands:h=!0,hasQuadratics:p=!0,hasArcs:c=!0,isPoly:y=!1,optimizeArcs:f=!0,testTypes:x=!1}={}){let m=[];if(x){let t=Array.from(new Set(e.map(e=>e.type))).join("");/[lcqamts]/gi.test(t),p=/[qt]/gi.test(t),c=/[a]/gi.test(t),h=/[vhst]/gi.test(t),/[mlz]/gi.test(t)}if(a=!n&&a,t=!l&&t,n&&(e=pt(e)),h&&l&&(e=function(e,t=-1,l=!0){let a=!1;if(l){let t=e.map(e=>e.type).join(""),l=/[hstv]/gi.test(t);if(a=/[astvqmhlc]/g.test(t),!l)return e}e=l&&a?pt(e,t):e;let r=[],n={type:"M",values:e[0].values};r.push(n);for(let l=1,a=e.length;l<a;l++){let a,s,i,o,u,h,p,c,y=e[l],{type:f,values:x}=y,m=x.length,d=n.values,g=d.length,[v,b]=[x[m-2],x[m-1]],[A,M]=[d[g-2],d[g-1]];switch(f){case"H":n={type:"L",values:[x[0],M]};break;case"V":n={type:"L",values:[A,x[0]]};break;case"T":[a,s]=[d[0],d[1]],[A,M]=[d[g-2],d[g-1]],i=A+(A-a),o=M+(M-s),n={type:"Q",values:[i,o,v,b]};break;case"S":[a,s]=[d[0],d[1]],[A,M]=[d[g-2],d[g-1]],[p,c]=g>2&&"A"!==n.type?[d[2],d[3]]:[A,M],i=2*A-p,o=2*M-c,u=x[0],h=x[1],n={type:"C",values:[i,o,u,h,v,b]};break;default:n={type:f,values:x}}t>-1&&(n.values=n.values.map(e=>+e.toFixed(t))),r.push(n)}return r}(e)),f&&(e=function(e=[]){let t=[];e.forEach((l,a)=>{let{type:r,values:n}=l;if("A"===r){let[l,r,s,i,o]=[n[0],n[1],n[3],n[5],n[6]],u=e[a-1],[h,p]=[u.values[u.values.length-2],u.values[u.values.length-1]],c={x:h,y:p},y={x:i,y:o};if(0!==l&&0!==r||(e[a]=null,t.push(a)),l>=1&&(i===h||o===p)){if(Math.abs(l-r)/l<.01){let t=he(J(c,y,.5),c);Math.abs(t-l)/l<.01&&(e[a].values[0]=1,e[a].values[1]=1,e[a].values[2]=0)}}}}),t.length&&(e=e.filter(Boolean));return e}(e)),t&&(e=function(e,t=-1,l=!1){let a;if(l){let t=e.map(e=>e.type).join("");a=/[astvqmhlc]/g.test(t)}e=l&&a?ht(e):e;let r=e.length,n=new Array(r),s=e[0];n[0]=s;let i={x:e[0].values[0],y:e[0].values[1]},o=i;for(let t=1;t<r;t++){let l=e[t];s=l;let{type:a,values:r}=l,u=r.length,h=[r[u-2],r[u-1]],p=e[t-1];o={x:h[0],y:h[1]};let c=Math.abs(o.x-i.x),y=Math.abs(o.y-i.y),f=.01*ce(i,o),x=!1,m=!1,d=!1;if("C"===a&&"C"===p.type||"Q"===a&&"Q"===p.type){let e="C"===p.type?{x:p.values[2],y:p.values[3]}:{x:p.values[0],y:p.values[1]},t={x:r[0],y:r[1]},l=i.x-e.x,a=i.y-e.y;f=.01*ce(e,t),x=ce({x:e.x+2*l,y:e.y+2*a},t)<f}else"L"===a&&(m=0===y||y<f,d=0===c||c<f,x=d||m);switch(a){case"L":m&&(s={type:"H",values:[r[0]]}),d&&(s={type:"V",values:[r[1]]});break;case"Q":x&&(s={type:"T",values:[o.x,o.y]});break;case"C":x&&(s={type:"S",values:[r[2],r[3],o.x,o.y]});break;default:s={type:a,values:r}}i=o,n[t]=s}return n}(e)),c&&i&&(e=function(e,{arcAccuracy:t=1}={}){let l=[e[0]];for(let a=1,r=e.length;a<r;a++){let r=e[a],n=e[a-1].values,s=n.length,i={x:n[s-2],y:n[s-1]};if("A"===r.type){yt(i,r.values,t).forEach(e=>{l.push(e)})}else l.push(r)}return l}(e)),p&&o&&(e=function(e){let t=[e[0]];for(let l=1,a=e.length;l<a;l++){let a=e[l],r=e[l-1].values,n=r.length,s={x:r[n-2],y:r[n-1]};"Q"===a.type?t.push(ut(s,a.values)):t.push(a)}return t}(e)),r&&(a=!0),s>-1&&a&&(e=ke(e,s)),r&&(m=JSON.parse(JSON.stringify(e))),a&&(e=function(e,t=-1){return ht(e,!0,t)}(e)),s>-1&&(e=ke(e,s)),r)for(let t=0;t<e.length;t++){let l=e[t],a=m[t],r=[l.type,l.values.join(" ")].join("").replaceAll(" -","-").replaceAll(" 0."," ."),n=[a.type,a.values.join(" ")].join("").replaceAll(" -","-").replaceAll(" 0."," ."),s=r.length;n.length<s&&(e[t]=m[t])}return e}function ot(e={},t={},l={},a={},r=1){let n=J(e,t,1.5),s=J(a,l,1.5),i=.01*ce(e,a)*r,o=ce(n,s),u=null,h={type:"C",values:[t.x,t.y,l.x,l.y,a.x,a.y]};return o<i&&(u=W(e,t,a,l,!1,!0),u&&(h.type="Q",h.values=[u.x,u.y,a.x,a.y],h.p0=e,h.cp1=u,h.cp2=null,h.p=a)),h}function ut(e,t){Array.isArray(e)&&(e={x:e[0],y:e[1]});let l={x:e.x+2/3*(t[0]-e.x),y:e.y+2/3*(t[1]-e.y)},a={x:t[2]+2/3*(t[0]-t[2]),y:t[3]+2/3*(t[1]-t[3])};return{type:"C",values:[l.x,l.y,a.x,a.y,t[2],t[3]]}}function ht(e,t=!1,l=-1){l>=0&&(e[0].values=e[0].values.map(e=>+e.toFixed(l)));let a=e.length,r=e[0].values,n=r[0],s=r[1],i=n,o=s;for(let r=1;r<a;r++){let a=e[r],{type:u,values:h}=a,p=h.length,c=u.toLowerCase(),y=u.toUpperCase(),f=t?c:y;if(u!==f)switch(a.type=f,c){case"a":h[5]=t?h[5]-n:h[5]+n,h[6]=t?h[6]-s:h[6]+s;break;case"v":h[0]=t?h[0]-s:h[0]+s;break;case"h":h[0]=t?h[0]-n:h[0]+n;break;case"m":t?(h[0]-=n,h[1]-=s):(h[0]+=n,h[1]+=s),i=t?h[0]+n:h[0],o=t?h[1]+s:h[1];break;default:if(h.length)for(let e=0;e<h.length;e++)h[e]=t?h[e]-(e%2?s:n):h[e]+(e%2?s:n)}switch(c){case"z":n=i,s=o;break;case"h":n=t?n+h[0]:h[0];break;case"v":s=t?s+h[0]:h[0];break;case"m":i=h[p-2]+(t?n:0),o=h[p-1]+(t?s:0);default:n=h[p-2]+(t?n:0),s=h[p-1]+(t?s:0)}l>=0&&(a.values=a.values.map(e=>+e.toFixed(l)))}return e}function pt(e,t=-1){return ht(e,!1,t)}function ct({p0:e={x:0,y:0},p:t={x:0,y:0},centroid:l={x:0,y:0},rx:a=0,ry:r=0,xAxisRotation:n=0,radToDegree:s=!1,startAngle:i=null,endAngle:o=null,deltaAngle:u=null}={}){if(!a||!r)return[];let h=[];const p=1.5707963267948966;let c=s?n:n*Math.PI/180,y=Math.cos(c),f=Math.sin(c);null!==i&&null!==o&&null!==u||({startAngle:i,endAngle:o,deltaAngle:u}=Z(l,e,t));let x=a!==r?le(i,a,r):i,m=a!==r?le(u,a,r):u,d=Math.max(1,Math.ceil(Math.abs(m)/p)),g=m/d;for(let e=0;e<d;e++){const e=Math.abs(g)===p?.551785*Math.sign(g):4/3*Math.tan(g/4);let t=Math.cos(x),n=Math.sin(x),s=Math.cos(x+g),i=Math.sin(x+g),o=[];[{x:t-n*e,y:n+t*e},{x:s+i*e,y:i-s*e},{x:s,y:i}].forEach(e=>{let t=e.x*a,n=e.y*r;o.push(y*t-f*n+l.x,f*t+y*n+l.y)}),h.push({type:"C",values:o,cp1:{x:o[0],y:o[1]},cp2:{x:o[2],y:o[3]},p:{x:o[4],y:o[5]}}),x+=g}return h}function yt(e,t,l=1){const a=2*Math.PI;let[r,n,s,i,o,u,h]=t;if(0===r||0===n)return[];let p=s?s*a/360:0,c=p?Math.sin(p):0,y=p?Math.cos(p):1,f=y*(e.x-u)/2+c*(e.y-h)/2,x=-c*(e.x-u)/2+y*(e.y-h)/2;if(0===f&&0===x)return[];r=Math.abs(r),n=Math.abs(n);let m=f*f/(r*r)+x*x/(n*n);if(m>1){let e=Math.sqrt(m);r*=e,n*=e}let d=r*r,g=r===n?d:n*n,v=f*f,b=x*x,A=d*g-d*b-g*v;A<=0?A=0:(A/=d*b+g*v,A=Math.sqrt(A)*(i===o?-1:1));let M=A?A*r/n*x:0,w=A?A*-n/r*f:0,C=y*M-c*w+(e.x+u)/2,k=c*M+y*w+(e.y+h)/2,S=(f-M)/r,E=(x-w)/n,P=(-f-M)/r,D=(-x-w)/n;const L=(e,t,l,a)=>{let r=+(e*l+t*a).toFixed(9);return 1===r||-1===r?1===r?0:Math.PI:(r=r>1?1:r<-1?-1:r,(e*a-t*l<0?-1:1)*Math.acos(r))};let $=L(1,0,S,E),T=L(S,E,P,D);0===o&&T>0?T-=2*Math.PI:1===o&&T<0&&(T+=2*Math.PI);let N=(+(Math.abs(T)/(a/4)).toFixed(0)||1)*l;T/=N;let q=[];const j=1.5707963267948966,z=.551785;let I=T===j?z:T===-j?-z:4/3*Math.tan(T/4),B=T?Math.cos(T):1,F=T?Math.sin(T):0;const O=(e,t,l,a,r)=>{let n=e!=t?Math.cos(e):a,s=e!=t?Math.sin(e):r,i=Math.cos(e+t),o=Math.sin(e+t);return[{x:n-s*l,y:s+n*l},{x:i+o*l,y:o-i*l},{x:i,y:o}]};for(let e=0;e<N;e++){let e={type:"C",values:[]};O($,T,I,B,F).forEach(t=>{let l=t.x*r,a=t.y*n;e.values.push(y*l-c*a+C,c*l+y*a+k)}),q.push(e),$+=T}return q}function ft(e,{areaThreshold:t=2.5}={}){for(let l=0,a=e.length;l<a;l++){let a=e[l],r=e[l+1]||null,{type:n,values:s,p0:i,cp1:o=null,cp2:u=null,p:h=null}=a;if("C"===n&&r&&"C"===r.type){let a=xt(i,o,u,h,t),n=xt(r.p0,r.cp1,r.cp2,r.p,t);if(a.isArc&&n.isArc){let t=.01*ce(i,r.p),s=Math.abs(r.p.x-i.x),o=Math.abs(r.p.y-i.y),u=o<t&&s>t,p=s<t&&o>t,{rx:c,ry:y}=a,f=Ze([i,h,r.p])<0?0:1;if(p||u){c=Math.min(c,n.rx),y=Math.min(y,n.ry),e[l]=null,e[l+1].type="A",e[l+1].values=[c,y,0,0,f,r.p.x,r.p.y];continue}}}}return e=e.filter(Boolean)}function xt(e,t,l,a,r=7.5){let n,s={type:"C",values:[t.x,t.y,l.x,l.y,a.x,a.y]},i=0,o=!1,u=U(e,t,!0),h=U(a,l,!0),p=180*Math.abs(u-h)/Math.PI,c=0,y=0;if(Math.abs(p%180-90)<3){n=W(e,ee(t,e.x,e.y,-.5*Math.PI),a,ee(l,a.x,a.y,.5*Math.PI),!1);let u=W(e,t,a,l,!1);if(u){let n=he(e,u),h=he(a,u),p=+Math.max(n,h).toFixed(8),f=+Math.min(n,h).toFixed(8);c=f,y=p;let x=Ze([e,t,l,a])<0?0:1,m=Math.abs(a.x-e.x)>Math.abs(a.y-e.y);100/c*Math.abs(c-y)<5&&(c=p,y=c),m&&(c=p,y=f);let d=Ue([{type:"M",values:[e.x,e.y]},{type:"C",values:[t.x,t.y,l.x,l.y,a.x,a.y]}]),g={type:"A",values:[c,y,0,0,x,a.x,a.y]};i=Math.PI*(c*y)/4,i-=Math.abs(Ze([e,a,u])),function(e,t){let l=Math.abs(e-t);return Math.abs(100-100/e*(e+l))}(d,i)<r&&(o=!0,s=g)}}return{com:s,isArc:o,area:i,rx:c,ry:y,centroid:n}}function mt(e=null,{autoRoundValues:t=!0,decimals:l=-1}={}){if(!e)return!1;let a=e.hasAttribute("width"),r=e.hasAttribute("height"),n=e.hasAttribute("viewBox"),s=a?e.getAttribute("width"):0,i=r?e.getAttribute("height"):0,o=s?s.includes("%")?0:Be(s,{isHorizontal:!0}):300,u=i?i.includes("%")?0:Be(i,{isVertical:!0}):150,h=n?e.getAttribute("viewBox").split(/,| /).filter(Boolean).map(Number):[0,0,o,u];t?([o,u]=[o,u].map(e=>Ce(e)),h=h.map(e=>Ce(e))):!t&&l>-1&&([o,u]=[o,u].map(e=>+e.toFixed(l)),h=h.map(e=>+e.toFixed(l)));let[p=0,c=0,y=0,f=0]=h;return n&&(o=y,u=f),{x:p,y:c,width:y,height:f,w:o,h:u,hasViewBox:n,hasWidth:a,hasHeight:r,widthUnit:"",heightUnit:""}}function dt(e,t){let l=[];const a=(e,t)=>{let{a:l,b:a,c:r,d:n,e:s,f:i}=t,{x:o,y:u}=e;return{x:l*o+r*u+s,y:a*o+n*u+i}},r=(e,t,l)=>{let[r,n,s,i,o,u,h]=t,p=K(e.x,e.y,t[0],t[1],s,i,o,u,h);({rx:r,ry:n}=p);let{a:c,b:y,c:f,d:x,e:m,f:d}=l,g=function(e,t,l,a){const r=Math.PI/180,n=1e-7;a=Array.isArray(a)?{a:a[0],b:a[1],c:a[2],d:a[3],e:a[4],f:a[5]}:a;let s=Math.cos(l*r),i=Math.sin(l*r),o=[e*(a.a*s+a.c*i),e*(a.b*s+a.d*i),t*(-a.a*i+a.c*s),t*(-a.b*i+a.d*s)],u=o[0]*o[0]+o[2]*o[2],h=o[1]*o[1]+o[3]*o[3],p=Math.sqrt(((o[0]-o[3])*(o[0]-o[3])+(o[2]+o[1])*(o[2]+o[1]))*((o[0]+o[3])*(o[0]+o[3])+(o[2]-o[1])*(o[2]-o[1]))),c=(u+h)/2;if(p<=n)return{rx:e=t=Math.sqrt(c),ry:t,ax:l=0};if(Math.abs(p-Math.abs(u-h))<=n)return{rx:e=Math.sqrt(u),ry:t=Math.sqrt(h),ax:l=0};let y=o[0]*o[1]+o[2]*o[3],f=c+p/2,x=c-p/2;if(Math.abs(y)<=n&&Math.abs(f-h)<=n)return l=0,{rx:e=Math.sqrt(x),ry:t=Math.sqrt(f),ax:l};(l=Math.atan(Math.abs(y)>Math.abs(f-h)?(f-u)/y:y/(f-h))/r)>=0?(e=Math.sqrt(f),t=Math.sqrt(x)):(l+=90,e=Math.sqrt(x),t=Math.sqrt(f));return{rx:e,ry:t,ax:l}}(r,n,s,l),v=a({x:u,y:h},l),b=c*c+y*y,A=Math.sqrt(b);return(A<0||(c*x-f*y)/A<0)&&(o=0===o?1:0),{type:"A",values:[g.rx,g.ry,g.ax,i,o,v.x,v.y]}};return"100100"===[(t=(e=>(e="string"==typeof e?e=e.replace(/^matrix\(|\)$/g,"").split(",").map(Number):e,e=Array.isArray(e)?{a:e[0],b:e[1],c:e[2],d:e[3],e:e[4],f:e[5]}:{a:e.a,b:e.b,c:e.c,d:e.d,e:e.e,f:e.f}))(t)).a,t.b,t.c,t.d,t.e,t.f].map(e=>+e.toFixed(1)).join("")?e:(e.forEach((n,s)=>{let{type:i,values:o}=n,u=i.toLowerCase(),h=(s>0?e[s-1]:e[s]).values,p=h.length,c={x:h[p-2],y:h[p-1]};o[o.length-2],o[o.length-1];let y={type:i,values:[]};if("a"===u)y=r(c,o,t);else if(o.length)for(let e=0;e<o.length;e+=2){let l=a({x:n.values[e],y:n.values[e+1]},t);y.values[e]=l.x,y.values[e+1]=l.y}l.push(y)}),l)}function gt(e,{width:t=0,height:l=0,convertShapes:a=[],matrix:r=null}={}){let n=e.nodeName.toLowerCase();if(!a.includes(n))return e;let s=function(e,{stringify:t=!1,width:l=0,height:a=0}={}){let r,n,s,i,o,u,h,p,c,y,f,x,m=[],d=e.nodeName.toLowerCase();if(!l||!a){let t=function(e){let t=e.parentNode.closest("svg");for(;t&&t.parentNode&&t.parentNode.closest;){let e=t.parentNode.closest("svg");if(!e)break;t=e}return t}(e),r=mt(t);l=r.width,a=r.height}let g=function(e,{width:t=0,height:l=0,fontSize:a=16,dpi:r=96,autoRoundValues:n=!1,decimals:s=-1}={}){let i=[...e.attributes].map(e=>e.name),o=[];i.forEach(t=>{o.push(e.getAttribute(t))});let u=t===l,h={};return i.forEach((a,r)=>{let s=Ee.includes(a),i=Pe.includes(a),p=!u&&"r"===a,c=Be(o[r],{isHorizontal:s,isVertical:i,width:t,height:l,normalizedDiagonal:p,autoRoundValues:n});h[a]=c,e.setAttribute(a,c)}),h}(e,{width:l,height:a});switch(d){case"path":r=e.getAttribute("d"),m=st(r);break;case"rect":({x:n=0,y:s=0,width:l=0,height:a=0,rx:o=0,ry:u=0}=g),m=function(e=0,t=0,l=0,a=0,r=0,n=0){let s=[];r||n?(r=r||n,n=n||r,r>l/2&&(r=l/2),n>a/2&&(n=a/2),s=[{type:"M",values:[e+r,t]},{type:"L",values:[e+l-r,t]},{type:"A",values:[r,n,0,0,1,e+l,t+n]},{type:"L",values:[e+l,t+a-n]},{type:"A",values:[r,n,0,0,1,e+l-r,t+a]},{type:"L",values:[e+r,t+a]},{type:"A",values:[r,n,0,0,1,e,t+a-n]},{type:"L",values:[e,t+n]},{type:"A",values:[r,n,0,0,1,e+r,t]},{type:"Z",values:[]}]):s=[{type:"M",values:[e,t]},{type:"L",values:[e+l,t]},{type:"L",values:[e+l,t+a]},{type:"L",values:[e,t+a]},{type:"Z",values:[]}];return s}(n,s,l,a,o,u);break;case"circle":case"ellipse":({cx:h=0,cy:p=0,r:i,rx:o,ry:u}=g);let t="circle"===d;t?(o=i,u=i):(o=o||i,u=u||i);let v=t&&i>=1?1:o,b=t&&i>=1?1:u;m=[{type:"M",values:[h+o,p]},{type:"A",values:[v,b,0,1,1,h-o,p]},{type:"A",values:[v,b,0,1,1,h+o,p]}];break;case"line":({x1:c,y1:f,x2:y,y2:x}=g),m=[{type:"M",values:[c,f]},{type:"L",values:[y,x]}];break;case"polygon":case"polyline":let A=e.getAttribute("points").split(/,| /).filter(Boolean).map(Number);for(let e=0;e<A.length;e+=2)m.push({type:0===e?"M":"L",values:[A[e],A[e+1]]});"polygon"===d&&m.push({type:"Z",values:[]})}return t?function(e){return e.map(e=>`${e.type} ${e.values.join(" ")}`).join(" ")}(m):m}(e,{width:t,height:l}),i=["d","x","y","x1","y1","x2","y2","cx","cy","dx","dy","r","rx","ry","width","height","points"];r&&"100100"!==Object.values(r).join("")&&(s=dt(s,r),i.push("transform","transform-origin"));let o=s.map(e=>`${e.type} ${e.values} `).join(" "),u=[...e.attributes].map(e=>e.name),h=document.createElementNS(k,"path");return h.setAttribute("d",o),u.forEach(t=>{if(!i.includes(t)){let l=e.getAttribute(t);h.setAttribute(t,l)}}),h}function vt(e,{convertShapes:t=[]}={}){let l=st(e.getAttribute("d")),a=Array.from(new Set(l.map(e=>e.type))).join(""),r=/[a]/gi.test(a),n=/[csqt]/gi.test(a),s=/[l]/gi.test(a),i=!/[acqts]/gi.test(a),o=/[z]/gi.test(a),u=null,h=null,p=Re(e),c={};if(i)if(2===l.length&&t.includes("line")){h="line",u=document.createElementNS(k,h);let[e,t,a,r]=[...l[0].values,...l[1].values].map(e=>we(e,7));c={x1:e,y1:t,x2:a,y2:r}}else{let e=_(l),a=Qe(e),r=Ze(e,!0),n=a.width*a.height,s=Math.abs(1-n/r);if(t.includes("rect")&&s<.01){h="rect",u=document.createElementNS(k,h);let{x:e,y:t,width:l,height:r}=a;c={x:e,y:t,width:l,height:r}}else if(t.includes("polygon")||t.includes("polyline")){h=o?"polygon":"polyline",u=document.createElementNS(k,h),c={points:e.map(e=>[e.x,e.y]).flat().map(e=>we(e,7)).join(" ")}}}else if(!s&&(t.includes("circle")||t.includes("ellipse"))&&(!r&&n&&(l=ft(l,{areaThreshold:2.5}),r=l.filter(e=>"A"===e.type).length),r)){let e=et(l,{addArcParams:!0}),t=e.filter(e=>"A"===e.type),a=new Set,r=new Set,n=new Set,s=new Set;if(t.length>1&&e.forEach(e=>{"A"===e.type&&(a.add(we(e.cx,7)),r.add(we(e.cy,7)),n.add(we(e.rx,7)),s.add(we(e.ry,7)))}),a=Array.from(a),r=Array.from(r),n=Array.from(n),s=Array.from(s),1===a.length&&1===r.length&&1===n.length&&1===s.length){let[e,t,l,i]=[n[0],s[0],a[0],r[0]];h=e===t?"circle":"ellipse",u=document.createElementNS(k,h),c="circle"===h?{r:e,cx:l,cy:i}:{rx:e,ry:t,cx:l,cy:i}}}if(u){let t=["id","class"];for(let e in c)u.setAttribute(e,c[e]);for(let e in p)(Ie.atts[e].includes(h)||t.includes(e)||e.startsWith("data-"))&&u.setAttribute(e,p[e]);e=u}return e}function bt(e,{tolerance:t=1,flatBezierToLinetos:l=!0}={}){let a=[e[0]],r={x:e[0].values[0],y:e[0].values[1]},n=r,s=r;e[e.length-1].type.toLowerCase();for(let i=1,o=e.length;i<o;i++){let u=e[i],h=e[i+1]||e[o-1],p="z"===h.type.toLowerCase()?r:{x:h.values[h.values.length-2],y:h.values[h.values.length-1]},{type:c,values:y}=u,f=y.slice(-2);s="Z"!==c?{x:f[0],y:f[1]}:r;let x=p?Ze([n,s,p],!0):1/0,m=pe(n,p),d=x<(m?m/333*t:0),g=!1;if(l||"C"!==c||(d=!1),l&&("C"===c||"Q"===c)){g=_e([n,..."C"===c?[{x:y[0],y:y[1]},{x:y[2],y:y[3]}]:"Q"===c?[{x:y[0],y:y[1]}]:[],s],{tolerance:t}),g&&i<o-1&&(c="L",u.type="L",u.values=f)}d&&i<o-1&&"A"!==h.type&&("L"===c||l&&g)||(n=s,"M"===c&&(r=s),a.push(u))}return a}function At(e){let t=[];for(let l=0,a=e.length;l<a;l++){let a=e[l];if(!a)continue;let{type:r=null,values:n=[]}=a,s=e[l+1]?e[l+1]:null;"M"!==r&&"m"!==r||s&&(!s||"Z"!==s.type&&"z"!==s.type)?t.push(a):s&&l++}return t}function Mt(e){let t={x:e[0].values[0],y:e[0].values[1]},l=t,a=[e[0]];for(let r=1,n=e.length;r<n;r++){let n=e[r],s=e[r-1],i=e[r+1]||null,{type:o,values:u}=n,h="m"===s.type.toLowerCase()&&!i,p=u.length;if(l={x:u[p-2],y:u[p-1]},h||"L"!==o||l.x!==t.x||l.y!==t.y){if(!h&&("l"===o||"v"===o||"h"===o)){if("l"===o?"00"===u.join(""):0===u[0])continue}a.push(n),t=l}}return a}function wt(e){let t=e.length;if(!("z"===e[t-1].type.toLowerCase()))return e;let l=0,a=[];for(let l=0;l<t;l++){let t=e[l],{type:r,values:n}=t,s=n.length;if(s){let e={type:r,x:n[s-2],y:n[s-1],index:0};e.index=l,a.push(e)}}return a=a.sort((e,t)=>+e.y.toFixed(8)-+t.y.toFixed(8)||e.x-t.x),l=a[0].index,l?kt(e,l):e}function Ct(e,{removeFinalLineto:t=!0,autoClose:l=!0}={}){let a=[],r=e.length,n={x:+e[0].values[0].toFixed(8),y:+e[0].values[1].toFixed(8)},s="z"===e[r-1].type.toLowerCase(),i=e.filter(e=>"L"===e.type),o=e[s?r-2:r-1],u=o.type,h=o.values.slice(-2).map(e=>+e.toFixed(8)),p=h[0]===n.x&&h[1]===n.y;!s&&l&&p&&(e.push({type:"Z",values:[]}),s=!0,r++);let c="L"!==e[1].type&&(!p||"L"===o.type);if(c=!1,!s)return e;let y=0;{let t=[];for(let l=0;l<r;l++){let a=e[l],{type:r,values:n}=a;if(n.length){let a=n.slice(-2),s=e[l-1]&&"L"===e[l-1].type,i=e[l+1]&&"L"===e[l+1].type,o=e[l-1]?e[l-1].type.toUpperCase():null,u=e[l+1]?e[l+1].type.toUpperCase():null,h={type:r,x:a[0],y:a[1],dist:0,index:0,prevL:s,nextL:i,prevCom:o,nextCom:u};h.index=l,t.push(h)}}if(i.length){let e=t.filter(e=>"L"!==e.type&&"M"!==e.type&&e.prevCom&&"L"===e.prevCom||"M"===e.prevCom&&"L"===u).sort((e,t)=>e.y-t.y||e.x-t.x)[0];y=e?e.index-1:0}else t=t.sort((e,t)=>+e.y.toFixed(8)-+t.y.toFixed(8)||e.x-t.x),y=t[0].index;e=y?kt(e,y):e}return n={x:+e[0].values[0].toFixed(8),y:+e[0].values[1].toFixed(8)},r=e.length,o=e[r-2],u=o.type,h=o.values.slice(-2).map(e=>+e.toFixed(8)),p="L"===u&&h[0]===n.x&&h[1]===n.y,t&&p&&e.splice(r-2,1),a.push(...e),a}function kt(e,t){let l=0,a="z"===e[e.length-1].type.toLowerCase();if(!a||t<1||e.length<3)return e;let r=a?1:0;!function(e){let t=e.length,l="z"===e[t-1].type.toLowerCase(),a=e[0],[r,n]=[a.values[0],a.values[1]].map(e=>+e.toFixed(8)),s=l?e[t-2]:e[t-1],i=s.values.length,[o,u]=[s.values[i-2],s.values[i-1]].map(e=>+e.toFixed(8));!l||r==o&&n==u||(e.pop(),e.push({type:"L",values:[r,n]},{type:"Z",values:[]}))}(e),l=t+1<e.length-1?t+1:e.length-1-r;let n,s,i=e.slice(l),o=e.slice(0,l);return o.shift(),n=o[o.length-1].values||[],s=[n[n.length-2],n[n.length-1]],r&&(i.pop(),o.push({type:"Z",values:[]})),e=[{type:"M",values:s},...i,...o]}function St(e,{arcToCubic:t=!1,quadraticToCubic:l=!1,toClockwise:a=!1,returnD:r=!1}={}){const n=(e,t)=>{let l=[],a=[];if("A"!==e){for(let e=0;e<t.length;e+=2)l.push([t[e],t[e+1]]);a=l.pop(),l.reverse()}else{let e=0==t[4]?1:0;l=[t[0],t[1],t[2],t[3],e],a=[t[5],t[6]]}return{controlPoints:l,endPoints:a}};let s=[],i="z"===e[e.length-1].type.toLowerCase();i&&(e=(e=>{let t="z"===e[e.length-1].type.toLowerCase(),l=e[0],[a,r]=[l.values[0],l.values[1]],n=t?e[e.length-2]:e[e.length-1],[s,i]=[n.values[n.values.length-2],n.values[n.values.length-1]];return!t||a==s&&r==i||(e.pop(),e.push({type:"L",values:[a,r]},{type:"Z",values:[]})),e})(e),e.pop());let o=e[e.length-1].values,u=o.length,h=i?e[0]:{type:"M",values:[o[u-2],o[u-1]]};s.push(h),e.reverse();for(let t=1;t<e.length;t++){let l=e[t],a=l.type,r=l.values,i=e[t-1],o=i.type,u=[];u=[n(o,i.values).controlPoints,n(a,r).endPoints].flat(),s.push({type:o,values:u.flat()})}return i&&s.push({type:"z",values:[]}),s}function Et(e,{threshold:t=null,tolerance:l=1}={}){if(!t){let l=function(e){let t=1/0,l=-1/0,a=1/0,r=-1/0;const n=e=>{e.x<t&&(t=e.x),e.x>l&&(l=e.x),e.y<a&&(a=e.y),e.y>r&&(r=e.y)};for(let t=0;t<e.length;t++){let l=e[t],{type:a,values:r}=l,s=r.length,i=(e[t-1]?e[t-1]:e[t]).values,o=i.length;if(s){let e={x:i[o-2],y:i[o-1]},t={x:r[s-2],y:r[s-1]};if(n(t),"C"===a||"Q"===a){let l={x:r[0],y:r[1]},s="C"===a?{x:r[2],y:r[3]}:l,i="C"===a?[e,l,s,t]:[e,l,t];re(i).forEach(e=>{let t=Y(i,e);n(t)})}else"A"===a&&ne(e,r).forEach(e=>{n(e)})}}return{x:t,y:a,width:l-t,height:r-a}}(e);t=.05*(l.width+l.height)}let a=e.length;for(let r=0;r<a;r++){let a=e[r],{type:n,values:s,extreme:i,corner:o=!1,dimA:u,p0:h,p:p}=a,c=e[r+1]?e[r+1]:null,y=e[r+2]?e[r+2]:null,f=(c?ce(p,c.p):1/0)<t,x=(y?ce(y.p,c.p):1/0)<1*t;if(c&&y&&"C"===n&&"C"===c.type&&i&&y.extreme&&(x||f)){let a=Xe(c,y,t,l,!1);if(1===a.length){a=a[0],e[r+1]=null,e[r+2].values=[a.cp1.x,a.cp1.y,a.cp2.x,a.cp2.y,a.p.x,a.p.y],e[r+2].cp1=a.cp1,e[r+2].cp2=a.cp2,e[r+2].p0=a.p0,e[r+2].p=a.p,e[r+2].extreme=a.extreme,r++;continue}}if(c&&"C"===n&&"C"===c.type&&i&&f){let e=Ze([a.p0,a.p,c.p]),t=Ze([a.p0,a.cp1,a.cp2,a.p]);if(e<0&&t>0||e>0&&t<0)continue}}a=(e=e.filter(Boolean)).length;let r="z"===e[a-1].type.toLowerCase()?a-2:a-1,n=e[r],s=e[r-1]||null,i={x:e[0].values[0],y:e[0].values[1]},o=n.values.slice(-2),u=+o[0].toFixed(8)===+i.x.toFixed(8)&&+o[1].toFixed(8)===+i.y.toFixed(8),h="C"===e[1].type&&e[1].extreme?e[1]:null,p=ce(n.p0,n.p)<t;if(s&&"C"===s.type&&p&&u&&h){let a=Xe(s,n,t,l,!1);1===a.length&&(e[r-1]=a[0],e[r]=null,e=e.filter(Boolean))}return e}function Pt(e,{toObject:t=!0,toArray:l=!1,flatten:a=!1}={}){if("string"==typeof e&&!isNaN(e[0]))return e=Lt(e.split(/,| /).filter(Boolean).map(Number));a&&(e=e.flat(2));let r=l?Dt(e):function(e){if(void 0!==e[0].x&&void 0!==e[0].y)return e;let t=[];if(Array.isArray(e[0])&&void 0!==e[0][0].x&&void 0!==e[0][0].y)return e;if(Array.isArray(e[0][0])&&2===e[0][0].length)return e.forEach(e=>{t.push(e.map(e=>({x:e[0],y:e[1]})))}),t;if(e.length>3)return e=Lt(e);return e.map(e=>({x:e[0],y:e[1]}))}(e);return r}function Dt(e){if(!Array.isArray(e[0][0])&&2===e[0].length)return e;let t=[];return Array.isArray(e[0][0])&&2===e[0][0].length?(e.forEach(e=>{t.push(e.map(e=>[e.x,e.y]))}),t):(t=Array.from(e).map(e=>[e.x,e.y]),t)}function Lt(e){let t=[];if(2===e[0].length)for(let l=0,a=e.length;l<a;l++){let a=e[l];t.push({x:a[0],y:a[1]})}else for(let l=1,a=e.length;l<a;l+=2)t.push({x:e[l-1],y:e[l]});return t}function $t(e,{fontSize:t=16,removeNameSpaced:l=!0,autoRoundValues:a=!1,minifyRgbColors:r=!1,removeInvalid:n=!0,allowDataAtts:s=!0,allowAriaAtts:i=!0,removeDefaults:o=!0,cleanUpStrokes:u=!0,normalizeTransforms:h=!0,removeIds:p=!1,removeClassNames:c=!1,include:y=[],exclude:f=[],width:x=0,height:m=0,stylesheetProps:d={}}={}){let g=e.nodeName.toLowerCase(),v=function(e){let t={},l=[...e.attributes].map(e=>e.name),a=l.length;if(!a)return t;for(let r=0;r<a;r++){let a=l[r],n=e.getAttribute(a);if("transform"===a){let e=[],t=n.split(/(\w+)\(([^)]+)\)/).map(e=>e.trim()).filter(Boolean);for(let l=1;l<t.length;l+=2){let a=t[l-1],r=t[l],n=r.split(/,| /).map(e=>Fe(e.trim())).filter(Boolean);n.length||e.push(`${a}(${r})`)}n=e.join(" ")}t[a]=n.trim()}return t}(e),b=function(e){let t=e.getAttribute("style"),l=t?function(e=""){let t={};if(!e)return t;let l=e.split(";").filter(Boolean).map(e=>e.trim()),a=l.length;if(!a)return t;for(let e=0;a&&e<a;e++){let a=l[e],[r,n]=a.split(":").filter(Boolean);t[r]=n}return t}(t):{};return l}(e),A=e.cssRules||[],M={};A.forEach(e=>{for(let t in d[e]){let l=d[e][t];if(l.startsWith("var(")){let e=l.replace(/[var\(|\)]/g,"").trim();d[":root"]&&(l=`var(${e}, ${d[":root"][e]})`)}M[t]=l}});let w={...v,...M,...b};delete w.style,delete w.class,delete w.id,f.push("style","class","id");let C=["style"];if(n||o||l){let e=Nt(g,w,{allowDataAtts:s,allowAriaAtts:i,removeIds:p,removeClassNames:c,removeDefaults:o,removeNameSpaced:l,exclude:f,cleanUpStrokes:u,include:[...["scale","translate","rotate"],...y],cleanUpStrokes:!1});w=e.propsFiltered,C.push(...e.remove)}let k=[];for(let e in w){let t=w[e];if("d"===e||e.startsWith("data-"))continue;let l={prop:e,values:[]};if(r&&$e.includes(e)){let e=be(t);if("rgba"===e.mode||"rgb"===e.mode){t=Ae(e)}}if("transform"===e){let e=[],l=t.split(/(\w+)\(([^)]+)\)/).map(e=>e.trim()).filter(Boolean);for(let t=1;t<l.length;t+=2){let a=l[t-1],r=De.includes(a),n=Le.includes(a);r&&(a=a.replace("X","")),n&&(a=a.replace("Y",""));let s=l[t].split(/,| /).filter(Boolean),i={fn:a,values:[]};for(let e=0;e<s.length;e++){let t=qt(s[e]);i.values.push(...t)}let o=a.startsWith("scale")?1:0,u=a.startsWith("scale")?1:0;r&&(i.values=[i.values[0],{value:o,unit:"",numeric:!0}]),n&&(i.values=[{value:u,unit:"",numeric:!0},i.values[0]]),e.push(i)}e.length&&k.push({prop:"transforms",values:e})}else l.values=qt(t);l.values.length&&k.push(l)}let S={transformArr:[],matrix:null,transComponents:null},E=[],P=!1;for(let e=0;e<k.length;e++){let l=k[e],{prop:r,values:n}=l,s=[],i=0,o=0,h="",p="";if("transforms"!==r){if(!u||"stroke-dasharray"!==r&&"stroke-dashoffset"!==r)if("transform-origin"===r)n.forEach((e,t)=>{let l=e.value;"left"===l?n[t].value=0:"right"===l?n[t].value=x:"top"===l?n[t].value=0:"bottom"===l?n[t].value=m:"center"===l&&(n[t].value="50%")}),i=n[0].value,o=n[1]?n[1].value:i,h=n[0].unit,p=n[1]?n[1].unit:h,i=Be(i,{unit:h,width:x,height:m,isHorizontal:!0,fontSize:t}),o=Be(o,{unit:p,width:x,height:m,isVertical:!0,fontSize:t}),E.push(i,o);else for(let e=0;e<n.length;e++){let l=n[e],i=l.unit,o=l.value,u=l.numeric,h=Ee.includes(r),p=Pe.includes(r);i&&("scale"===r&&"%"===i?o*=.01:("r"===r&&(P=!0),o=Be(l.value,{unit:i,width:x,height:m,isHorizontal:h,isVertical:p,normalizedDiagonal:P,fontSize:t}),a&&u&&(o=Ce(o)))),s.push(o)}else{P=!0;for(let e=0;e<n.length;e++){let l=Be(n[e].value,{unit:n[e].unit,width:x,height:m,normalizedDiagonal:P,fontSize:t});s.push(l)}}s.length&&(S[r]=s)}else{let e=n||[],l=e.length,a=[];for(let r=0;l&&r<l;r++){let{fn:l,values:n}=e[r],s=[],i="",o="",u=[],h=0,p=0,c={};if("scale"!==l&&"translate"!==l||(h=n[0].value,p=n[1]?n[1].value:h,i=n[0].unit,o=n[1]?n[1].unit:i,"scale"===l?(h="%"===i?.01*h:h,p="%"===o?.01*p:p):(h=Be(h,{unit:i,width:x,height:m,isHorizontal:!0,fontSize:t}),p=Be(p,{unit:o,width:x,height:m,isVertical:!0,fontSize:t})),s.push(h,p),c[l]=s,u.push(c)),"matrix"===l&&(s=n.map(e=>e.value),c[l]=s,u.push(c)),"skew"===l&&(h=n[0].value,i=n[0].unit,p=n[1].value,o=n[1].unit,h=Be(h,{unit:i,isHorizontal:!0,fontSize:t}),p=Be(p,{unit:o,isVertical:!0,fontSize:t}),h=h>360?h%360:h,p=p>360?p%360:p,s=[h,p],c[l]=s,u.push(c)),"rotate"===l){let e=n[0].value;e=Be(e,{unit:n[0].unit});let t=[];if(3===n.length){let e=n[1].value,l=n[2].value;t.push({translate:[e,l]},{translate:[-e,-l]})}c[l]=[e],t.length?u.push(t[0],c,t[1]):u.push(c)}a.push(...u)}S.transformArr=a}}let D=void 0!==S.translate?{translate:S.translate}:null,L=void 0!==S.scale?{scale:S.scale}:null,$=[D,void 0!==S.rotate?{rotate:S.rotate}:null,L].filter(Boolean);$.length&&(h&&C.push("translate","scale","rotate"),S.transformArr=[...$,...S.transformArr]),E.length&&void 0!==S.transformArr&&(S.transformArr=[{translate:[E[0],E[1]]},...S.transformArr,{translate:[-E[0],-E[1]]}],h&&C.push("transform-origin"));let{transformArr:T=[]}=S,N=[],q=T.length;if(q)for(let e=0;q&&e<q;e++){let t=T[e],l=Object.values(t).flat(),a=Object.keys(t)[0];"skew"===a?(l[0]&&N.push(`skewX(${l[0]})`),l[1]&&N.push(`skewY(${l[1]})`)):N.push(`${a}(${l.join(" ")})`)}return S.remove=C,S.type=g,S}function Tt(e={},t=[]){if(void 0===e.transformArr||!t.length)return;let l=function(e=[]){const t=(e,t)=>({a:e.a*t.a+e.c*t.b,b:e.b*t.a+e.d*t.b,c:e.a*t.c+e.c*t.d,d:e.b*t.c+e.d*t.d,e:e.a*t.e+e.c*t.f+e.e,f:e.b*t.e+e.d*t.f+e.f}),l=(e,t)=>({a:1,b:0,c:0,d:1,e:e,f:t}),a=(e,t)=>({a:e,b:0,c:0,d:t,e:0,f:0}),r=(e,t)=>{let[l,a=0]=e.map(e=>e*C),r={};if("rot"===t){let e=Math.cos(l),t=Math.sin(l);r={a:e,b:t,c:-t,d:e,e:0,f:0}}else if("skew"===t){let e=Math.tan(l);r={a:1,b:Math.tan(a),c:e,d:1,e:0,f:0}}return r};let n={a:1,b:0,c:0,d:1,e:0,f:0};for(let s=0;s<e.length;s++){let i=e[s],o=Object.keys(i)[0],u=i[o],[h,p]=u;switch(o){case"matrix":let e=["a","b","c","d","e","f"],s=Object.fromEntries(e.map((e,t)=>[e,u[t]]));n=t(n,s);break;case"translate":n=t(n,l(h,p));break;case"skew":n=t(n,r([h,p],"skew"));break;case"rotate":n=t(n,r([h],"rot"));break;case"scale":n=t(n,a(h,p));break;default:throw new Error(`Unknown transformation type: ${o}`)}}return n}(t=t.length?t:e.transformArr);e.matrix=l;let a=function(e,t=4){let{a:l,b:a,c:r,d:n,e:s,f:i}=e;Array.isArray(e)&&([l,a,r,n,s,i]=e);let o=Math.atan2(a,l),u=Math.pow(l,2)+Math.pow(a,2),h=Math.sqrt(u),p=(l*n-r*a)/h,c=Math.atan2(l*r+a*n,u)/(Math.PI/180),y={translateX:s||0,translateY:i||0,rotate:o?o/(Math.PI/180):0,scaleX:h,scaleY:p,skewX:c,skewY:0},f=[],x=[];for(let e in y){y[e]=+parseFloat(y[e]).toFixed(t);let l=y[e],a="";"rotate"!=e&&"skewX"!=e||(a="deg"),-1!=e.indexOf("translate")&&(a="px");let r=["scaleX","scaleY","translateX","translateY"];0!==l&&f.push(`${e}(${l}${a})`),-1==r.indexOf(e)&&0!==l?x.push(`${e}(${l})`):"scaleX"==e?x.push(`scale(${+h.toFixed(t)} ${+p.toFixed(t)})`):"translateX"==e&&x.push(`translate(${y.translateX} ${y.translateY})`)}return y.cssTransform=f.join(" "),y.svgTransform=x.join(" "),y.matrix=[l,a,r,n,s,i].map(e=>we(e,t)),y.matrixAtt=`matrix(${y.matrix.join(" ")})`,y}(l,3);return e.transComponents=a,e}function Nt(e="",t={},{removeInvalid:l=!0,removeDefaults:a=!0,allowDataAtts:r=!0,allowMeta:n=!1,allowAriaAtts:s=!1,cleanUpStrokes:i=!0,include:o=[],removeIds:u=!1,removeClassNames:h=!1,exclude:p=[]}={}){let c={},y=[];u||o.push("id"),h||o.push("class");let f=!!i&&(void 0===t.stroke||"none"===t.stroke[0]);for(let i in t){let u=t[i],h=Array.isArray(u)?u[0]:u,p=!!l&&(!!Ie.atts[i]&&Ie.atts[i].includes(e));"transform"===i&&"matrix(1 0 0 1 0 0)"===h&&(p=!1);let x=!!i.startsWith("data-"),m="title"===i,d=i.startsWith("aria-");if(r&&x||s&&d||n&&m)continue;let g=!!a&&(!!Ie.defaults[i]&&(void 0!==Ie.defaults[i]&&Ie.defaults[i].includes(h))),v=f&&ze.includes(i);(g||x||m||d||v)&&(p=!1),o.includes(i)&&(p=!0),p?c[i]=t[i]:y.push(i)}return{propsFiltered:c,remove:y}}function qt(e=""){let t=(e=e.replace("!important","")).includes("'")||e.includes("(")||e.includes(")")?[e]:e.split(/,| /).filter(Boolean);for(let e=0;e<t.length;e++){let l=t[e],a={value:null,unit:"",numeric:!1},r=Oe(l);if(r){if(r){let e=Fe(l),t=parseFloat(l);a.value=t,a.unit=e,a.numeric=!0}}else a.value=l;t[e]=a}return t}function jt(e){if(Oe(e))return e;let t=e.split("-").map(e=>e.replace(/a|e|i|o|u/g,"")).join("-");return t=function(e){return e.split(/[-| ]/).map((e,t)=>t?e.charAt(0).toUpperCase()+e.slice(1).toLowerCase():e.toLowerCase()).join("")}(t),t}function zt(e,{omitNamespace:t=!1,removeComments:l=!0,format:a=0}={}){let r="";return a<2?(r=(new XMLSerializer).serializeToString(e),r=function(e,{removeComments:t=!0}={}){t&&(e=e.replace(/<!--[\s\S]*?-->/g,""));return e=e.replace(/>\s+</g,"><").trim().replace(/\s+([=])\s+/g,"$1").replace(/\s+(?=[^<]*>)/g," ").replace(/\s{2,}/g," ").replace(/\s*=\s*/g,"="),e}(r,{removeComments:l})):r=function(e,{indentSize:t=2}={}){"string"==typeof e&&(e=(new DOMParser).parseFromString(e,"image/svg+xml").querySelector("svg"));return It(e,0,t)}(e),t&&(r=r.replaceAll('xmlns="http://www.w3.org/2000/svg"',"")),l&&(r=r.replace(/(<!--.*?-->)|(<!--[\S\s]+?-->)|(<!--[\S\s]*?$)/g,"")),r}function It(e,t,l){let a=" ".repeat(t*l);if(e.nodeType===Node.TEXT_NODE){let t=e.textContent.trim();return t||""}if(e.nodeType===Node.ELEMENT_NODE){let r=e.children.length>0,n=e.textContent.trim().length>0&&0===e.children.length,s=`${a}<${e.nodeName}`;for(let t=0;t<e.attributes.length;t++){let l=e.attributes[t];s+=` ${l.name}="${l.value}"`}if(!r&&!n)return s+" />\n";if(s+=">",r){s+="\n";for(let a of e.children)s+=It(a,t+1,l);s+=`${a}</${e.nodeName}>\n`}else n?(s+=e.textContent.trim(),s+=`</${e.nodeName}>\n`):s+=`</${e.nodeName}>\n`;return s}return""}function Bt(e){e.querySelectorAll("*").forEach(e=>{e.nodeName.toLowerCase();let t=e.getAttribute("style")||"",l=!!t&&t.trim().includes("display:none");(e.getAttribute("display")&&"none"===e.getAttribute("display")||l)&&e.remove()})}function Ft(e,{removeElements:t=[],removeNameSpaced:l=!0}={}){t.push("script");let a=e.querySelectorAll("*"),r=!t.includes("metadata");a.forEach(e=>{let a=e.nodeName;!(r&&e.closest("metadata"))&&(l&&a.includes(":")||t.includes(a))&&e.remove()})}function Ot(e,t=[]){t.forEach(t=>{e.removeAttribute(t)})}function Rt(e,t=[]){if(t.length){let l=t.map(e=>`[${e}]`).join(", ").replaceAll(":","\\:");e.querySelectorAll(l).forEach(e=>{t.forEach(t=>{e.removeAttribute(t)})})}}function Qt(e,{removeIds:t=!1,removeClassNames:l=!1,removeDimensions:a=!1,stylesToAttributes:r=!1,allowMeta:n=!1,allowAriaAtts:s=!1,allowDataAtts:i=!1}={}){let o=new Set(["viewBox","xmlns","width","height"]);t||o.add("id"),l||o.add("class"),a&&(o.delete("width"),o.delete("height")),o=Array.from(o),r||o.push("fill","stroke","stroke-width","stroke-linecap","stroke-linejoin","font-size","font-family","font-style","style"),function(e,{allowed:t=["viewBox","xmlns","width","height","id","class"],allowAriaAtts:l=!0,allowDataAtts:a=!0,allowMeta:r=!1}={}){[...e.attributes].map(e=>e.name).forEach(n=>{let s=r&&"title"===n,i=l&&n.startsWith("aria-"),o=a&&n.startsWith("data-");t.includes(n)||i||o||s||e.removeAttribute(n)})}(e,{allowed:o,allowMeta:n,allowAriaAtts:s,allowDataAtts:i})}function Vt(e,{styleProps:t={}}={}){let l=e.getAttribute("pathLength")?+e.getAttribute("pathLength"):0;if(l&&(t["stroke-dasharray"]||t["stroke-dashoffset"])){let a=getElementLength(e,{pathLength:l,props:t});(t=scaleProps(t,{props:["stroke-dasharray","stroke-dashoffset"],scale:a/l}))["stroke-dasharray"],t["stroke-dashoffset"],delete t.pathLength,t.remove.push("pathLength"),e.removeAttribute("pathLength")}return t}function Gt(e,{parent:t=null,removeUnused:l=!0,flatten:a=!0}={}){let r=typeof e;if("string"===r&&(l=!1),"string"!==r)if("style"===e.nodeName)e=e.innerHTML;else{if("svg"!==e.nodeName)return console.warn("invalid CSS input"),{};{let l=e.querySelector("style");if(!l)return{};t=e,e=l.innerHTML}}if(!(e=e.trim()))return{};function n(e){let t={},l=0,a=e.length,r=!1;for(;l<a;){for(;l<a&&/\s/.test(e[l]);)l++;if(l>=a)break;let n=l,s=!1;for(;n<a;){if("{"===e[n]){s=!0;break}if(":"===e[n])break;if(";"===e[n])break;n++}if(s){r=!0;let t=0;for(;l<a&&("{"===e[l]&&t++,"}"===e[l]&&t--,l++,0!==t););}else{let r="",n=!1,s=!1,i="";for(;l<a;){let t=e[l],a=e[l+1];if("u"===t&&"r"===a&&"url("===e.slice(l,l+4)&&(n=!0),'"'!==t&&"'"!==t||0!==l&&"\\"===e[l-1]||(s?t===i&&(s=!1,i=""):(s=!0,i=t)),n&&")"===t&&!s&&(n=!1),";"===t&&!n&&!s){l++;break}r+=t,l++}if(r=r.trim(),r){let e=r.indexOf(":");if(e>-1){let l=r.substring(0,e).trim(),a=r.substring(e+1).trim();l&&a&&(t[l]=a)}}}}return{declarations:t,hasNested:r}}let s=function e(t,l=""){let a=0,r={},s=t.length;for(;a<s;){for(;/\s/.test(t[a]);)a++;if(a>=s)break;let i=a,o=!1;for(;i<s&&";"!==t[i];){if("{"===t[i]){o=!0;break}i++}if(!o){a=i+1;continue}let u="";for(;a<s&&"{"!==t[a];)u+=t[a],a++;if(u=u.trim(),!u||"{"!==t[a])continue;a++;let h="",p=1;for(;a<s&&p>0;)"{"===t[a]?p++:"}"===t[a]&&p--,p>0&&(h+=t[a]),a++;let c=u;l&&(c=u.includes("&")?u.replace(/&/g,l):l+" "+u),c=c.replace(/\s+/g," ").trim();let{declarations:y,hasNested:f}=n(h);if(Object.keys(y).length)if(r[c])for(let e in y){let t=r[c][e],l=y[e],a=t&&t.includes("!important"),n=l.includes("!important");a&&!n||(r[c][e]=l)}else r[c]=y;f&&e(h,c)}return r}(e=e.replace(/\/\*[\s\S]*?\*\//g,""));t&&l&&(s=function(e=null,t={}){return Object.keys(t).forEach(l=>{e.querySelector(l)||":root"===l||delete t[l]}),t}(t,s)),a&&(s=function(e){for(let t in e){let l=t.split(/,/).map(e=>e.trim());e[t],l.length>1&&(l.forEach(t=>{let l=e[t];for(let a in l){let r=l[a];r.includes("!important")||(e[t][a]=r)}}),delete e[t])}return e}(s));let i={},o={};for(let e in s){e.startsWith("#")&&(i[e]=s[e],delete s[e]);for(let t in s[e]){let l=s[e][t];l.includes("!important")&&(o[e]||(o[e]={}),o[e][t]=l)}}return s={...s,...i,...o},s}function Ht(e,{styleProps:t={}}={}){let{remove:l,matrix:a,transComponents:r}=t;e.nodeName.toLowerCase();if(!a)return t;let{rotate:n,scaleX:s,scaleY:i,skewX:o,translateX:u,translateY:h}=r,p=0!==n||0!==o||s!==i;return p=!0,e.setAttribute("transform",r.matrixAtt),t}function Ut(e,{removeHidden:t=!0,stylesToAttributes:l=!0,attributesToGroup:a=!1,removePrologue:r=!0,removeIds:n=!1,removeClassNames:s=!1,removeDimensions:i=!1,fixHref:o=!1,legacyHref:u=!1,cleanupDefs:h=!0,cleanupClip:p=!0,addViewBox:c=!1,addDimensions:y=!1,minifyRgbColors:f=!1,normalizeTransforms:x=!0,autoRoundValues:m=!0,unGroup:d=!1,mergePaths:g=!1,removeOffCanvas:v=!0,cleanupSVGAtts:b=!0,removeNameSpaced:A=!0,removeNameSpacedAtts:M=!0,convertPathLength:w=!1,allowMeta:C=!1,allowDataAtts:S=!0,allowAriaAtts:E=!0,shapeConvert:P=!1,convertShapes:D=[],removeElements:L=[],removeSVGAttributes:$=[],removeElAttributes:T=[],convertTransforms:N=!1,removeDefaults:q=!0,cleanUpStrokes:j=!0,decimals:z=-1,excludedEls:I=[]}={}){(d||N||f||a)&&(l=!0),l&&(j=!0),o&&(e=e.replaceAll("xlink:href=","href="));let B=(new DOMParser).parseFromString(e,"text/html").querySelector("svg"),F=mt(B),{x:O,y:R,width:Q,height:V}=F,G=[];c&&function(e,{x:t=0,y:l=0,width:a=0,height:r=0}={}){if(e.hasAttribute("viewBox"))return;a&&r||({x:t,y:l,width:a,height:r}=mt(e));e.setAttribute("viewBox",[t,l,a,r].join(" "))}(B,{x:O,y:R,width:Q,height:V}),y&&(B.setAttribute("width",Q),B.setAttribute("height",V)),h&&function(e,{x:t=0,y:l=0,width:a=0,height:r=0,cleanupClip:n=!0}={}){let s=e.querySelectorAll("defs"),i=e.querySelectorAll("symbol, pattern, linearGradient, radialGradient, clipPath, mask, marker, filter");if(!s.length&&!i.length)return;s.forEach(t=>{[...t.children].length?e.insertBefore(t,e.children[0]):t.remove()});let o=new Set([]);i.forEach(e=>{o.add(e.id)}),Array.from(o).forEach(t=>{e.querySelectorAll(`[href="#${t}"], [xlink\\:href="#${t}"], [clip-path="url(#${t})"], [mask="url(#${t})"], [fill="url(#${t})"], [stroke="url(#${t})"]`).length||e.getElementById(t).remove()})}(B,{x:O,y:R,width:Q,height:V,cleanupClip:p}),v&&function(e,{x:t=0,y:l=0,width:a=0,height:r=0}={}){let n=[...e.querySelectorAll("path, polygon, polyline, line, rect, circle, ellipse, text")];n=n.filter(e=>!(e.parentNode.closest("defs")||e.parentNode.closest("symbol")||e.parentNode.closest("clipPath")||e.parentNode.closest("mask")||e.parentNode.closest("pattern")));let s={x:t,y:l,width:a,height:r};s.right=t+a,s.bottom=l+r,n.forEach(e=>{let t=function(e){let t=e.nodeName.toLowerCase(),l=Re(e),a={x:0,y:0,width:0,height:0},r=[];switch(t){case"path":a=Qe(He(st(l.d)));break;case"rect":a={x:l.x||0,y:l.y||0,width:l.width,height:l.height};break;case"circle":let e=2*l.r;a={x:l.cx-l.r,y:l.cy-l.r,width:e,height:e};break;case"ellipse":a={x:l.cx-l.rx,y:l.cy-l.ry,width:2*l.rx,height:2*l.ry};break;case"line":r=[{x:l.x1,y:l.y1},{x:l.x2,y:l.y2}],a=Qe(r);break;case"polyline":case"polygon":r=Pt(l.points),a=Qe(r)}return a}(e);(t.right<s.x||t.bottom<s.y||t.x>s.right||t.y>t.bottom)&&e.remove()})}(B,{x:O,y:R,width:Q,height:V});let H={width:Q,height:V,normalizeTransforms:x,removeDefaults:!1,cleanUpStrokes:!1,allowMeta:C,allowDataAtts:S,allowAriaAtts:E,autoRoundValues:m,removeIds:n,removeClassNames:s,minifyRgbColors:f,stylesheetProps:{},exclude:[]},U=$t(B,H),Z=B.querySelector("style"),W={};if(Z){W=Gt(Z,{parent:B});for(let e in W){B.querySelectorAll(`${e}`).forEach(t=>{if(t.cssRules||(t.cssRules=[]),t.cssRules.push(e),l){let l=e.substring(1);t.classList.remove(l)}})}l&&Z.remove()}l&&B.removeAttribute("style"),H.stylesheetProps=W,H.fontSize=U["font-size"]?U["font-size"][0]:16;let X=B.querySelectorAll("g");X.forEach(e=>{let t=$t(e,H);e.querySelectorAll(`${qe.join(", ")}`).forEach(e=>{void 0===e.parentStyleProps&&(e.parentStyleProps=[]),e.parentStyleProps.push(t)})});let J=B.querySelectorAll(`${qe.join(", ")}`);for(let e=0;e<J.length;e++){let t=J[e],r=t.nodeName.toLowerCase(),o=$t(t,H),u={};w&&(o=Vt(t,{styleProps:o}),G=[...new Set([...G,...o.remove])]);let{parentStyleProps:h=[]}=t,p={},c=[];if(h.forEach(e=>{let{transformArr:t=[]}=e;c.push(...t),p={...p,...e}}),c=[...c,...o.transformArr],o.transformArr=c,U.class&&delete U.class,U.id&&delete U.id,o={...U,...p,...o},Tt(o,c),G=[...new Set([...G,...o.remove])],C||L.push("meta","metadata","desc","title"),s&&($.push("class"),T.push("class")),n&&($.push("id"),T.push("id")),Bt(B),Ft(B,{removeElements:L,removeNameSpaced:A}),Ot(B,$),Rt(B,T),b&&Qt(B,{removeIds:n,removeClassNames:s,removeDimensions:i,stylesToAttributes:l,allowMeta:C,allowAriaAtts:E,allowDataAtts:S}),l){x&&(o=Ht(t,{styleProps:o}),G=[...new Set([...G,...o.remove])]),u=Nt(r,o,{removeDefaults:!0,cleanUpStrokes:j,allowMeta:C,allowAriaAtts:E,allowDataAtts:S,removeIds:n}),G=[...new Set([...G,...u.remove])];for(let e in u.propsFiltered){let l=o[e],a=l.length?l.join(" "):l[0];t.setAttribute(e,a)}for(let e=0;e<G.length;e++){let l=G[e];t.removeAttribute(l)}}if(N&&(P="toPaths",D=["path","rect","ellipse","circle","line","polygon","polyline"]),"toPaths"===P){let{matrix:e=null,transComponents:l=null}=o;if(e&&l&&["stroke-width","stroke-dasharray"].forEach(e=>{let a=t.getAttribute(e),r=a?a.split(" ").filter(Boolean).map(Number).map(e=>e*l.scaleX):[];r.length&&t.setAttribute(e,r.join(" "))}),e?Ne.includes(r):Se.includes(r)){let l=gt(t,{width:Q,height:V,convertShapes:D,matrix:e});t.replaceWith(l),r="path",t=l}}else if("toShapes"===P){B.querySelectorAll("path").forEach(e=>{let t=vt(e,{convertShapes:D});e.replaceWith(t),e=t})}if(g||a){let e={allowMeta:C,allowAriaAtts:E,removeIds:n,removeClassNames:s,allowDataAtts:S};g&&(e.removeIds=!0,e.removeClassNames=!0,e.allowAriaAtts=!1,e.allowMeta=!1),u=Nt(r,o,e).propsFiltered;for(let e in u){if(Te.includes(e))continue;let l=u[e],a=l.length?l.join(" "):l[0];if("class"!==e&&"id"!==e){let l=`${jt(e)}-${jt(a)}`;t.styleSet||(t.styleSet=new Set),l&&t.styleSet.add(l)}}}}return d?function(e){e.forEach((e,t)=>{[...e.children].forEach(t=>{e.parentNode.insertBefore(t,e)}),e.remove()})}(X):l&&X.forEach(e=>{!function(e,t=[],l=[]){[...e.attributes].map(e=>e.name).forEach(a=>{t.includes(a)&&!l.includes(a)&&e.removeAttribute(a)})}(e,["style","transform"])}),a&&function(e){let t=e.querySelectorAll(qe.join(", ")),l=t.length;if(1===l)return;let a=t[0]||null,r=void 0!==a.styleSet?[...a.styleSet].join("_"):"",n={},s=[];if(l){let i=[[a]],o=0,u=a;for(let e=0;e<l;e++){let a=t[e],r=Re(a);for(let e in r){let t=`${e}_${r[e]}`;n[t]||(n[t]=[]),n[t].push(a),n[t].length===l&&s.push(e)}}if(s.length){let t=Re(a);for(let l in t)s.includes(l)&&"transform"!==l&&e.setAttribute(l,t[l])}for(let e=1;e<l;e++){let l=t[e],a=void 0!==l.styleSet?[...l.styleSet]:[],n=a.length?a.join("_"):"";n===r&&u.nextElementSibling===l?i[o].push(l):(i.push([l]),o++),r=n,u=l}for(let e=0;e<i.length;e++){let t=i[e],l=t[0],a=Re(l),r=l.parentNode.closest("g");if(1!==t.length){(!r||i.length>1)&&(r=document.createElementNS(k,"g"),l.parentNode.insertBefore(r,l),r.append(...t));for(let e in a){let l=a[e],n=["id","class"];Te.includes(e)||n.includes(e)||(s.includes(e)&&"transform"!==e||r.setAttribute(e,l),t.forEach(t=>{t.removeAttribute(e)}))}}}}}(B),g&&function(e){let t=e.querySelectorAll("path"),l=t.length;if(l){let e=t[0],a=e.getAttribute("d"),r=void 0!==e.styleSet?[...e.styleSet].join(" "):"",n=[];for(let s=1;s<l;s++){let l=t[s],i=void 0!==l.styleSet?[...l.styleSet].join(" "):"",o=l.previousElementSibling===e,u=l.getAttribute("d"),h=u.startsWith("M");if(o&&i===r){a+=h?u:nt(u).pathData.map(e=>`${e.type} ${e.values.join(" ")}`).join(" "),e.setAttribute("d",a),n.push(l)}else e=l,a=h?u:nt(u).pathData.map(e=>`${e.type} ${e.values.join(" ")}`).join(" ");r=i}n.forEach(e=>{e.remove()})}}(B),p&&function(e,{x:t=0,y:l=0,width:a=0,height:r=0}={}){let n=e.querySelectorAll("clipPath");if(!n.length)return;a&&r||({x:t,y:l,width:a,height:r}=mt(e));n.forEach(n=>{let s=[...n.children];if(s.length>1)return;let i=s[0],o=i.nodeName.toLowerCase();if("path"===o||"rect"===o){let s={x:0,y:0,width:0,height:0};if("path"===o){let e=st(i.getAttribute("d")),t=Array.from(new Set(e.map(e=>e.type.toLowerCase()))).join("");if(!!/[acqts]/gi.test(t)||e.length>5)return;s=Qe(_(e))}else"rect"===o&&(s={x:+i.getAttribute("x"),y:+i.getAttribute("y"),width:+i.getAttribute("width"),height:+i.getAttribute("height")});if(s.x===t&&s.y===l&&s.width===a&&s.height===r){n.remove(),e.querySelectorAll(`[clip-path="url(#${n.id})"]`).forEach(e=>{e.removeAttribute("clip-path")})}}})}(B,{x:O,y:R,width:Q,height:V}),u&&function(e){e.setAttribute("xmlns:xlink","http://www.w3.org/1999/xlink");let t=e.querySelectorAll("[href]");t.forEach(e=>{let t=e.getAttribute("href");e.setAttribute("xlink:href",t)})}(B),function(e){let t=e.querySelectorAll('[class=""');t.forEach(e=>{e.removeAttribute("class")})}(B),{svg:B,svgElProps:[]}}function Zt(e,{threshold:t=0,tolerance:l=1}={}){let a=e.length,r=[e[0]],n="z"===e[a-1].type.toLowerCase(),s=!!n&&(e[a-1].p.x===e[0].p0.x&&e[a-1].p.y===e[0].p0.y),i=n?2:1,o=e[a-i],u="L"===o.type,h="C"===o.type,p="L"===e[1].type,c="C"===e[1].type,y=n&&c&&(u||s);y&&(e[a-1].values=e[0].values,e[a-1].type="L",u=!0);for(let t=1;t<a;t++){let s=e[t],{type:o}=s,f=e[t+1]?e[t+1]:null;if("L"===o&&f&&"C"===f.type||"C"===o&&f&&"L"===f.type){let y="L"===o?s:null,x=null,m=[],d=0;if(1===t&&c&&u&&(m=[e[1]],y=e[a-1],x=f),!y){r.push(s);continue}n&&h&&p&&t===a-i-1&&(x=e[1],m=[e[a-i]]);for(let l=t+1;l<a;l++){let t=e[l]?e[l]:null,a=e[l-1];if("C"===a.type&&m.push(a),"L"===t.type&&"C"===a.type){x=t;break}d++}if(x){let e=ce(y.p0,y.p),a=ce(x.p0,x.p),n=ce(y.p,x.p0),i=Ze([y.p0,y.p,x.p0,x.p],!1),o=Ze([m[0].p0,m[0].cp1,m[0].cp2,m[0].p],!1),u=i<0&&o>0||i>0&&o<0,h=.5*n*l,p=h<e&&h<a;if(m.length&&!u&&p){let e=Math.abs(o)<.005*pe(m[0].p0,m[0].p)?null:W(y.p0,y.p,x.p,x.p0,!1,!0);if(!e){r.push(s);continue}if(e){let t=Ze([y.p0,y.p,x.p0,x.p],!1),l=Math.abs(t),a=Ze([y.p0,y.p,e,x.p0,x.p],!1),n=Math.abs(a),i=Math.abs(l-n)/l;if(!e||(t<0&&a>0||t>0&&a<0)||i>.5){r.push(s);continue}}let l=.75*ce(Y([y.p,e,x.p0],.5),1===m.length?Y([m[0].p0,m[0].cp1,m[0].cp2,m[0].p],.5):m[0].p);if(h&&l>h&&l>.3*n){r.push(s);continue}{let l={type:"Q",values:[e.x,e.y,x.p0.x,x.p0.y]};l.p0=y.p,l.cp1=e,l.p=x.p0,r.push(y,l),t+=d;continue}}}}y&&t===a-1&&"L"===o||r.push(s)}return(y||n&&"Z"!==r[r.length-1].type)&&r.push({type:"Z",values:[]}),r}function Wt(e){if(e.length<3)return!1;let t=e[0],l=e[Math.floor(e.length/2)],a=e[e.length-1],r=t.x,n=t.y,s=l.x,i=l.y,o=a.x,u=a.y,h=r-s,p=n-i,c=r-o,y=n-u,f=(r*r-s*s+(n*n-i*i))/2,x=(r*r-o*o+(n*n-u*u))/2,m=h*y-p*c;if(Math.abs(m)<1e-10)return console.warn("Points are collinear or numerically unstable"),!1;let d={x:(y*f-p*x)/m,y:(-c*f+h*x)/m},g=he(d,t),v=Z(d,t,a),{deltaAngle:b,startAngle:A,endAngle:M}=v;return{centroid:d,r:g,startAngle:A,endAngle:M,deltaAngle:b}}function Xt(e,{threshold:t=0,tolerance:a=1,toCubic:r=!1,debug:n=!1}={}){let s=e.length,i=[e[0]],o=[];for(let t=1;t<s;t++){let a=e[t],{type:s}=a,u=e[t-1],h=e[t+1]?e[t+1]:null,p=e[t+2]?e[t+2]:null,c=e[t+3]?e[t+3]:null,y=null;"C"===a.type||"Q"===a.type?y=a:!h||"C"!==h.type&&"Q"!==h.type||(y=h);let f,x,m,d,g,v=y?"C"===y.type?[y.p0,y.cp1,y.cp2,y.p]:[y.p0,y.cp1,y.p]:[],b=0,A=0,M=!1,w=!1,C=[];if("L"===u.type&&"L"===s&&y&&"L"===p.type&&c&&("L"===c.type||"Z"===c.type)?(f=[a.p0,a.p],x=[p.p0,p.p],m=a.p0,d=p.p,b=Ze(v,!1),A=Ze([...f,...x],!1),M=b<0&&A>0||b>0&&A<0,M||(g=Y(v,.5),C=[m,g,d],w=!0)):"C"!==s&&"Q"!==s||"L"!==u.type||"C"!==h.type&&"Q"!==h.type||"L"!==p.type||(w=!0,f=[u.p0,u.p],x=[p.p0,p.p],m=u.p,d=p.p0,g=y.p,C=[m,y.p,d]),w){let e=Wt(C);if(e){let s,{centroid:u,r:h,deltaAngle:p,startAngle:c,endAngle:y}=e,f=0,x=p>0?1:0,v=Math.abs(p)>Math.PI?1:0;if(ye(ee(m,u.x,u.y,.5*p),g)<.05*ye(m,d)){if(s=ct({p0:m,p:d,centroid:u,rx:h,ry:h,xAxisRotation:f,sweep:x,largeArc:v,deltaAngle:p,startAngle:c,endAngle:y}),1===s.length){let e=ot(m,s[0].cp1,s[0].cp2,d);"Q"===e.type&&(r=!0),a=e}if(s.length>1&&(r=!1),r||(a.type="A",a.values=[h,h,f,v,x,d.x,d.y]),a.p0=m,a.p=d,a.extreme=!1,a.corner=!1,n){o=r?[{type:"M",values:[m.x,m.y]},...s]:[{type:"M",values:[m.x,m.y]},{type:"A",values:[h,h,f,v,x,d.x,d.y]}];let e=We(o);l(markers,e,"orange","0.5%","0.5")}i.push(a),t++;continue}}}i.push(a)}return i}function Jt(e=[],{threshold:t=0}={}){let l=e.length,a="z"===e[l-1].type.toLowerCase(),r=a?l-2:l-1,n=e[r],s=n.values.slice(-2),i={x:e[0].values[0],y:e[0].values[1]},o=ye(i,{x:s[0],y:s[1]});if(o&&o<t){let l=e[r].values.length;e[r].values[l-2]=i.x,e[r].values[l-1]=i.y;let a=e[1];if("C"===a.type&&"C"===n.type){let l=Math.abs(a.values[0]-n.values[2]),s=Math.abs(a.values[1]-n.values[3]),o=Math.abs(e[1].values[0]-a.values[0]),u=Math.abs(e[1].values[1]-a.values[1]),h=Math.abs(e[1].values[0]-n.values[2]),p=Math.abs(e[1].values[1]-n.values[3]),c=u<t&&p<t&&l;l&&l<t&&(o<t&&h<t&&s)&&(e[1].values[0]=i.x,e[r].values[2]=i.x),s&&s<t&&c&&(e[1].values[1]=i.y,e[r].values[3]=i.y)}}return e}function Yt(e,t=1){let l=[];for(let a=0,r=e.length;a<r;a++){let r=e[a],{type:n,values:s}=r,i={type:n,values:[]};switch(n.toLowerCase()){case"h":case"v":i.values=[s[0]*t];break;case"a":i.values=[s[0]*t,s[1]*t,s[2],s[3],s[4],s[5]*t,s[6]*t];break;default:s.length&&(i.values=s.map((e,l)=>e*t))}l.push(i)}return l}function _t(e,t=1){for(let l=1,a=e.length;l<a;l++){let a=e[l],{type:r,values:n,p0:s,cp1:i=null,cp2:o=null,p:u=null}=a;if("C"===r){let r=ot(s,i,o,u,t);"Q"===r.type&&(r.extreme=a.extreme,r.corner=a.corner,r.dimA=a.dimA,r.squareDist=a.squareDist,e[l]=r)}}return e}function Kt(e,{quality:t=.9,width:l=0,height:a=0}={}){let r=!1;if("string"==typeof t&&(r=!0,t=parseFloat(t)),e.length<4)return e;let n=t;if(!r){if(n=1-t,t>.5&&(n/=2),!l&&!a){let t=fe(e,12);({width:l,height:a}=Qe(t))}n=(n*((l+a)/2/100))**2}const s=(e,t,l)=>{let a=t.x,r=t.y,n=l.x-a,s=l.y-r;if(0!==n||0!==s){let t=((e.x-a)*n+(e.y-r)*s)/(n*n+s*s);t>1?(a=l.x,r=l.y):t>0&&(a+=n*t,r+=s*t)}return(e.x-a)**2+(e.y-r)**2};let i=[e[0]],o=[];for(o.push([0,e.length-1]);o.length>0;){let[t,l]=o.pop(),a=n,r=-1;for(let n=t+1;n<l;n++){let i=s(e[n],e[t],e[l]);i>a&&(r=n,a=i)}a>n?(o.push([r,l]),o.push([t,r])):i.push(e[l])}return i}function el(e,{quality:t=.9,width:l=0,height:a=0}={}){let r=!1;if("string"==typeof t){r=!0,t=parseFloat(t)}if(e.length<4)return e;let n,s=e[0],i=[s],o=t;if(!r){if(o=t,!l&&!a){let t=fe(e,12);({width:l,height:a}=Qe(t))}o=(o*((l+a)/2/25))**2,t>.5&&(o/=10)}for(let t=1,l=e.length;t<l;t++){n=e[t],pe(s,n)>o&&(i.push(n),s=n)}return s.x!==n.x&&s.y!==n.y&&i.push(n),i}function tl(e,t=!0){let l=[],a=[];return Array.isArray(e[0])?e.forEach(e=>{a=[{type:"M",values:[e[0].x,e[0].y]},...e.slice(1).map(e=>({type:"L",values:[e.x,e.y]}))],t&&a.push({type:"Z",values:[]}),l.push(...a)}):l=[{type:"M",values:[e[0].x,e[0].y]},...e.slice(1).map(e=>({type:"L",values:[e.x,e.y]}))],t&&l.push({type:"Z",values:[]}),l}function ll(e,{maxError:t=0,adjustCpts:l=!0,harmonize:a=!0,keepCorners:r=!0}={}){if(1===e.length)return[];if(2===e.length)return[{type:"L",values:[e[0].x,e[0].y]},{type:"L",values:[e[1].x,e[1].y]}];let n,s,i=e.length,o=function(e=[]){let t=[];return e.forEach(e=>{let l=4===e.length?"C":3===e.length?"Q":"L",a="C"===l||"Q"===l?e[1]:null,r="C"===l?e[2]:null,n=e[e.length-1],s={type:l,values:"C"===l?[a.x,a.y,r.x,r.y,n.x,n.y]:"Q"===l?[a.x,a.y,n.x,n.y]:[n.x,n.y]};t.push(s)}),t}(al(e,il(e[1],e[0]),il(e[i-2],e[i-1]),t,r));{let t=o.length,l=o[0],a=o[t-1],r={x:e[0].x,y:e[0].y},u={x:e[1].x,y:e[1].y},h=e[2]?{x:e[2].x,y:e[2].y}:null;h&&(n={x:l.values[0],y:l.values[1]},n=yl(n,r,u,h),l.values[0]=n.x,l.values[1]=n.y);let p={x:e[i-1].x,y:e[i-1].y},c={x:e[i-2].x,y:e[i-2].y},y=e[i-3]?{x:e[i-3][0],y:e[i-3][1]}:null;y&&(s={x:a.values[2],y:a.values[3]},s=yl(s,p,c,y),a.values[2]=s.x,a.values[3]=s.y)}return o}function al(e,t,l,a,r=!1){let n,s=function(e){let t=[],l=e.length,a=e[0],r=e[1],n=0,s=0;for(let i=0;i<l;i++)r=e[i],n=s+he(r,a,!1),t.push(n),s=n,a=r;return t=t.map(function(e){return e/s}),t}(e),i=rl(e,s,s,t,l);n=i[0];let o=i[1],u=i[2];if(r){let t=function(e,t){let l,a=4,r=1/a,n=e.length,s=[t[0]];for(let e=1;e<a;e++){l=Y(t,r*e),s.push(l)}s.push(t[t.length-1]);let i=Ze(e,!1);i||2!==e.length||(i=.01*pe(e[0],e[1]));let o=Ze(s,!1)/i>1.1,u=t;if(o){let l=e[Math.floor(.5*n)],a=e[n-1];u=t=[e[0],l,l,a]}return{isBulged:o,bezierNew:u}}(e,n),{isBulged:l,bezierNew:a}=t;l&&(n=a)}if(0===o||o<a)return[n];if(o<a*a){let r=s,i=o,h=u;for(let p=0;p<20;p++){r=nl(n,e,r);let p=rl(e,s,r,t,l);if(n=p[0],o=p[1],u=p[2],o<a)return[n];if(u===h){let e=o/i;if(e>.9999&&e<1.0001)break}i=o,h=u}}let h=[],p=ol(e[u-1],e[u+1]);if(0===p.x&&0===p.y){p=ol(e[u-1],e[u]);let t={x:-p.y,y:p.x};p.x=t.x,p.y=t.y}let c=function(e){let t=Math.sqrt(e.x*e.x+e.y*e.y);return 0===t?{x:0,y:0}:{x:e.x/t,y:e.y/t}}(p),y=hl(c,-1);return e.length,h.push(...al(e.slice(0,u+1),t,c,a,r),...al(e.slice(u),y,l,a,r)),h}function rl(e,t,l,a,r){let n,s,i;n=function(e,t,l,a){let r,n,s,i,o=e[0],u=e[e.length-1],h=[o,null,null,u],p=function(e){let t=[];for(;e--;)t.push([0,0]);return t}(t.length),c=t.length;for(let e=0;e<c;e++)s=t[e],i=1-s,r=p[e],r[0]=hl(l,3*s*(i*i)),r[1]=hl(a,3*i*(s*s));let y=[[0,0],[0,0]],f=[0,0],x=e.length;for(let l=0;l<x;l++)s=t[l],r=p[l],y[0][0]+=pl(r[0],r[0]),y[0][1]+=pl(r[0],r[1]),y[1][0]+=pl(r[0],r[1]),y[1][1]+=pl(r[1],r[1]),n=ol(e[l],Y([o,o,u,u],s)),f[0]+=pl(r[0],n),f[1]+=pl(r[1],n);let m=y[0][0]*y[1][1]-y[1][0]*y[0][1],d=y[0][0]*f[1]-y[1][0]*f[0],g=f[0]*y[1][1]-f[1]*y[0][1],v=0===m?0:g/m,b=0===m?0:d/m,A=he(o,u,!1),M=1e-6*A;return v<M||b<M?(h[1]=ul(o,hl(l,.333*A)),h[2]=ul(u,hl(a,.333*A))):(h[1]=ul(o,hl(l,v)),h[2]=ul(u,hl(a,b))),h}(e,l,a,r);let o=function(e,t,l){let a,r,n,s,i,o;r=0,n=Math.floor(.5*e.length);let u=function(e,t){let l,a=[0],r=e[0],n=0;for(let s=1;s<=t;s++)l=Y(e,s/t),n+=he(l,r),a.push(n),r=l;return a=a.map(e=>e/n),a}(t,10),h=e.length,p=null;for(s=0;s<h;s++)i=e[s],o=sl(l[s],u,10),p=Y(t,o),a=pe(p,i),a>r&&(r=a,n=s);return[r,n]}(e,n,t);return s=o[0],i=o[1],[n,s,i]}function nl(e,t,l){return l.map((l,a)=>function(e,t,l){let a=Y(e,l),r=a.x-t.x,n=a.y-t.y,s=cl(e,l),i=r*s[0]+n*s[1],o=s[0]*s[0]+s[1]*s[1],u=cl(e,l,!0),h=2*(r*u[0]+n*u[1]),p=o+h;if(Math.abs(p)<1e-10)return l;return l-i/p}(e,t[a],l))}function sl(e,t,l){if(e<0)return 0;if(e>1)return 1;let a,r,n,s,i;for(let o=1;o<=l;o++)if(e<=t[o]){s=(o-1)/l,n=o/l,r=t[o-1],a=t[o],i=(e-r)/(a-r)*(n-s)+s;break}return i}function il(e,t){let l=e.x-t.x,a=e.y-t.y,r=Math.sqrt(l*l+a*a);return 0===r?{x:0,y:0}:{x:l/r,y:a/r}}function ol(e,t){return{x:e.x-t.x,y:e.y-t.y}}function ul(e,t){return{x:e.x+t.x,y:e.y+t.y}}function hl(e,t){return{x:e.x*t,y:e.y*t}}function pl(e,t){return e.x*t.x+e.y*t.y}function cl(e,t,l=!1){let a,r,n=e[0],s=e[1],i=e[2],o=e[3],u=t,h=1-u,p=h*h,c=u*u;return l?(a=6*h*(i.x-2*s.x+n.x)+6*u*(o.x-2*i.x+s.x),r=6*h*(i.y-2*s.y+n.y)+6*u*(o.y-2*i.y+s.y)):(a=3*p*(s.x-n.x)+6*h*u*(i.x-s.x)+3*c*(o.x-i.x),r=3*p*(s.y-n.y)+6*h*u*(i.y-s.y)+3*c*(o.y-i.y)),[a,r]}function yl(e,t,l,a){let r=U(t,l),n=U(t,a)-r;return e=ee(e,t.x,t.y,-n)}function fl(e,{debug:t=!1,width:l=0,height:a=0,denoise:r=.9,keepCorners:n=!0,keepExtremes:s=!0,keepInflections:i=!1,manhattan:o=!1,absolute:u=!1,closed:h=!0,tolerance:p=1,simplifyRD:c=1,simplifyRDP:y=1}={}){let f=[],x=e.length,m=e[0],d=e[x-1];if(3===e.length){let t=J(m,e[1],.5),l=J(e[1],d,.5),a=J(d,e[0],.5);if(h){let r=.6666,n=J(t,e[1],r),s=J(l,e[1],r),i=J(l,d,r),o=J(a,d,r),u=J(a,m,r),h=J(t,m,r);f=[{type:"M",values:[t.x,t.y]},{type:"C",values:[n.x,n.y,s.x,s.y,l.x,l.y]},{type:"C",values:[i.x,i.y,o.x,o.y,a.x,a.y]},{type:"C",values:[u.x,u.y,h.x,h.y,t.x,t.y]},{type:"Z",values:[]}]}else f=[{type:"M",values:[m.x,m.y]},{type:"C",values:[e[1].x,e[1].y,e[1].x,e[1].y,d.x,d.y]}];return f}let g=function(e){let t=e.length,l=0,a=0;for(let r=0;t&&r<t;r++){let t=e[r];l+=t.x,a+=t.y}return{x:l/t,y:a/t}}(function(e){if(e.length<4)return e;let t=e.length,l=e[0],a=e[t-1];l.x===a.x&&l.y===a.y&&(e.pop(),t--,a=e[t-1]);let r,n,s=[l],i=l;for(let a=2;a<t;a++){r=e[a-1],n=e[a];let o=a===t-1;if(r.x===i.x&&r.y===i.y||r.x===n.x&&r.y===n.y)continue;let u=i.x===r.x,h=i.y===r.y;if(u||h){let e=r.x===n.x,t=r.y===n.y;if(u&&e||h&&t){if(!o)continue;if(o&&l.x!==n.x&&l.y!==n.y){s.push(n);continue}}}Ze([i,r,n],!0)<=.005*pe(i,n)&&a<t-1||(s.push(r),o&&l.x!==n.x&&l.y!==n.y&&s.push(n)),i=r}return Ze([s[1],l,s[s.length-1]],!0)<.005*pe(s[1],s[s.length-1])&&s.shift(),s}(e)),v=function(e,t={x:0,y:0}){let l=pe(e[0],t);for(let a=1,r=e.length;a<r;a++){let r=pe(e[a],t);if(Math.abs(l-r)/l>.05)return!1}return!0}(e,g);if(v){let t=ee(e[0],g.x,g.y,Math.PI),l=Ze(e)>0?1:0;return f=[{type:"M",values:[e[0].x,e[0].y]},{type:"A",values:[1,1,0,0,l,t.x,t.y]},{type:"A",values:[1,1,0,0,l,e[0].x,e[0].y]}],h&&f.push({type:"Z",values:[]}),f}let b=s||n?function(e,{x:t=0,y:l=0,width:a=0,height:r=0,debug:n=!1}={}){let s=e.length,i=Qe(e);a&&r||({x:t,y:l,width:a,height:r}=i);let o=.01*(a+r);for(let t=0;t<s;t++){let l=t>0?e[t-1]:e[s-1],a=e[t],r=Ze([l,a,t<s-1?e[t+1]:e[s-1]],!1);a.area=r,a.dist=ce(l,a),a.idx=t}for(let t=0;t<s;t++){t>1?e[t-2]:e[s-1];let l=t>0?e[t-1]:e[s-1],a=e[t],r=t<s-1?e[t+1]:e[s-1];pe(l,r),Math.abs(l.area);let n=Math.abs(a.area);Math.abs(r.area);let u=!1,h=!a.area||n<o;ce(a,l);let p=!1;a.x!==i.left&&a.x!==i.right&&a.y!==i.top&&a.y!==i.bottom||(p=!0);let c=a.y===l.y&&a.x!==l.x,y=a.x===l.x&&a.y!==l.y;(c||y)&&(l.isExtreme=!0,p=!0);let f=Qe([l,r]),{left:x,right:m,top:d,bottom:g}=f,v=a.x<x||a.x>m||a.y<d||a.y>g;!p&&v&&(p=!0);let b=(l.area<0&&a.area>0||l.area>0&&a.area<0)&&!h&&!l.isDirChange;if(p){let e=Z(a,r,l),{deltaAngleDeg:t}=e;t=Math.abs(t),t>10&&t<160&&(u=!0)}a.isCorner=u,a.isExtreme=p,a.isHorizontal=c,a.isVertical=y,a.isDirChange=b}let u=[],h=[];for(let t=0;t<e.length;t++){let l=e[t],a=e[t+1]||null,r=e[t+2]||null,n=[];if(a&&a.isExtreme&&l.isExtreme&&!l.isCorner){let e=a.dist<2*o&&!a.isCorner,s=r&&r.isExtreme&&r.dist<2*o&&!r.isCorner;if(e&&!s?n.push(l,a):s&&n.push(l,a,r),n.length){let e=n.reduce((e,t)=>e+t.x,0)/n.length,a=n.reduce((e,t)=>e+t.y,0)/n.length;l.x=e,l.y=a,t+=n.length-1}}(l.isExtreme||l.isCorner||l.isDirChange)&&h.push(u.length),u.push(l);let s=u.length,i=u[0],p=u[s-1],c=ce(i,p)<2*o;i.isExtreme&&p.isExtreme&&c&&(p.x=i.x,p.y=i.y)}return u}(e,{debug:!1}):e,A=s||n?function(e,{closed:t=!0,keepCorners:l=!0,keepExtremes:a=!0,keepInflections:r=!1}={}){let n=[[e[0]]],s=0,i=n[s],o=e.length;for(let t=1;t<o;t++){t>0?e[t]:e[o-1];let r=e[t];t<o-1?e[t+1]:e[o-1],(a&&r.isExtreme||l&&r.isCorner)&&(s++,n.push([])),i=n[s],i.push(r)}return n}(b,{keepCorners:n,keepExtremes:s,keepInflections:i}):[b];return f=function(e=[],{closed:t=!0,keepCorners:l=!0,tolerance:a=1}={}){let r=e.length,n=[{type:"M",values:[e[0][0].x,e[0][0].y]}];for(let t=0;t<r;t++){let r=e[t],s=e[t+1]?e[t+1]:null,i=[],o=r.length;r[r.length-1],s&&r.push(s[0]),o<2||2===o&&r[1].isExtreme?(r[r.length-1],i=r.map(e=>({type:"L",values:[e.x,e.y]}))):i=ll(r,{maxError:a,keepCorners:l}),n.push(...i)}t&&n.push({type:"Z",values:[]});return n}(A,{closed:h,tolerance:l&&a?(l+a)/2*.004*p:2.5,keepCorners:n,keepExtremes:!0}),f=function(e=[]){let t=e.length,l={x:e[0].values[0],y:e[0].values[1]},a=l;for(let r=1;r<t;r++){let t=e[r],n=e[r-1]||null,{type:s,values:i}=t;if(e[r+1]&&e[r+1],"C"===s){let e=1.2,r={x:i[0],y:i[1]};a={x:i[4],y:i[5]};let s={x:i[2],y:i[3]};J(l,r,e);let o=J(a,s,e);n.values.slice(-2);let u=W(l,r,a,o,!0,!0);if(u){let e=.666;r=J(l,u,e),s=J(a,u,e),t.values=[r.x,r.y,s.x,s.y,a.x,a.y]}}i.length&&(l=a)}return e}(f),f}function xl(e,{precisionPoly:t=1,autoAccuracy:l=!1,polyFormat:a="points",decimals:r=-1,simplifyRD:n=1,simplifyRDP:s=1}={}){let i=e.length,o=[],u=[{x:e[0].values[0],y:e[0].values[1]}],h=[];for(let t=1;t<i;t++){let l=e[t],{type:a,values:r,p0:n,p:s,dimA:i=0}=l;h.push(+i.toFixed(8)),u.push(s)}let p=[u[0]];h=h.filter(Boolean).sort();let c=h[h.length-1];t*=c>2&&c<25?1:20/c;for(let l=1;l<i;l++){let a=e[l],{type:r,values:n,p0:s,p:i,cp1:o=null,cp2:u=null,dimA:h}=a,c=h,y=o&&u?[s,o,u,i]:o?[s,o,i]:[];if(y.length){let e=u?J(o,u,.5):o;c=.2*(ce(s,e)+ce(i,e))+h}let f=Math.ceil(.2*c*t),x=Math.ceil(f);if(x&&y.length){let e=x?1/(x+1):0;for(let t=1;t<=x;t++){let l=Y(y,e*t);p.push(l)}}p.push(i)}n>0&&(p=el(p,{quality:n})),s>0&&(p=Kt(p,{quality:s})),o=tl(p),e=o,l&&(r=function(e){let t=[];for(let l=1,a=e.length;l<a;l++){let a=e[l],{p0:r=null,p:n=null,dimA:s=0}=a;n&&r&&(s=s||ce(r,n),s&&t.push(s))}let l=t.sort(),a=Math.ceil(l.length/8);l=l.slice(0,a);let r=l.reduce((e,t)=>e+t,0)/a,n=r>112.5?0:Math.floor(75/r).toString().length;return Math.min(Math.max(0,n),8)}(u));let y=r>-1?p.map(e=>({x:we(e.x,r),y:we(e.y,r)})):p.map(e=>({x:e.x,y:e.y}));return"array"===a?y=y.map(e=>[e.x,e.y]):"string"===a&&(y=y.map(e=>[e.x,e.y].join(",")).flat().join(" ")),{pathData:e,poly:y}}function ml(e){for(let t=1,l=e.length;t<l;t++){let l=e[t],{type:a,values:r,p0:n,cp1:s=null,cp2:i=null,p:o=null}=l;if("L"===a){let l=J(n,o,.333),a=J(o,n,.333);e[t].type="C",e[t].values=[l.x,l.y,a.x,a.y,o.x,o.y],e[t].cp1=l,e[t].cp2=a}}return e}function dl(e=[],t=!1){let l=[];e.forEach((e,t)=>{let a=function(e=[],{precision:t=1}={}){let l=[];for(let t=0;t<e.length;t++){let a=e[t],r=t>0?e[t-1]:e[t],{type:n,values:s}=a,i={x:r.values[r.values.length-2],y:r.values[r.values.length-1]},o=s.length?{x:s[s.length-2],y:s[s.length-1]}:"",u=s.length?{x:s[0],y:s[1]}:"";switch(n){case"A":yt(i,s).forEach(e=>{let t=e.values,a={x:t[0],y:t[1]},r={x:t[2],y:t[3]},n={x:t[4],y:t[5]};l.push(a,r,n)});break;case"C":let e={x:s[2],y:s[3]};l.push(u,e);break;case"Q":l.push(u)}"z"!==n.toLowerCase()&&l.push(o)}return l}(e.pathData),r=Ze(a)>=0;l.push({pts:a,bb:Qe(a),cw:r,index:t,inter:0,includes:[],includedIn:[]})});let a=l.length;for(let e=0;e<a;e++){let t=l[e],r=t.bb;for(let n=0;n<a;n++){let a=l[n],s=a.bb;e===n||a.includes.includes(e)||X({x:s.left+s.width/2,y:s.top+s.height/2},t.pts,r)&&(l[n].inter+=1,a.includedIn.push(e),t.includes.push(n))}}for(let r=0;r<a;r++){let a=l[r],{cw:n,includedIn:s,includes:i}=a;(!s.length&&n&&!t||!s.length&&!n&&t)&&(e[r].pathData=St(e[r].pathData),l[r].cw=!l[r].cw,n=l[r].cw);for(let t=0;t<i.length;t++){let a=i[t];l[a].cw===n&&(e[a].pathData=St(e[a].pathData),l[a].cw=!l[a].cw)}}return e}let gl={removeComments:!0,removeOffCanvas:!1,removeDimensions:!1,removeIds:!1,removeClassNames:!1,omitNamespace:!1,cleanUpStrokes:!0,addViewBox:!0,addDimensions:!1,removePrologue:!0,removeHidden:!0,removeUnused:!0,cleanupDefs:!0,cleanupClip:!0,cleanupSVGAtts:!0,removeNameSpaced:!0,removeNameSpacedAtts:!0,attributesToGroup:!1,minifyRgbColors:!0,stylesToAttributes:!1,fixHref:!1,legacyHref:!1,allowMeta:!1,allowDataAtts:!0,allowAriaAtts:!0,convertPathLength:!1,removeElements:[],removeSVGAttributes:[],removeElAttributes:[],unGroup:!1,mergePaths:!1,splitCompound:!1,shapesToPaths:!1,shapeConvert:0,convertShapes:["rect","ellipse","circle","line","polygon","polyline"],keepSmaller:!0,simplifyBezier:!0,optimizeOrder:!0,autoClose:!1,removeZeroLength:!0,refineClosing:!0,removeColinear:!0,flatBezierToLinetos:!0,revertToQuadratics:!0,refineExtremes:!1,simplifyCorners:!1,keepExtremes:!0,keepCorners:!0,keepInflections:!1,addExtremes:!1,fixDirections:!1,reversePath:!1,toAbsolute:!1,toRelative:!0,toMixed:!1,toShorthands:!0,toLonghands:!1,quadraticToCubic:!0,arcToCubic:!1,cubicToArc:!1,lineToCubic:!1,decimals:3,autoAccuracy:!0,minifyD:0,tolerance:1,toPolygon:!1,smoothPoly:!1,polyFormat:"object",precisionPoly:1,simplifyRD:0,simplifyRDP:0,harmonizeCpts:!1,removeOrphanSubpaths:!1,simplifyRound:!1,scale:1,scaleTo:0,crop:!1,alignToOrigin:!1,convertTransforms:!1};const vl={};for(let e in gl){let t=gl[e],l=!1===t||!0===t,a=!isNaN(t),r=Array.isArray(t);l?t=!1:!r&&a?t=1===t?1:"decimals"===e?-1:0:r&&(t=[]),vl[e]=t}const bl={default:gl,education:{...gl,keepSmaller:!1,toRelative:!1,toMixed:!1,toShorthands:!1,fixHref:!0,legacyHref:!1,addViewBox:!0,addDimensions:!0,removeComments:!1,decimals:3,minifyD:2},null:vl,editor:{...gl,keepSmaller:!1,toRelative:!0,toMixed:!0,toShorthands:!0,legacyHref:!0,addViewBox:!0,addDimensions:!0,removeComments:!0,autoAccuracy:!0,minifyD:.5},noSimplification:{...gl,simplifyBezier:!1,quadraticToCubic:!1,toRelative:!0,toShorthands:!0,fixHref:!0,optimizeOrder:!1,removeZeroLength:!1,refineExtremes:!1,refineClosing:!1,removeColinear:!1,flatBezierToLinetos:!1,addDimensions:!1,removeComments:!0,minifyD:0},path:{...gl,shapeConvert:"toPaths",convertShapes:["rect","ellipse","circle","line","polygon","polyline"],addViewBox:!0,minifyD:.5},poly:{...gl,toPolygon:!0},curvefit:{...gl,smoothPoly:!0},detransform:{...gl,convertTransforms:!0,addViewBox:!0,minifyD:.5},high:{...gl,tolerance:1.2,toMixed:!0,refineExtremes:!0,simplifyCorners:!0,simplifyRound:!0,removeClassNames:!0,cubicToArc:!0,removeComments:!0,removeHidden:!0,removeOffCanvas:!0,addViewBox:!0,removeDimensions:!0,minifyD:0}};function Al(e=[],{toRelative:t=!0,toShorthands:l=!0,minifyD:a=0,decimals:r=3,addDimensions:n=!1}={}){let s=(e=JSON.parse(JSON.stringify(e))).length,i=[],o=[];for(let t=0;t<s;t++){let l=e[t],{pathData:a,bb:r}=l;if(r.width&&r.height);else{r=Qe(_(a,!0)),e[t].bb=r}i.push(r.left,r.right),o.push(r.top,r.bottom),l.includes=[]}for(let t=0,l=e.length;t<l;t++){let a=e[t],{bb:r,poly:n}=a;for(let a=0;a<l;a++){let l=e[a];if(t===a)continue;let n=l.bb,s={x:n.x+.5*n.width,y:n.y+.5*n.height};s.x>=r.x&&s.y>=r.y&&s.x<=r.right&&s.y<=r.bottom&&e[t].includes.push(a)}}for(let t=0,l=e.length;t<l;t++){let l=e[t],{includes:a}=l;a.forEach(l=>{let a=e[l].pathData;a.length&&(e[t].pathData.push(...a),e[l].pathData=[])})}e=(e=e.filter(e=>e.pathData.length)).sort((e,t)=>e.bb.x-t.bb.x);let u=Math.min(...i),h=Math.min(...o),p=Math.max(...i)-u,c=Math.max(...o)-h;[u,h,p,c]=[u,h,p,c].map(e=>we(e,r));let y=`<svg ${n?`width="${p}" height="${c}"`:""} viewBox="${u} ${h} ${p} ${c}" xmlns="${k}">`;return e.forEach(e=>{let{pathData:n}=e;n=it(n,{toRelative:t,toShorthands:l,decimals:r});let s=We(n,a);y+=`<path d="${s}"/>`}),y+="</svg>",{pathData:e,svg:y}}function Ml(e="",t={}){let l=void 0!==t.preset&&t.preset?t.preset:null;t={...l&&void 0!==bl[l]?bl[l]:bl.default,...t};let{getObject:a=!1,removeComments:r,removeOffCanvas:n,unGroup:s,mergePaths:i,removeElements:o,removeDimensions:u,removeIds:h,removeClassNames:p,omitNamespace:c,cleanUpStrokes:y,addViewBox:f,addDimensions:x,removePrologue:m,removeHidden:d,removeUnused:g,cleanupDefs:v,cleanupClip:b,cleanupSVGAtts:A,removeNameSpaced:M,removeNameSpacedAtts:w,attributesToGroup:C,minifyRgbColors:k,stylesToAttributes:S,fixHref:E,legacyHref:P,allowMeta:D,allowDataAtts:L,allowAriaAtts:$,convertPathLength:T,removeSVGAttributes:N,removeElAttributes:q,shapesToPaths:j,shapeConvert:z,convertShapes:I,simplifyBezier:B,optimizeOrder:F,autoClose:O,removeZeroLength:R,refineClosing:Q,removeColinear:V,flatBezierToLinetos:G,revertToQuadratics:H,refineExtremes:U,simplifyCorners:Z,fixDirections:W,keepExtremes:X,keepCorners:J,keepInflections:Y,addExtremes:K,reversePath:ee,toAbsolute:te,toRelative:le,toMixed:ae,toShorthands:re,toLonghands:ne,quadraticToCubic:se,arcToCubic:ie,cubicToArc:oe,lineToCubic:ue,decimals:he,autoAccuracy:pe,minifyD:ce,tolerance:ye,toPolygon:xe,smoothPoly:de,polyFormat:ge,precisionPoly:be,simplifyRD:Ae,simplifyRDP:Ce,harmonizeCpts:ke,removeOrphanSubpaths:Se,simplifyRound:Ee,scale:Pe,scaleTo:De,crop:Le,alignToOrigin:$e,convertTransforms:Te,keepSmaller:Ne,splitCompound:qe}=t;ye=Math.max(.1,ye),Pe=Math.max(.001,Pe),W&&(Ne=!1),(1!==Pe||De||Le||$e)&&(Te=!0,t.convertTransforms=!0);let je=function(e){let t="string";if(Array.isArray(e)){if(Array.isArray(e[0])){if(2===e[0].length)return"polyArray";if(Array.isArray(e[0][0])&&2===e[0][0].length)return"polyComplexArray";if(void 0!==e[0][0].x&&void 0!==e[0][0].y)return"polyComplexObjectArray"}else{if(void 0!==e[0].x&&void 0!==e[0].y)return"polyObjectArray";if(e[0]?.type&&e[0]?.values)return"pathData"}return"array"}if("string"==typeof e){let l=(e=e.trim()).includes("<svg")&&e.includes("</svg"),a=e.startsWith("<symbol")&&e.includes("</symbol"),r=e.startsWith("M")||e.startsWith("m"),n=!isNaN(e.substring(0,1))&&!isNaN(e.substring(e.length-1,e.length)),s=function(e){e=e.trim();let t=/\d/.test(e),l=/[abcdfghijklmnopqrstuvwz]/gi.test(e);return!(!t||l)&&(e.startsWith("[")&&e.endsWith("]"))}(e);if(l)t="svgMarkup";else if(s)t="json";else if(a)t="symbol";else if(r)t="pathDataString";else if(n)t="polyString";else{let l=/^(file:|https?:\/\/|\/|\.\/|\.\.\/)/.test(e),a=e.startsWith("data:image");t=l||a?"url":"string"}return t}return t=typeof e,(e.constructor.name||t).toLowerCase()}(e),ze="",Ie=0,Be=0,Fe=0,Oe={},Re="",Ve="svgMarkup"===je?1:0,Ge=[],He=[],Ue=[],Ze=[],Xe="",Ye="";Ie=e.length;let _e={x:0,y:0,width:0,height:0},tt={x:0,y:0,width:0,height:0},lt=[],at=[];ie=!!xe||ie,O=!1;let rt=[];if("json"===je){let t=[];/([{,]\s*)(x|y)(\s*:)/.test(e)&&(e=e.replaceAll("x:",'"x":').replaceAll("y:",'"y":'));try{t=JSON.parse(e)}catch{console.warn("No valid JSON")}t.length&&(je="polyArray",e=Pt(t))}if("svgMarkup"!==je&&"symbol"!==je){if("pathDataString"===je)Re=e;else if("polyString"===je)qe=!1,Ze=Pt(e),Re=tl(Ze,closed);else if("polyArray"===je||"polyObjectArray"===je||"polyComplexArray"===je||"polyComplexObjectArray"===je){qe=!1,Ze=Pt(e),Re=tl(Ze,!0),Xe=Re.map(e=>`${e.type} ${e.values.join(" ")}`).join(" "),Ye=Xe,Ie=Xe.length}else"pathData"===je?(Re=e,Xe=Array.from(Re).map(e=>`${e.type} ${e.values.join(" ")}`).join(" "),Ie=Xe.length):Re="M0 0 h0";He.push({d:Re,el:null})}else{"symbol"===je&&(e=e.replaceAll("<symbol","<svg").replaceAll("</symbol","</svg"),h=!1,u=!0),j&&(z="toPaths",convert_rects=!0,convert_ellipses=!0,convert_poly=!0,convert_lines=!0),ze=Ut(e,JSON.parse(JSON.stringify(t))).svg,ze.querySelectorAll("path").forEach((e,t)=>{let l=e.getAttribute("d");He.push({d:l,el:e,idx:t})}),_e=mt(ze,he)}let nt={toRelative:le,toMixed:ae,toShorthands:re,decimals:he};for(let e=0,t=He.length;t&&e<t;e++){let t=[],l=He[e],{d:a,el:r}=l,n=!1,s=st(a,{quadraticToCubic:se,arcToCubic:ie}),i=de||xe?Qe(_(s)):null;if(1!==Pe||De){if(De)if(_e.width&&!Le)Pe=De/_e.width;else{let e=s.map(e=>({type:e.type,values:e.values}));e=it(e,{arcToCubic:!0}),e=ve(e);let t=Qe(_(e));lt.push(t.x,t.x+t.width),at.push(t.y,t.y+t.height);let l=De/t.width;Pe=l}s=Yt(s,Pe)}let o=s.length;!n&&Se&&(s=At(s));let u=me(s),h=u.length;for(let e=0;e<h;e++){let l=u[e],a=[],r=Array.from(new Set(l.map(e=>e.type))).join("");n=!/[acqts]/gi.test(r);let s=!!n;if(n&&!Ve){a=_(l);let e=Qe(fe(a,64));Ae>0&&(a=el(a,{quality:Ae,width:e.width,height:e.height})),Ce>0&&(a=Kt(a,{quality:Ce,width:e.width,height:e.height})),xe=!1,l=tl(a,s)}else if(xe){B=!1,de=!1,ke=!1,l=et(l),l=xl(l,{precisionPoly:be,autoAccuracy:pe,simplifyRD:Ae,simplifyRDP:Ce}).pathData,n=!0}if(de&&n){l=Mt(l),l=fl(_(l),{denoise:.8,tolerance:ye,width:i.width,height:i.height,manhattan:!1,absolute:!1,keepCorners:J,keepExtremes:X,keepInflections:Y,closed:s,simplifyRD:Ae,simplifyRDP:Ce})}(V||R)&&(l=Mt(l)),F&&(l=wt(l)),V&&(l=bt(l,{tolerance:ye,flatBezierToLinetos:!1})),K&&(l=ve(l,{tMin:0,tMax:1,addExtremes:K,angles:[30]})),ee&&(l=St(l));let o={bb:{},dimA:0,pathData:[]};if(n){if(!a.length){let e=it(JSON.parse(JSON.stringify(l)),{toLonghands:!0,toAbsolute:!0,arcToCubic:!0,testTypes:!0});o.bb=Qe(_(e))}o.dimA=o.bb.width+o.bb.height,o.pathData=et(l,{addSquareLength:!1,addArea:!1,addAverageDim:!1})}else o=Ke(l);let{pathData:h,bb:p,dimA:c}=o;if(lt.push(p.x,p.x+p.width),at.push(p.y,p.y+p.height),Q&&(h=Jt(h,{threshold:.001*c})),h=B?Je(h,{simplifyBezier:B,keepInflections:Y,keepExtremes:X,keepCorners:J,revertToQuadratics:H,tolerance:ye}):h,U){h=Et(h,{threshold:.05*(p.width+p.height),tolerance:ye})}if(!ie&&oe&&(h=ft(h,{areaThreshold:2.5})),V&&G&&(h=bt(h,{tolerance:ye,flatBezierToLinetos:G})),Z){h=Zt(h,{threshold:.1*(p.width+p.height),tolerance:ye})}if(Ee&&(h=Xt(h)),H&&(h=_t(h,ye)),ue&&(h=ml(h)),F&&(h=Ct(h,{autoClose:O})),pe){let e=Me(h);rt.push(e)}t.push({pathData:h,bb:p})}let p=Math.min(...lt),c=Math.min(...at);tt={x:p,y:c,width:Math.max(...lt)-p,height:Math.max(...at)-c};let y=tt.height>tt.width;if(W&&(t=dl(t)),F&&(t=y?t.sort((e,t)=>e.bb.y-t.bb.y||e.bb.x-t.bb.x):t.sort((e,t)=>e.bb.x-t.bb.x||e.bb.y-t.bb.y)),s=[],Ge.push(t),t.forEach(e=>{s.push(...e.pathData)}),pe){rt=rt.sort().reverse();let e=rt[Math.floor(.5*rt.length)];he=Math.floor(.5*(rt[0]+e)),nt.decimals=he}if(n&&t.forEach(e=>{let t=_(e.pathData,!1,he);"array"===ge&&(t=Dt(t)),Ue.push(t)}),qe&&!Ve&&t.length>1){let e=Al(t,{toRelative:le,toShorthands:re,decimals:he,addDimensions:x});ze=(new DOMParser).parseFromString(e.svg,"image/svg+xml").querySelector("svg"),Ve=1,je="splitPath"}s=JSON.parse(JSON.stringify(s)),s=it(s,nt),R&&(s=Mt(s)),$e&&(s[0].values[0]=we(s[0].values[0]-tt.x,he),s[0].values[1]=we(s[0].values[1]-tt.y,he),tt.x=0,tt.y=0);let f=s.length,m=We(s,ce);Be=m.length,Fe=+(100/Ie*Be).toFixed(2),l.d=m,l.report={original:o,new:f,saved:o-f,compression:Fe,decimals:he},r&&r.setAttribute("d",m)}if(Ve||"symbol"===je){if(Pe){let{x:e,y:t,width:l,height:a,w:r,h:n,hasViewBox:s,hasWidth:i,hasHeight:o,widthUnit:u,heightUnit:h}=_e;Le&&(e=tt.x,t=tt.y,l=tt.width,a=tt.height,r=l,n=a),s&&ze.setAttribute("viewBox",[e,t,l,a].map(e=>we(e*Pe,he)).join(" ")),i&&ze.setAttribute("width",we(r*Pe,he)+u),o&&ze.setAttribute("height",we(n*Pe,he)+h)}if(W){ze.querySelectorAll("path[fill-rule], path[clip-rule]").forEach(e=>{e.removeAttribute("fill-rule"),e.removeAttribute("clip-rule")})}N.includes("xmlns")&&(c=!0),ze=zt(ze,{omitNamespace:c,removeComments:r,format:ce}),Be=ze.length,Fe=+(100/Ie*Be).toFixed(2),Ie=+(Ie/1024).toFixed(3),Be=+(Be/1024).toFixed(3),Oe={svgSize:Ie,svgSizeOpt:Be,compression:Fe,decimals:he},Ne&&Ie<Be&&!qe&&(ze=e,Oe.node="Original is smaller!")}else({d:Re,report:Oe}=He[0]);return Ue.length&&1===Ue.length&&(Ue=Ue[0]),"string"===ge&&Ue.length&&(Ue=Ue.flat().map(e=>`${e.x},${e.y}`).join(" ")),a?{svg:ze,d:Re,polys:Ue,report:Oe,pathDataPlusArr:Ge,inputType:je,dOriginal:Ye}:Re||ze}"undefined"!=typeof window&&(window.svgPathSimplify=Ml,window.getElementTransform=xe,window.getViewBox=mt),e.PI=M,e.abs=a,e.acos=r,e.asin=n,e.atan=s,e.atan2=i,e.ceil=o,e.cos=u,e.exp=h,e.floor=p,e.getElementTransform=xe,e.getViewBox=mt,e.hypot=y,e.log=c,e.max=f,e.min=x,e.pow=m,e.random=d,e.round=g,e.sin=v,e.sqrt=b,e.svgPathSimplify=Ml,e.tan=A}(this["svg-path-simplify"]=this["svg-path-simplify"]||{});
3
+ if(w){let e="C"===a?Math.abs(l.cp2.x-l.p.x):Math.abs(l.cp1.x-l.p.x),t="C"===a?Math.abs(l.cp2.y-l.p.y):Math.abs(l.cp1.y-l.p.y);if(((0===t||t<=M)&&e>0||(0===e||e<=M)&&t>0)&&(k=!0),(o.x===s.x&&o.y!==s.y||o.y===s.y&&o.x!==s.x)&&(g[g.length-1].extreme=!0),i.x!==p&&i.y!==y&&i.x!==c&&i.y!==f||(k=!0),!k){if(ne(null,b)){let e=oe(b);e.length&&e[0]>.2&&(k=!0)}}}else if(C&&v&&("C"===m.type||"Q"===m.type||"C"===v.type||"Q"===v.type)){let e=v?v.dimA:0,t=l.dimA<.1*(m.dimA+e),a=l.values[0]===l.values[1]&&l.values[0]<1;if(t&&a){let e=Ge([m.p0,v.p]);(i.x>e.right||i.x<e.x||i.y<e.y||i.y>e.bottom)&&(k=!0)}}if(k&&(l.extreme=!0),w&&S){if(n&&!l.extreme){let e=Math.abs(i.x-u.x),t=Math.abs(i.y-u.y),a=!1;if(e&&t&&e>A||t>A){let e=Z(u,i),t=Z(i,v.cp1);a=pe(Math.abs(e+t)/2)}a&&(l.semiExtreme=!0)}if((l.cptArea<0&&v.cptArea>0||l.cptArea>0&&v.cptArea<0)&&(l.directionChange=!0),!l.extreme){let e=u||o,t=v.cp1,a=Xe([e,i,t],!1),r=.01*ye(e,t),n=Math.abs(a)<r,s=a<0&&l.cptArea>0||a>0&&l.cptArea<0;!n&&s&&(l.corner=!0)}}g.push(l)}return s&&g.forEach(e=>{e.directionChange&&t(markers,e.p,"orange","1.5%","0.5"),e.corner&&t(markers,e.p,"magenta","1.5%","0.5"),e.extreme&&t(markers,e.p,"cyan","1%","0.5")}),u={pathData:g,bb:h,dimA:(x+d)/2},u}function lt(e,{addSquareLength:t=!0,addArea:l=!1,addArcParams:a=!1,addAverageDim:r=!0}={}){let n=e[0],s={x:n.values[0],y:n.values[1]},i=s,o=s;n.p0=i,n.p=o,n.idx=0,n.dimA=0;let u=e.length,h=[n];for(let r=1;r<u;r++){let n,u,p=e[r],{type:c,values:y}=p,f=y.length;if(o=f?{x:y[f-2],y:y[f-1]}:s,p.p0=i,p.p=o,p.dimA=fe(i,o),"M"===c&&(s=o),"Q"===c||"C"===c)n={x:y[0],y:y[1]},u="C"===c?{x:y[2],y:y[3]}:null,p.cp1=n,u&&(p.cp2=u);else if("A"===c&&a){let{rx:e,ry:t,cx:l,cy:a,startAngle:r,endAngle:n,deltaAngle:s}=te(i.x,i.y,...y);p.cx=l,p.cy=a,p.rx=e,p.ry=t,p.xAxisRotation=y[2]/180*Math.PI,p.largeArc=y[3],p.sweep=y[4],p.startAngle=r,p.endAngle=n,p.deltaAngle=s}if("Z"===c&&s.x!==o.x&&s.y!==o.y&&(p.closePath=!0),t&&(p.squareDist=ye(i,o)),l){let e=0;"C"===c&&(e=Xe([i,n,u,o],!1)),"Q"===c&&(e=Xe([i,n,o],!1)),p.cptArea=e}p.idx=r,i=o,h.push(p)}return h}const at=new Set([77,109,65,97,67,99,76,108,81,113,83,115,84,116,72,104,86,118,90,122]),rt=new Uint8Array(128);rt[77]=2,rt[109]=2,rt[65]=7,rt[97]=7,rt[67]=6,rt[99]=6,rt[76]=2,rt[108]=2,rt[81]=4,rt[113]=4,rt[83]=4,rt[115]=4,rt[84]=2,rt[116]=2,rt[72]=1,rt[104]=1,rt[86]=1,rt[118]=1,rt[90]=0,rt[122]=0;const nt=new Set([5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279]),st=e=>32===e||44===e||10===e||13===e||8232===e||8233===e||9===e||11===e||12===e||160===e||e>=5760&&nt.has(e);function it(e,t=!0,l=0){if(!e)return[];e=e.trim(),l&&console.log("!!!limit",l);let a={pathData:[],hasRelatives:!1,hasShorthands:!1,hasArcs:!1,hasQuadratics:!1,isPolygon:!1,log:[]};if(""===e)return a;let r,n=0,s=e.length,i="",o=-1,u="",h=!1,p=0,c=0,y=0,f=!1,x=new Set([]);const d=()=>{f&&("M"===i?i="L":"m"===i&&(i="l"),a.pathData.push({type:i,values:[]}),o++,c=0,f=!1)},g=(e=!1)=>{(e?p>0:""!==u)&&(t&&-1===o&&(r="Pathdata must start with M command",a.log.push(r),i="M",a.pathData.push({type:i,values:[]}),y=2,c=0,o++),"A"===i||"a"===i?(({val:u,valueIndex:c}=((e="",t=0)=>{let l=e.length;return 3===t&&2===l?(e=[+e[0],+e[1]],t++):4===t&&l>1?(e=[+e[0],+e.substring(1)],t++):3===t&&l>=3?(e=[+e[0],+e[1],+e.substring(2)],t+=2):e=[+e],{val:e,valueIndex:t}})(u,c)),a.pathData[o].values.push(...u)):(t&&u[1]&&"."!==u[1]&&"0"===u[0]&&(r=`${o}. command: Leading zeros not valid: ${u}`,a.log.push(r)),a.pathData[o].values.push(+u)),c++,u="",p=0,f=c>=y)},m=()=>{if(o>0){let e=a.pathData[o].values.length;if(e&&e<y||e&&e>y||("z"===i||"Z"===i)&&e>0){r=`${o}. command of type "${i}": ${y-e} values too few - ${y} expected`,a.log[a.log.length-1]!==r&&a.log.push(r)}}};let v=!1,b=!1,A=!1,M="";for(;n<s;){M=e.charCodeAt(n);let l=M>47&&M<58;if(l||(v=101===M||69===M,b=45===M||43===M,A=46===M),l||b||A||v){if(h||45!==M&&46!==M)d();else{let e=46===M;g(e),d(),e&&p++}u+=e[n],h=v,n++}else if((M<48||M>5759)&&st(M))g(),n++;else{if(M>64){if(!at.has(M)){r=`${o}. command "${e[n]}" is not a valid type`,a.log.push(r),n++;continue}""!==u&&(a.pathData[o].values.push(+u),c++,u=""),t&&m(),i=e[n],y=rt[M];let l="M"===i||"m"===i,s=o>0&&("z"===a.pathData[o].type||"Z"===a.pathData[o].type);x.add(i),s&&!l&&(a.pathData.push({type:"m",values:[0,0]}),o++),a.pathData.push({type:i,values:[]}),o++,p=0,c=0,f=!1,n++;continue}l||(r=`${o}. ${e[n]} is not a valid separarator or token`,a.log.push(r),u=""),n++}}g(),t&&m(),t&&a.log.length&&(r="Invalid path data:\n"+a.log.join("\n"),"log"===t||console.warn(r)),a.pathData[0].type="M";let w=Array.from(x).join("");return a.hasRelatives=/[lcqamtsvh]/g.test(w),a.hasShorthands=/[vhst]/gi.test(w),a.hasArcs=/[a]/gi.test(w),a.hasQuadratics=/[qt]/gi.test(w),a.isPolygon=!/[cqats]/gi.test(w),a}function ot(e,{toShorthands:t=!0,toLonghands:l=!1,toRelative:a=!0,toMixed:r=!1,toAbsolute:n=!1,decimals:s=3,arcToCubic:i=!1,quadraticToCubic:o=!1,hasRelatives:u=!0,hasShorthands:h=!0,hasQuadratics:p=!0,hasArcs:c=!0,isPoly:y=!1,optimizeArcs:f=!0,testTypes:x=!1}={}){let d=[];if(x){let t=Array.from(new Set(e.map(e=>e.type))).join("");/[lcqamts]/gi.test(t),p=/[qt]/gi.test(t),c=/[a]/gi.test(t),h=/[vhst]/gi.test(t),/[mlz]/gi.test(t)}if(a=!n&&a,t=!l&&t,n&&(e=yt(e)),h&&l&&(e=function(e,t=-1,l=!0){let a=!1;if(l){let t=e.map(e=>e.type).join(""),l=/[hstv]/gi.test(t);if(a=/[astvqmhlc]/g.test(t),!l)return e}e=l&&a?yt(e,t):e;let r=[],n={type:"M",values:e[0].values};r.push(n);for(let l=1,a=e.length;l<a;l++){let a,s,i,o,u,h,p,c,y=e[l],{type:f,values:x}=y,d=x.length,g=n.values,m=g.length,[v,b]=[x[d-2],x[d-1]],[A,M]=[g[m-2],g[m-1]];switch(f){case"H":n={type:"L",values:[x[0],M]};break;case"V":n={type:"L",values:[A,x[0]]};break;case"T":[a,s]=[g[0],g[1]],[A,M]=[g[m-2],g[m-1]],i=A+(A-a),o=M+(M-s),n={type:"Q",values:[i,o,v,b]};break;case"S":[a,s]=[g[0],g[1]],[A,M]=[g[m-2],g[m-1]],[p,c]=m>2&&"A"!==n.type?[g[2],g[3]]:[A,M],i=2*A-p,o=2*M-c,u=x[0],h=x[1],n={type:"C",values:[i,o,u,h,v,b]};break;default:n={type:f,values:x}}t>-1&&(n.values=n.values.map(e=>+e.toFixed(t))),r.push(n)}return r}(e)),f&&(e=function(e=[]){let t=e.length,l=[];for(let a=0;a<t;a++){let t=e[a],{type:r,values:n}=t;if("A"!==r){l.push(t);continue}let[s,i,o,u,h]=[n[0],n[1],n[3],n[5],n[6]],p=e[a-1],[c,y]=[p.values[p.values.length-2],p.values[p.values.length-1]],f={x:c,y:y},x={x:u,y:h};0!==s&&0!==i||(e[a]=null);let d=s/i,g=s!==i?Math.abs(1-d):0;if(g>.01){l.push(t);continue}t.values[2]=0;let m=.001*fe(f,x),v=Math.abs(u-c),b=Math.abs(h-y),A=b<m;if(A||v<m){(A?1.9*s>v:1.9*i>b)||(s=s>=1?1:s>.5?.5:s),t.values[0]=s,t.values[1]=s,l.push(t);continue}let M=.5*ce(f,x);g=s/M,g<.5&&(s=M>=1?1:M>.5?.5:M),t.values[0]=s,t.values[1]=s,l.push(t)}return l}(e)),t&&(e=function(e,t=-1,l=!1){let a;if(l){let t=e.map(e=>e.type).join("");a=/[astvqmhlc]/g.test(t)}e=l&&a?ct(e):e;let r=e.length,n=new Array(r),s=e[0];n[0]=s;let i={x:e[0].values[0],y:e[0].values[1]},o=i;for(let t=1;t<r;t++){let l=e[t];s=l;let{type:a,values:r}=l,u=r.length,h=[r[u-2],r[u-1]],p=e[t-1];o={x:h[0],y:h[1]};let c=Math.abs(o.x-i.x),y=Math.abs(o.y-i.y),f=.01*fe(i,o),x=!1,d=!1,g=!1;if("C"===a&&"C"===p.type||"Q"===a&&"Q"===p.type){let e="C"===p.type?{x:p.values[2],y:p.values[3]}:{x:p.values[0],y:p.values[1]},t={x:r[0],y:r[1]},l=i.x-e.x,a=i.y-e.y;f=.01*fe(e,t),x=fe({x:e.x+2*l,y:e.y+2*a},t)<f}else"L"===a&&(d=0===y||y<f,g=0===c||c<f,x=g||d);switch(a){case"L":d&&(s={type:"H",values:[r[0]]}),g&&(s={type:"V",values:[r[1]]});break;case"Q":x&&(s={type:"T",values:[o.x,o.y]});break;case"C":x&&(s={type:"S",values:[r[2],r[3],o.x,o.y]});break;default:s={type:a,values:r}}i=o,n[t]=s}return n}(e)),c&&i&&(e=function(e,{arcAccuracy:t=1}={}){let l=[e[0]];for(let a=1,r=e.length;a<r;a++){let r=e[a],n=e[a-1].values,s=n.length,i={x:n[s-2],y:n[s-1]};if("A"===r.type){xt(i,r.values,t).forEach(e=>{l.push(e)})}else l.push(r)}return l}(e)),p&&o&&(e=function(e){let t=[e[0]];for(let l=1,a=e.length;l<a;l++){let a=e[l],r=e[l-1].values,n=r.length,s={x:r[n-2],y:r[n-1]};"Q"===a.type?t.push(pt(s,a.values)):t.push(a)}return t}(e)),r&&(a=!0),s>-1&&a&&(e=Ce(e,s)),r&&(d=JSON.parse(JSON.stringify(e))),a&&(e=function(e,t=-1){return ct(e,!0,t)}(e)),s>-1&&(e=Ce(e,s)),r)for(let t=0;t<e.length;t++){let l=e[t],a=d[t],r=[l.type,l.values.join(" ")].join("").replaceAll(" -","-").replaceAll(" 0."," ."),n=[a.type,a.values.join(" ")].join("").replaceAll(" -","-").replaceAll(" 0."," ."),s=r.length;n.length<s&&(e[t]=d[t])}return e}function ut(e,{toAbsolute:t=!0,toLonghands:l=!0,quadraticToCubic:a=!1,arcToCubic:r=!1,arcAccuracy:n=4}={}){let s=Array.isArray(e),i=s&&"object"==typeof e[0]&&"function"==typeof e[0].constructor,o=s?e:it(e),{hasRelatives:u=!0,hasShorthands:h=!0,hasQuadratics:p=!0,hasArcs:c=!0}=o,y=i?o:o.pathData;return y=function(e=[],{toAbsolute:t=!0,toLonghands:l=!0,quadraticToCubic:a=!1,arcToCubic:r=!1,arcAccuracy:n=2,hasRelatives:s=!0,hasShorthands:i=!0,hasQuadratics:o=!0,hasArcs:u=!0,testTypes:h=!1}={}){return ot(e,{toAbsolute:t,toLonghands:l,quadraticToCubic:a,arcToCubic:r,arcAccuracy:n,hasRelatives:s,hasShorthands:i,hasQuadratics:o,hasArcs:u,testTypes:h,decimals:-1})}(y,{toAbsolute:t,toLonghands:l,quadraticToCubic:a,arcToCubic:r,arcAccuracy:n,hasRelatives:u,hasShorthands:h,hasQuadratics:p,hasArcs:c}),y}function ht(e={},t={},l={},a={},r=1){let n=_(e,t,1.5),s=_(a,l,1.5),i=.01*fe(e,a)*r,o=fe(n,s),u=null,h={type:"C",values:[t.x,t.y,l.x,l.y,a.x,a.y]};return o<i&&(u=J(e,t,a,l,!1,!0),u&&(h.type="Q",h.values=[u.x,u.y,a.x,a.y],h.p0=e,h.cp1=u,h.cp2=null,h.p=a)),h}function pt(e,t){Array.isArray(e)&&(e={x:e[0],y:e[1]});let l={x:e.x+2/3*(t[0]-e.x),y:e.y+2/3*(t[1]-e.y)},a={x:t[2]+2/3*(t[0]-t[2]),y:t[3]+2/3*(t[1]-t[3])};return{type:"C",values:[l.x,l.y,a.x,a.y,t[2],t[3]]}}function ct(e,t=!1,l=-1){l>=0&&(e[0].values=e[0].values.map(e=>+e.toFixed(l)));let a=e.length,r=e[0].values,n=r[0],s=r[1],i=n,o=s;for(let r=1;r<a;r++){let a=e[r],{type:u,values:h}=a,p=h.length,c=u.toLowerCase(),y=u.toUpperCase(),f=t?c:y;if(u!==f)switch(a.type=f,c){case"a":h[5]=t?h[5]-n:h[5]+n,h[6]=t?h[6]-s:h[6]+s;break;case"v":h[0]=t?h[0]-s:h[0]+s;break;case"h":h[0]=t?h[0]-n:h[0]+n;break;case"m":t?(h[0]-=n,h[1]-=s):(h[0]+=n,h[1]+=s),i=t?h[0]+n:h[0],o=t?h[1]+s:h[1];break;default:if(h.length)for(let e=0;e<h.length;e++)h[e]=t?h[e]-(e%2?s:n):h[e]+(e%2?s:n)}switch(c){case"z":n=i,s=o;break;case"h":n=t?n+h[0]:h[0];break;case"v":s=t?s+h[0]:h[0];break;case"m":i=h[p-2]+(t?n:0),o=h[p-1]+(t?s:0);default:n=h[p-2]+(t?n:0),s=h[p-1]+(t?s:0)}l>=0&&(a.values=a.values.map(e=>+e.toFixed(l)))}return e}function yt(e,t=-1){return ct(e,!1,t)}function ft({p0:e={x:0,y:0},p:t={x:0,y:0},centroid:l={x:0,y:0},rx:a=0,ry:r=0,xAxisRotation:n=0,radToDegree:s=!1,startAngle:i=null,endAngle:o=null,deltaAngle:u=null}={}){if(!a||!r)return[];let h=[];const p=1.5707963267948966;let c=s?n:n*Math.PI/180,y=Math.cos(c),f=Math.sin(c);null!==i&&null!==o&&null!==u||({startAngle:i,endAngle:o,deltaAngle:u}=X(l,e,t));let x=a!==r?re(i,a,r):i,d=a!==r?re(u,a,r):u,g=Math.max(1,Math.ceil(Math.abs(d)/p)),m=d/g;for(let e=0;e<g;e++){const e=Math.abs(m)===p?.551785*Math.sign(m):4/3*Math.tan(m/4);let t=Math.cos(x),n=Math.sin(x),s=Math.cos(x+m),i=Math.sin(x+m),o=[];[{x:t-n*e,y:n+t*e},{x:s+i*e,y:i-s*e},{x:s,y:i}].forEach(e=>{let t=e.x*a,n=e.y*r;o.push(y*t-f*n+l.x,f*t+y*n+l.y)}),h.push({type:"C",values:o,cp1:{x:o[0],y:o[1]},cp2:{x:o[2],y:o[3]},p:{x:o[4],y:o[5]}}),x+=m}return h}function xt(e,t,l=1){const a=2*Math.PI;let[r,n,s,i,o,u,h]=t;if(0===r||0===n)return[];let p=s?s*a/360:0,c=p?Math.sin(p):0,y=p?Math.cos(p):1,f=y*(e.x-u)/2+c*(e.y-h)/2,x=-c*(e.x-u)/2+y*(e.y-h)/2;if(0===f&&0===x)return[];r=Math.abs(r),n=Math.abs(n);let d=f*f/(r*r)+x*x/(n*n);if(d>1){let e=Math.sqrt(d);r*=e,n*=e}let g=r*r,m=r===n?g:n*n,v=f*f,b=x*x,A=g*m-g*b-m*v;A<=0?A=0:(A/=g*b+m*v,A=Math.sqrt(A)*(i===o?-1:1));let M=A?A*r/n*x:0,w=A?A*-n/r*f:0,C=y*M-c*w+(e.x+u)/2,S=c*M+y*w+(e.y+h)/2,k=(f-M)/r,E=(x-w)/n,P=(-f-M)/r,D=(-x-w)/n;const T=(e,t,l,a)=>{let r=+(e*l+t*a).toFixed(9);return 1===r||-1===r?1===r?0:Math.PI:(r=r>1?1:r<-1?-1:r,(e*a-t*l<0?-1:1)*Math.acos(r))};let L=T(1,0,k,E),$=T(k,E,P,D);0===o&&$>0?$-=2*Math.PI:1===o&&$<0&&($+=2*Math.PI);let N=(+(Math.abs($)/(a/4)).toFixed(0)||1)*l;$/=N;let q=[];const I=1.5707963267948966,j=.551785;let z=$===I?j:$===-I?-j:4/3*Math.tan($/4),B=$?Math.cos($):1,F=$?Math.sin($):0;const O=(e,t,l,a,r)=>{let n=e!=t?Math.cos(e):a,s=e!=t?Math.sin(e):r,i=Math.cos(e+t),o=Math.sin(e+t);return[{x:n-s*l,y:s+n*l},{x:i+o*l,y:o-i*l},{x:i,y:o}]};for(let e=0;e<N;e++){let e={type:"C",values:[]};O(L,$,z,B,F).forEach(t=>{let l=t.x*r,a=t.y*n;e.values.push(y*l-c*a+C,c*l+y*a+S)}),q.push(e),L+=$}return q}function dt(e,{areaThreshold:t=2.5}={}){for(let l=0,a=e.length;l<a;l++){let a=e[l],r=e[l+1]||null,{type:n,values:s,p0:i,cp1:o=null,cp2:u=null,p:h=null}=a;if("C"===n&&r&&"C"===r.type){let a=gt(i,o,u,h,t),n=gt(r.p0,r.cp1,r.cp2,r.p,t);if(a.isArc&&n.isArc){let t=.01*fe(i,r.p),s=Math.abs(r.p.x-i.x),o=Math.abs(r.p.y-i.y),u=o<t&&s>t,p=s<t&&o>t,{rx:c,ry:y}=a,f=Xe([i,h,r.p])<0?0:1;if(p||u){c=Math.min(c,n.rx),y=Math.min(y,n.ry),e[l]=null,e[l+1].type="A",e[l+1].values=[c,y,0,0,f,r.p.x,r.p.y];continue}}}}return e=e.filter(Boolean)}function gt(e,t,l,a,r=7.5){let n,s={type:"C",values:[t.x,t.y,l.x,l.y,a.x,a.y]},i=0,o=!1,u=Z(e,t,!0),h=Z(a,l,!0),p=180*Math.abs(u-h)/Math.PI,c=0,y=0;if(Math.abs(p%180-90)<3){n=J(e,le(t,e.x,e.y,-.5*Math.PI),a,le(l,a.x,a.y,.5*Math.PI),!1);let u=J(e,t,a,l,!1);if(u){let n=ce(e,u),h=ce(a,u),p=+Math.max(n,h).toFixed(8),f=+Math.min(n,h).toFixed(8);c=f,y=p;let x=Xe([e,t,l,a])<0?0:1,d=Math.abs(a.x-e.x)>Math.abs(a.y-e.y);100/c*Math.abs(c-y)<5&&(c=p,y=c),d&&(c=p,y=f);let g=Ze([{type:"M",values:[e.x,e.y]},{type:"C",values:[t.x,t.y,l.x,l.y,a.x,a.y]}]),m={type:"A",values:[c,y,0,0,x,a.x,a.y]};i=Math.PI*(c*y)/4,i-=Math.abs(Xe([e,a,u])),function(e,t){let l=Math.abs(e-t);return Math.abs(100-100/e*(e+l))}(g,i)<r&&(o=!0,s=m)}}return{com:s,isArc:o,area:i,rx:c,ry:y,centroid:n}}function mt(e=null,{autoRoundValues:t=!0,decimals:l=-1}={}){if(!e)return!1;let a=e.hasAttribute("width"),r=e.hasAttribute("height"),n=e.hasAttribute("viewBox"),s=a?e.getAttribute("width"):0,i=r?e.getAttribute("height"):0,o=s?s.includes("%")?0:Oe(s,{isHorizontal:!0}):300,u=i?i.includes("%")?0:Oe(i,{isVertical:!0}):150,h=n?e.getAttribute("viewBox").split(/,| /).filter(Boolean).map(Number):[0,0,o,u];t?([o,u]=[o,u].map(e=>Ee(e)),h=h.map(e=>Ee(e))):!t&&l>-1&&([o,u]=[o,u].map(e=>+e.toFixed(l)),h=h.map(e=>+e.toFixed(l)));let[p=0,c=0,y=0,f=0]=h;return n&&(o=y,u=f),{x:p,y:c,width:y,height:f,w:o,h:u,hasViewBox:n,hasWidth:a,hasHeight:r,widthUnit:"",heightUnit:""}}function vt(e,t){let l=[];const a=(e,t)=>{let{a:l,b:a,c:r,d:n,e:s,f:i}=t,{x:o,y:u}=e;return{x:l*o+r*u+s,y:a*o+n*u+i}},r=(e,t,l)=>{let[r,n,s,i,o,u,h]=t,p=te(e.x,e.y,t[0],t[1],s,i,o,u,h);({rx:r,ry:n}=p);let{a:c,b:y,c:f,d:x,e:d,f:g}=l,m=function(e,t,l,a){const r=Math.PI/180,n=1e-7;a=Array.isArray(a)?{a:a[0],b:a[1],c:a[2],d:a[3],e:a[4],f:a[5]}:a;let s=Math.cos(l*r),i=Math.sin(l*r),o=[e*(a.a*s+a.c*i),e*(a.b*s+a.d*i),t*(-a.a*i+a.c*s),t*(-a.b*i+a.d*s)],u=o[0]*o[0]+o[2]*o[2],h=o[1]*o[1]+o[3]*o[3],p=Math.sqrt(((o[0]-o[3])*(o[0]-o[3])+(o[2]+o[1])*(o[2]+o[1]))*((o[0]+o[3])*(o[0]+o[3])+(o[2]-o[1])*(o[2]-o[1]))),c=(u+h)/2;if(p<=n)return{rx:e=t=Math.sqrt(c),ry:t,ax:l=0};if(Math.abs(p-Math.abs(u-h))<=n)return{rx:e=Math.sqrt(u),ry:t=Math.sqrt(h),ax:l=0};let y=o[0]*o[1]+o[2]*o[3],f=c+p/2,x=c-p/2;if(Math.abs(y)<=n&&Math.abs(f-h)<=n)return l=0,{rx:e=Math.sqrt(x),ry:t=Math.sqrt(f),ax:l};(l=Math.atan(Math.abs(y)>Math.abs(f-h)?(f-u)/y:y/(f-h))/r)>=0?(e=Math.sqrt(f),t=Math.sqrt(x)):(l+=90,e=Math.sqrt(x),t=Math.sqrt(f));return{rx:e,ry:t,ax:l}}(r,n,s,l),v=a({x:u,y:h},l),b=c*c+y*y,A=Math.sqrt(b);return(A<0||(c*x-f*y)/A<0)&&(o=0===o?1:0),{type:"A",values:[m.rx,m.ry,m.ax,i,o,v.x,v.y]}};return"100100"===[(t=(e=>(e="string"==typeof e?e=e.replace(/^matrix\(|\)$/g,"").split(",").map(Number):e,e=Array.isArray(e)?{a:e[0],b:e[1],c:e[2],d:e[3],e:e[4],f:e[5]}:{a:e.a,b:e.b,c:e.c,d:e.d,e:e.e,f:e.f}))(t)).a,t.b,t.c,t.d,t.e,t.f].map(e=>+e.toFixed(1)).join("")?e:(e.forEach((n,s)=>{let{type:i,values:o}=n,u=i.toLowerCase(),h=(s>0?e[s-1]:e[s]).values,p=h.length,c={x:h[p-2],y:h[p-1]};o[o.length-2],o[o.length-1];let y={type:i,values:[]};if("a"===u)y=r(c,o,t);else if(o.length)for(let e=0;e<o.length;e+=2){let l=a({x:n.values[e],y:n.values[e+1]},t);y.values[e]=l.x,y.values[e+1]=l.y}l.push(y)}),l)}function bt(e,{width:t=0,height:l=0,convertShapes:a=[],matrix:r=null}={}){let n=e.nodeName.toLowerCase();if(!a.includes(n))return e;let s=function(e,{stringify:t=!1,width:l=0,height:a=0}={}){let r,n,s,i,o,u,h,p,c,y,f,x,d=[],g=e.nodeName.toLowerCase();if(!l||!a){let t=function(e){let t=e.parentNode.closest("svg");for(;t&&t.parentNode&&t.parentNode.closest;){let e=t.parentNode.closest("svg");if(!e)break;t=e}return t}(e),r=mt(t);l=r.width,a=r.height}let m=function(e,{width:t=0,height:l=0,fontSize:a=16,dpi:r=96,autoRoundValues:n=!1,decimals:s=-1}={}){let i=[...e.attributes].map(e=>e.name),o=[];i.forEach(t=>{o.push(e.getAttribute(t))});let u=t===l,h={};return i.forEach((a,r)=>{let s=De.includes(a),i=Te.includes(a),p=!u&&"r"===a,c=Oe(o[r],{isHorizontal:s,isVertical:i,width:t,height:l,normalizedDiagonal:p,autoRoundValues:n});h[a]=c,e.setAttribute(a,c)}),h}(e,{width:l,height:a});switch(g){case"path":r=e.getAttribute("d"),d=ut(r);break;case"rect":({x:n=0,y:s=0,width:l=0,height:a=0,rx:o=0,ry:u=0}=m),d=At(n,s,l,a,o,u);break;case"circle":case"ellipse":({cx:h=0,cy:p=0,r:i,rx:o,ry:u}=m);let t="circle"===g;t?(o=i,u=i):(o=o||i,u=u||i);let v=t&&i>=1?1:o,b=t&&i>=1?1:u;d=[{type:"M",values:[h+o,p]},{type:"A",values:[v,b,0,1,1,h-o,p]},{type:"A",values:[v,b,0,1,1,h+o,p]}];break;case"line":({x1:c,y1:f,x2:y,y2:x}=m),d=[{type:"M",values:[c,f]},{type:"L",values:[y,x]}];break;case"polygon":case"polyline":let A=e.getAttribute("points").split(/,| /).filter(Boolean).map(Number);for(let e=0;e<A.length;e+=2)d.push({type:0===e?"M":"L",values:[A[e],A[e+1]]});"polygon"===g&&d.push({type:"Z",values:[]})}return t?function(e){return e.map(e=>`${e.type} ${e.values.join(" ")}`).join(" ")}(d):d}(e,{width:t,height:l}),i=["d","x","y","x1","y1","x2","y2","cx","cy","dx","dy","r","rx","ry","width","height","points"];r&&"100100"!==Object.values(r).join("")&&(s=vt(s,r),i.push("transform","transform-origin"));let o=s.map(e=>`${e.type} ${e.values} `).join(" "),u=[...e.attributes].map(e=>e.name),h=document.createElementNS(C,"path");return h.setAttribute("d",o),u.forEach(t=>{if(!i.includes(t)){let l=e.getAttribute(t);h.setAttribute(t,l)}}),h}function At(e=0,t=0,l=0,a=0,r=0,n=0){let s=[];return r||n?(r=r||n,n=n||r,r>l/2&&(r=l/2),n>a/2&&(n=a/2),s=[{type:"M",values:[e+r,t]},{type:"L",values:[e+l-r,t]},{type:"A",values:[r,n,0,0,1,e+l,t+n]},{type:"L",values:[e+l,t+a-n]},{type:"A",values:[r,n,0,0,1,e+l-r,t+a]},{type:"L",values:[e+r,t+a]},{type:"A",values:[r,n,0,0,1,e,t+a-n]},{type:"L",values:[e,t+n]},{type:"A",values:[r,n,0,0,1,e+r,t]},{type:"Z",values:[]}]):s=[{type:"M",values:[e,t]},{type:"L",values:[e+l,t]},{type:"L",values:[e+l,t+a]},{type:"L",values:[e,t+a]},{type:"Z",values:[]}],s}function Mt(e,{convertShapes:t=[]}={}){let l=ut(e.getAttribute("d")),a=Array.from(new Set(l.map(e=>e.type))).join(""),r=/[a]/gi.test(a),n=/[csqt]/gi.test(a),s=/[l]/gi.test(a),i=!/[acqts]/gi.test(a),o=/[z]/gi.test(a),u=null,h=null,p=Ve(e),c={};if(i)if(2===l.length&&t.includes("line")){h="line",u=document.createElementNS(C,h);let[e,t,a,r]=[...l[0].values,...l[1].values].map(e=>ke(e,7));c={x1:e,y1:t,x2:a,y2:r}}else{let e=ee(l),a=Ge(e),r=Xe(e,!0),n=a.width*a.height,s=Math.abs(1-n/r);if(t.includes("rect")&&s<.01){h="rect",u=document.createElementNS(C,h);let{x:e,y:t,width:l,height:r}=a;c={x:e,y:t,width:l,height:r}}else if(t.includes("polygon")||t.includes("polyline")){h=o?"polygon":"polyline",u=document.createElementNS(C,h),c={points:e.map(e=>[e.x,e.y]).flat().map(e=>ke(e,7)).join(" ")}}}else if(!s&&(t.includes("circle")||t.includes("ellipse"))&&(!r&&n&&(l=dt(l,{areaThreshold:2.5}),r=l.filter(e=>"A"===e.type).length),r)){let e=lt(l,{addArcParams:!0}),t=e.filter(e=>"A"===e.type),a=new Set,r=new Set,n=new Set,s=new Set;if(t.length>1&&e.forEach(e=>{"A"===e.type&&(a.add(ke(e.cx,7)),r.add(ke(e.cy,7)),n.add(ke(e.rx,7)),s.add(ke(e.ry,7)))}),a=Array.from(a),r=Array.from(r),n=Array.from(n),s=Array.from(s),1===a.length&&1===r.length&&1===n.length&&1===s.length){let[e,t,l,i]=[n[0],s[0],a[0],r[0]];h=e===t?"circle":"ellipse",u=document.createElementNS(C,h),c="circle"===h?{r:e,cx:l,cy:i}:{rx:e,ry:t,cx:l,cy:i}}}if(u){let t=["id","class"];for(let e in c)u.setAttribute(e,c[e]);for(let e in p)(Fe.atts[e].includes(h)||t.includes(e)||e.startsWith("data-"))&&u.setAttribute(e,p[e]);e=u}return e}function wt(e,{tolerance:t=1,flatBezierToLinetos:l=!0}={}){let a=[e[0]],r={x:e[0].values[0],y:e[0].values[1]},n=r,s=r;e[e.length-1].type.toLowerCase();for(let i=1,o=e.length;i<o;i++){let u=e[i],h=e[i+1]||e[o-1],p="z"===h.type.toLowerCase()?r:{x:h.values[h.values.length-2],y:h.values[h.values.length-1]},{type:c,values:y}=u,f=y.slice(-2);s="Z"!==c?{x:f[0],y:f[1]}:r;let x=p?Xe([n,s,p],!0):1/0,d=ye(n,p),g=x<(d?d/333*t:0),m=!1;if(l||"C"!==c||(g=!1),l&&("C"===c||"Q"===c)){m=et([n,..."C"===c?[{x:y[0],y:y[1]},{x:y[2],y:y[3]}]:"Q"===c?[{x:y[0],y:y[1]}]:[],s],{tolerance:t}),m&&i<o-1&&(c="L",u.type="L",u.values=f)}g&&i<o-1&&"A"!==h.type&&("L"===c||l&&m)||(n=s,"M"===c&&(r=s),a.push(u))}return a}function Ct(e){let t=[];for(let l=0,a=e.length;l<a;l++){let a=e[l];if(!a)continue;let{type:r=null,values:n=[]}=a,s=e[l+1]?e[l+1]:null;"M"!==r&&"m"!==r||s&&(!s||"Z"!==s.type&&"z"!==s.type)?t.push(a):s&&l++}return t}function St(e){let t={x:e[0].values[0],y:e[0].values[1]},l=t,a=[e[0]];for(let r=1,n=e.length;r<n;r++){let n=e[r],s=e[r-1],i=e[r+1]||null,{type:o,values:u}=n,h="m"===s.type.toLowerCase()&&!i,p=u.length;if(l={x:u[p-2],y:u[p-1]},h||"L"!==o||l.x!==t.x||l.y!==t.y){if(!h&&("l"===o||"v"===o||"h"===o)){if("l"===o?"00"===u.join(""):0===u[0])continue}a.push(n),t=l}}return a}function kt(e){let t=e.length;if(!("z"===e[t-1].type.toLowerCase()))return e;let l=0,a=[];for(let l=0;l<t;l++){let t=e[l],{type:r,values:n}=t,s=n.length;if(s){let e={type:r,x:+n[s-2].toFixed(8),y:+n[s-1].toFixed(8),index:0};e.index=l,a.push(e)}}return a=a.sort((e,t)=>e.y-t.y||e.x-t.x),l=a[0].index,l?Pt(e,l):e}function Et(e,{removeFinalLineto:t=!0,autoClose:l=!0}={}){let a=e,r=e.length,n={x:+e[0].values[0].toFixed(8),y:+e[0].values[1].toFixed(8)},s="z"===e[r-1].type.toLowerCase(),i=!1,o=s?r-2:r-1,u=e[o],h=u.type,p=u.values.slice(-2).map(e=>+e.toFixed(8)),c=p[0]===n.x&&p[1]===n.y,y="L"===h,f=[];for(let t=0;t<r;t++){let l=e[t],{type:a,values:r,p0:n,p:s}=l;if("L"===a&&(i=!0),r.length){r.slice(-2);let l={type:a,x:Math.min(n.x,s.x),y:Math.min(n.y,s.y),index:0,prevType:(e[t-1]?e[t-1]:e[o]).type};l.index=t,f.push(l)}}let x=1/0,d=1/0,g=null,m=f.length;for(let e=0;e<m;e++){let t=f[e],{type:l,index:a,x:r,y:n,prevType:s}=t;i&&"L"===s&&(r<x&&n<d&&(g=a-1),n<d&&(d=n),r<x&&(x=r))}return g&&(a=Pt(a,g),r=a.length,n={x:+a[0].values[0].toFixed(8),y:+a[0].values[1].toFixed(8)},o=s?r-2:r-1,u=a[o],h=u.type,p=u.values.slice(-2).map(e=>+e.toFixed(8)),y="L"===h,c=p[0]===n.x&&p[1]===n.y),t&&c&&y&&a.splice(r-2,1),l&&!s&&c&&a.push({type:"Z",values:[]}),a}function Pt(e,t){let l=0,a="z"===e[e.length-1].type.toLowerCase();if(!a||t<1||e.length<3)return e;let r=a?1:0;!function(e){let t=e.length,l="z"===e[t-1].type.toLowerCase(),a=e[0],[r,n]=[a.values[0],a.values[1]].map(e=>+e.toFixed(8)),s=l?e[t-2]:e[t-1],i=s.values.length,[o,u]=[s.values[i-2],s.values[i-1]].map(e=>+e.toFixed(8));!l||r==o&&n==u||(e.pop(),e.push({type:"L",values:[r,n]},{type:"Z",values:[]}))}(e),l=t+1<e.length-1?t+1:e.length-1-r;let n,s,i=e.slice(l),o=e.slice(0,l);return o.shift(),n=o[o.length-1].values||[],s=[n[n.length-2],n[n.length-1]],r&&(i.pop(),o.push({type:"Z",values:[]})),e=[{type:"M",values:s},...i,...o]}function Dt(e,{arcToCubic:t=!1,quadraticToCubic:l=!1,toClockwise:a=!1,returnD:r=!1}={}){const n=(e,t)=>{let l=[],a=[];if("A"!==e){for(let e=0;e<t.length;e+=2)l.push([t[e],t[e+1]]);a=l.pop(),l.reverse()}else{let e=0==t[4]?1:0;l=[t[0],t[1],t[2],t[3],e],a=[t[5],t[6]]}return{controlPoints:l,endPoints:a}};let s=[],i="z"===e[e.length-1].type.toLowerCase();i&&(e=(e=>{let t="z"===e[e.length-1].type.toLowerCase(),l=e[0],[a,r]=[l.values[0],l.values[1]],n=t?e[e.length-2]:e[e.length-1],[s,i]=[n.values[n.values.length-2],n.values[n.values.length-1]];return!t||a==s&&r==i||(e.pop(),e.push({type:"L",values:[a,r]},{type:"Z",values:[]})),e})(e),e.pop());let o=e[e.length-1].values,u=o.length,h=i?e[0]:{type:"M",values:[o[u-2],o[u-1]]};s.push(h),e.reverse();for(let t=1;t<e.length;t++){let l=e[t],a=l.type,r=l.values,i=e[t-1],o=i.type,u=[];u=[n(o,i.values).controlPoints,n(a,r).endPoints].flat(),s.push({type:o,values:u.flat()})}return i&&s.push({type:"z",values:[]}),s}function Tt(e,{threshold:t=null,tolerance:l=1}={}){if(!t){let l=function(e){let t=1/0,l=-1/0,a=1/0,r=-1/0;const n=e=>{e.x<t&&(t=e.x),e.x>l&&(l=e.x),e.y<a&&(a=e.y),e.y>r&&(r=e.y)};for(let t=0;t<e.length;t++){let l=e[t],{type:a,values:r}=l,s=r.length,i=(e[t-1]?e[t-1]:e[t]).values,o=i.length;if(s){let e={x:i[o-2],y:i[o-1]},t={x:r[s-2],y:r[s-1]};if(n(t),"C"===a||"Q"===a){let l={x:r[0],y:r[1]},s="C"===a?{x:r[2],y:r[3]}:l,i="C"===a?[e,l,s,t]:[e,l,t];se(i).forEach(e=>{let t=K(i,e);n(t)})}else"A"===a&&ie(e,r).forEach(e=>{n(e)})}}return{x:t,y:a,width:l-t,height:r-a}}(e);t=.05*(l.width+l.height)}let a=e.length;for(let r=0;r<a;r++){let a=e[r],{type:n,values:s,extreme:i,corner:o=!1,dimA:u,p0:h,p:p}=a,c=e[r+1]?e[r+1]:null,y=e[r+2]?e[r+2]:null,f=(c?fe(p,c.p):1/0)<t,x=(y?fe(y.p,c.p):1/0)<1*t;if(c&&y&&"C"===n&&"C"===c.type&&i&&y.extreme&&(x||f)){let a=Ye(c,y,t,l,!1);if(1===a.length){a=a[0],e[r+1]=null,e[r+2].values=[a.cp1.x,a.cp1.y,a.cp2.x,a.cp2.y,a.p.x,a.p.y],e[r+2].cp1=a.cp1,e[r+2].cp2=a.cp2,e[r+2].p0=a.p0,e[r+2].p=a.p,e[r+2].extreme=a.extreme,r++;continue}}if(c&&"C"===n&&"C"===c.type&&i&&f){let e=Xe([a.p0,a.p,c.p]),t=Xe([a.p0,a.cp1,a.cp2,a.p]);if(e<0&&t>0||e>0&&t<0)continue}}a=(e=e.filter(Boolean)).length;let r="z"===e[a-1].type.toLowerCase()?a-2:a-1,n=e[r],s=e[r-1]||null,i={x:e[0].values[0],y:e[0].values[1]},o=n.values.slice(-2),u=+o[0].toFixed(8)===+i.x.toFixed(8)&&+o[1].toFixed(8)===+i.y.toFixed(8),h="C"===e[1].type&&e[1].extreme?e[1]:null,p=fe(n.p0,n.p)<t;if(s&&"C"===s.type&&p&&u&&h){let a=Ye(s,n,t,l,!1);1===a.length&&(e[r-1]=a[0],e[r]=null,e=e.filter(Boolean))}return e}function Lt(e,{toObject:t=!0,toArray:l=!1,flatten:a=!1}={}){if("string"==typeof e&&!isNaN(e[0]))return e=Nt(e.split(/,| /).filter(Boolean).map(Number));a&&(e=e.flat(2));let r=l?$t(e):function(e=[]){if(!e.length)return[];if(void 0!==e[0].x&&void 0!==e[0].y)return e;let t=[];if(Array.isArray(e[0])&&void 0!==e[0][0].x&&void 0!==e[0][0].y)return e;if(Array.isArray(e[0][0])&&2===e[0][0].length)return e.forEach(e=>{t.push(e.map(e=>({x:e[0],y:e[1]})))}),t;if(e.length>3)return e=Nt(e);return e.map(e=>({x:e[0],y:e[1]}))}(e);return r}function $t(e){if(!Array.isArray(e[0][0])&&2===e[0].length)return e;let t=[];return Array.isArray(e[0][0])&&2===e[0][0].length?(e.forEach(e=>{t.push(e.map(e=>[e.x,e.y]))}),t):(t=Array.from(e).map(e=>[e.x,e.y]),t)}function Nt(e){let t=[];if(2===e[0].length)for(let l=0,a=e.length;l<a;l++){let a=e[l];t.push({x:a[0],y:a[1]})}else for(let l=1,a=e.length;l<a;l+=2)t.push({x:e[l-1],y:e[l]});return t}function qt(e,{fontSize:t=16,removeNameSpaced:l=!0,autoRoundValues:a=!1,minifyRgbColors:r=!1,removeInvalid:n=!0,allowDataAtts:s=!0,allowAriaAtts:i=!0,removeDefaults:o=!0,cleanUpStrokes:u=!0,normalizeTransforms:h=!0,removeIds:p=!1,removeClassNames:c=!1,include:y=[],exclude:f=[],width:x=0,height:d=0,stylesheetProps:g={}}={}){let m=e.nodeName.toLowerCase(),v=function(e){let t={},l=[...e.attributes].map(e=>e.name),a=l.length;if(!a)return t;for(let r=0;r<a;r++){let a=l[r],n=e.getAttribute(a);if("transform"===a){let e=[],t=n.split(/(\w+)\(([^)]+)\)/).map(e=>e.trim()).filter(Boolean);for(let l=1;l<t.length;l+=2){let a=t[l-1],r=t[l],n=r.split(/,| /).map(e=>Re(e.trim())).filter(Boolean);n.length||e.push(`${a}(${r})`)}n=e.join(" ")}t[a]=n.trim()}return t}(e),b=function(e){let t=e.getAttribute("style"),l=t?function(e=""){let t={};if(!e)return t;let l=e.split(";").filter(Boolean).map(e=>e.trim()),a=l.length;if(!a)return t;for(let e=0;a&&e<a;e++){let a=l[e],[r,n]=a.split(":").filter(Boolean);t[r]=n}return t}(t):{};return l}(e),A=e.cssRules||[],M={};A.forEach(e=>{for(let t in g[e]){let l=g[e][t];if(l.startsWith("var(")){let e=l.replace(/[var\(|\)]/g,"").trim();g[":root"]&&(l=`var(${e}, ${g[":root"][e]})`)}M[t]=l}});let w={...v,...M,...b};delete w.style,delete w.class,delete w.id,f.push("style","class","id");let C=["style"];if(n||o||l){let e=jt(m,w,{allowDataAtts:s,allowAriaAtts:i,removeIds:p,removeClassNames:c,removeDefaults:o,removeNameSpaced:l,exclude:f,cleanUpStrokes:u,include:[...["scale","translate","rotate"],...y],cleanUpStrokes:!1});w=e.propsFiltered,C.push(...e.remove)}let S=[];for(let e in w){let t=w[e];if("d"===e||e.startsWith("data-"))continue;let l={prop:e,values:[]};if(r&&Ne.includes(e)){let e=Me(t);if("rgba"===e.mode||"rgb"===e.mode){t=we(e)}}if("transform"===e){let e=[],l=t.split(/(\w+)\(([^)]+)\)/).map(e=>e.trim()).filter(Boolean);for(let t=1;t<l.length;t+=2){let a=l[t-1],r=Le.includes(a),n=$e.includes(a);r&&(a=a.replace("X","")),n&&(a=a.replace("Y",""));let s=l[t].split(/,| /).filter(Boolean),i={fn:a,values:[]};for(let e=0;e<s.length;e++){let t=zt(s[e]);i.values.push(...t)}let o=a.startsWith("scale")?1:0,u=a.startsWith("scale")?1:0;r&&(i.values=[i.values[0],{value:o,unit:"",numeric:!0}]),n&&(i.values=[{value:u,unit:"",numeric:!0},i.values[0]]),e.push(i)}e.length&&S.push({prop:"transforms",values:e})}else l.values=zt(t);l.values.length&&S.push(l)}let k={transformArr:[],matrix:null,transComponents:null},E=[],P=!1;for(let e=0;e<S.length;e++){let l=S[e],{prop:r,values:n}=l,s=[],i=0,o=0,u="",h="";if("transforms"!==r){if("stroke-dasharray"===r||"stroke-dashoffset"===r){P=!0;for(let e=0;e<n.length;e++){let l=Oe(n[e].value,{unit:n[e].unit,width:x,height:d,normalizedDiagonal:P,fontSize:t,autoRoundValues:a});s.push(l)}}else if("transform-origin"===r)n.forEach((e,t)=>{let l=e.value;"left"===l?n[t].value=0:"right"===l?n[t].value=x:"top"===l?n[t].value=0:"bottom"===l?n[t].value=d:"center"===l&&(n[t].value="50%")}),i=n[0].value,o=n[1]?n[1].value:i,u=n[0].unit,h=n[1]?n[1].unit:u,i=Oe(i,{unit:u,width:x,height:d,isHorizontal:!0,fontSize:t}),o=Oe(o,{unit:h,width:x,height:d,isVertical:!0,fontSize:t}),E.push(i,o);else for(let e=0;e<n.length;e++){let l=n[e],i=l.unit,o=l.value,u=l.numeric,h=De.includes(r),p=Te.includes(r);i&&("scale"===r&&"%"===i?o*=.01:("r"===r&&x!==d&&(P=!0),o=Oe(l.value,{unit:i,width:x,height:d,isHorizontal:h,isVertical:p,normalizedDiagonal:P,fontSize:t}),a&&u&&(o=Ee(o)))),s.push(o)}s.length&&(k[r]=s)}else{let e=n||[],l=e.length,a=[];for(let r=0;l&&r<l;r++){let{fn:l,values:n}=e[r],s=[],i="",o="",u=[],h=0,p=0,c={};if("scale"!==l&&"translate"!==l||(h=n[0].value,p=n[1]?n[1].value:h,i=n[0].unit,o=n[1]?n[1].unit:i,"scale"===l?(h="%"===i?.01*h:h,p="%"===o?.01*p:p):(h=Oe(h,{unit:i,width:x,height:d,isHorizontal:!0,fontSize:t}),p=Oe(p,{unit:o,width:x,height:d,isVertical:!0,fontSize:t})),s.push(h,p),c[l]=s,u.push(c)),"matrix"===l&&(s=n.map(e=>e.value),c[l]=s,u.push(c)),"skew"===l&&(h=n[0].value,i=n[0].unit,p=n[1].value,o=n[1].unit,h=Oe(h,{unit:i,isHorizontal:!0,fontSize:t}),p=Oe(p,{unit:o,isVertical:!0,fontSize:t}),h=h>360?h%360:h,p=p>360?p%360:p,s=[h,p],c[l]=s,u.push(c)),"rotate"===l){let e=n[0].value;e=Oe(e,{unit:n[0].unit});let t=[];if(3===n.length){let e=n[1].value,l=n[2].value;t.push({translate:[e,l]},{translate:[-e,-l]})}c[l]=[e],t.length?u.push(t[0],c,t[1]):u.push(c)}a.push(...u)}k.transformArr=a}}let D=void 0!==k.translate?{translate:k.translate}:null,T=void 0!==k.scale?{scale:k.scale}:null,L=[D,void 0!==k.rotate?{rotate:k.rotate}:null,T].filter(Boolean);L.length&&(h&&C.push("translate","scale","rotate"),k.transformArr=[...L,...k.transformArr]),E.length&&void 0!==k.transformArr&&(k.transformArr=[{translate:[E[0],E[1]]},...k.transformArr,{translate:[-E[0],-E[1]]}],h&&C.push("transform-origin"));let{transformArr:$=[]}=k,N=[],q=$.length;if(q)for(let e=0;q&&e<q;e++){let t=$[e],l=Object.values(t).flat(),a=Object.keys(t)[0];"skew"===a?(l[0]&&N.push(`skewX(${l[0]})`),l[1]&&N.push(`skewY(${l[1]})`)):N.push(`${a}(${l.join(" ")})`)}return k.remove=C,k.type=m,k}function It(e={},t=[]){if(void 0===e.transformArr||!t.length)return;let l=function(e=[]){const t=(e,t)=>({a:e.a*t.a+e.c*t.b,b:e.b*t.a+e.d*t.b,c:e.a*t.c+e.c*t.d,d:e.b*t.c+e.d*t.d,e:e.a*t.e+e.c*t.f+e.e,f:e.b*t.e+e.d*t.f+e.f}),l=(e,t)=>({a:1,b:0,c:0,d:1,e:e,f:t}),a=(e,t)=>({a:e,b:0,c:0,d:t,e:0,f:0}),r=(e,t)=>{let[l,a=0]=e.map(e=>e*w),r={};if("rot"===t){let e=Math.cos(l),t=Math.sin(l);r={a:e,b:t,c:-t,d:e,e:0,f:0}}else if("skew"===t){let e=Math.tan(l);r={a:1,b:Math.tan(a),c:e,d:1,e:0,f:0}}return r};let n={a:1,b:0,c:0,d:1,e:0,f:0};for(let s=0;s<e.length;s++){let i=e[s],o=Object.keys(i)[0],u=i[o],[h,p]=u;switch(o){case"matrix":let e=["a","b","c","d","e","f"],s=Object.fromEntries(e.map((e,t)=>[e,u[t]]));n=t(n,s);break;case"translate":n=t(n,l(h,p));break;case"skew":n=t(n,r([h,p],"skew"));break;case"rotate":n=t(n,r([h],"rot"));break;case"scale":n=t(n,a(h,p));break;default:throw new Error(`Unknown transformation type: ${o}`)}}return n}(t=t.length?t:e.transformArr);e.matrix=l;let a=function(e,t=4){let{a:l,b:a,c:r,d:n,e:s,f:i}=e;Array.isArray(e)&&([l,a,r,n,s,i]=e);let o=Math.atan2(a,l),u=Math.pow(l,2)+Math.pow(a,2),h=Math.sqrt(u),p=(l*n-r*a)/h,c=Math.atan2(l*r+a*n,u)/(Math.PI/180),y={translateX:s||0,translateY:i||0,rotate:o?o/(Math.PI/180):0,scaleX:h,scaleY:p,skewX:c,skewY:0},f=[],x=[];for(let e in y){y[e]=+parseFloat(y[e]).toFixed(t);let l=y[e],a="";"rotate"!=e&&"skewX"!=e||(a="deg"),-1!=e.indexOf("translate")&&(a="px");let r=["scaleX","scaleY","translateX","translateY"];0!==l&&f.push(`${e}(${l}${a})`),-1==r.indexOf(e)&&0!==l?x.push(`${e}(${l})`):"scaleX"==e?x.push(`scale(${+h.toFixed(t)} ${+p.toFixed(t)})`):"translateX"==e&&x.push(`translate(${y.translateX} ${y.translateY})`)}return y.cssTransform=f.join(" "),y.svgTransform=x.join(" "),y.matrix=[l,a,r,n,s,i].map(e=>ke(e,t)),y.matrixAtt=`matrix(${y.matrix.join(" ")})`,y}(l,3);return e.transComponents=a,e}function jt(e="",t={},{removeInvalid:l=!0,removeDefaults:a=!0,allowDataAtts:r=!0,allowMeta:n=!1,allowAriaAtts:s=!1,cleanUpStrokes:i=!0,include:o=[],removeIds:u=!1,removeClassNames:h=!1,exclude:p=[],inheritedProps:c=null}={}){let y={},f=[];u||o.push("id"),h||o.push("class");let x=!!i&&(void 0===t.stroke||"none"===t.stroke[0]);for(let i in t){let u=t[i],h=Array.isArray(u)?u[0]:u,c=!!l&&(!!Fe.atts[i]&&Fe.atts[i].includes(e));"transform"===i&&"matrix(1 0 0 1 0 0)"===h&&(c=!1);let d=!!i.startsWith("data-"),g="title"===i,m=i.startsWith("aria-");if(r&&d||s&&m||n&&g)continue;let v=!!a&&(!!Fe.defaults[i]&&(void 0!==Fe.defaults[i]&&Fe.defaults[i].includes(h))),b=x&&Be.includes(i);(v||d||g||m||b)&&(c=!1),o.includes(i)&&(c=!0),p.includes(i)&&(c=!1),c?y[i]=t[i]:f.push(i)}return{propsFiltered:y,remove:f}}function zt(e=""){let t=(e=e.replace("!important","")).includes("'")||e.includes("(")||e.includes(")")?[e]:e.split(/,| /).filter(Boolean);for(let e=0;e<t.length;e++){let l=t[e],a={value:null,unit:"",numeric:!1},r=Qe(l);if(r){if(r){let e=Re(l),t=parseFloat(l);a.value=t,a.unit=e,a.numeric=!0}}else a.value=l;t[e]=a}return t}function Bt(e){if(Qe(e))return e;let t=e.split("-").map(e=>e.replace(/a|e|i|o|u/g,"")).join("-");return t=function(e){return e.split(/[-| ]/).map((e,t)=>t?e.charAt(0).toUpperCase()+e.slice(1).toLowerCase():e.toLowerCase()).join("")}(t),t}function Ft(e,{omitNamespace:t=!1,removeComments:l=!0,format:a=0}={}){let r="";return a<2?(r=(new XMLSerializer).serializeToString(e),r=function(e,{removeComments:t=!0}={}){t&&(e=e.replace(/<!--[\s\S]*?-->/g,""));return e=e.replace(/>\s+</g,"><").trim().replace(/\s+([=])\s+/g,"$1").replace(/\s+(?=[^<]*>)/g," ").replace(/\s{2,}/g," ").replace(/\s*=\s*/g,"="),e}(r,{removeComments:l})):r=function(e,{indentSize:t=2}={}){"string"==typeof e&&(e=(new DOMParser).parseFromString(e,"image/svg+xml").querySelector("svg"));return Ot(e,0,t)}(e),t&&(r=r.replaceAll('xmlns="http://www.w3.org/2000/svg"',"")),l&&(r=r.replace(/(<!--.*?-->)|(<!--[\S\s]+?-->)|(<!--[\S\s]*?$)/g,"")),r}function Ot(e,t,l){let a=" ".repeat(t*l);if(e.nodeType===Node.TEXT_NODE){let t=e.textContent.trim();return t||""}if(e.nodeType===Node.ELEMENT_NODE){let r=e.children.length>0,n=e.textContent.trim().length>0&&0===e.children.length,s=`${a}<${e.nodeName}`;for(let t=0;t<e.attributes.length;t++){let l=e.attributes[t];s+=` ${l.name}="${l.value}"`}if(!r&&!n)return s+" />\n";if(s+=">",r){s+="\n";for(let a of e.children)s+=Ot(a,t+1,l);s+=`${a}</${e.nodeName}>\n`}else n?(s+=e.textContent.trim(),s+=`</${e.nodeName}>\n`):s+=`</${e.nodeName}>\n`;return s}return""}const Rt=[];function Qt(e,{t:t=1,waArr:l=[]}={}){let a;return a=4===e.length?((e,t,l,a,r=0,n=[])=>{if(0===r)return 0;let s=(r=r>1?1:r<0?0:r)/2,i=0,o=e.x,u=e.y,h=t.x,p=t.y,c=l.x,y=l.y,f=a.x,x=a.y;for(let e=0,t=n.length;e<t;e++){let[t,l]=[n[e][0],n[e][1]],a=-s*l+s,r=Gt(a,o,h,c,f),d=Gt(a,u,p,y,x),g=r*r+d*d;i+=t*Math.sqrt(g)}return s*i})(e[0],e[1],e[2],e[3],t,l):3===e.length?((e,t,l,a,r=!1)=>{if(0===a)return 0;if(r){let a=ce(e,t)+ce(t,l),r=ce(e,l);if(a===r)return r}let n,s,i,o,u,h,p,c,y;c=2*t.x,y=2*t.y,o=e.x-c+l.x,p=e.y-y+l.y,u=c-2*e.x,h=y-2*e.y,n=4*(o*o+p*p),s=4*(o*u+p*h),i=u*u+h*h;const f=s/(2*n),x=a+f,d=i/n-f*f;return Math.sqrt(n)/2*(x*Math.sqrt(x*x+d)-f*Math.sqrt(f*f+d)+d*Math.log((x+Math.sqrt(x*x+d))/(f+Math.sqrt(f*f+d))))})(e[0],e[1],e[2],t):ce(e[0],e[1]),a}function Vt(e,t=-1,l=1){let a,r,n,s,i,o,u,h,p=[];n=.5*(l+t),s=.5*(l-t);for(let t=(e+1>>1)-1;t>=0;t--){r=Math.cos(Math.PI*(t+.75)/(e+.5));do{h=1,u=0;for(let t=0;t<e;t++)o=u,u=h,h=((2*t+1)*r*u-t*o)/(t+1);i=e*(r*h-u)/(r*r-1),a=r,r=a-h/i}while(Math.abs(r-a)>1e-14);let l=2*s/((1-r*r)*i*i),c=n+s*r;p.push([l,-c],[l,c])}return p}function Gt(e,t,l,a,r){return e*(e*(-3*t+9*l-9*a+3*r)+6*t-12*l+6*a)-3*t+3*l}function Ut(e=0,t=0){if(0===e)return console.warn("Radius must be positive"),0;return 2*Math.PI*e*(1/360*Math.abs(180*t/Math.PI))}function Ht(e,t,l,a,r=[]){let n=.5*(a-l),s=.5*(a+l),i=0;for(let l=0;l<r.length;l++){let[a,o]=r[l],u=s+n*o,h=e*Math.sin(u),p=t*Math.cos(u);i+=a*Math.sqrt(h*h+p*p)}return Math.abs(n*i)}function Wt(e,{props:t={},pathLength:l=0}={}){let a=e.nodeName,r=0;t=JSON.parse(JSON.stringify(t));for(let e in t)t[e]&&t[e].length&&1===t[e].length&&(t[e]=t[e][0]);let{x:n=0,y:s=0,x1:i=0,y1:o=0,x2:u=0,y2:h=0,width:p=0,height:c=0,r:y=0,rx:f=0,ry:x=0,cx:d=0,cy:g=0}=t,m="polygon"===a||"polyline"===a?e.getAttribute("points"):[],v="polygon"===a;m.length&&(m=Lt(m));let b=[];switch("rect"===a&&(f||x)&&(b=At(n,s,p,c,f,x),a="path"),a){case"line":r=ce({x:i,y:o},{x:u,y:h});break;case"rect":r=2*p+2*c;break;case"circle":r=2*Math.PI*y;break;case"ellipse":r=function(e=0,t=0){if(e===t)return 2*Math.PI*e;let l=e+t,a=(e-t)/l,r=a*a;return Math.PI*l*(1+3*r/(10+Math.sqrt(4-3*r)))}(f,x);break;case"polygon":case"polyline":r=function(e=[],t=!1){let l=0,a=e.length;for(let t=1;t<a;t++)l+=ce(e[t-1],e[t]);return t&&(l+=ce(e[a-1],e[0])),l}(m,v);break;case"path":b=b.length?b:ut(e.getAttribute("d")),r=function(e=[]){let t=0,l=me(e);for(let e=0;e<l.length;e++){let a=l[e];void 0===a[0].p&&(a=lt(a)),Rt.length||Vt(48).forEach(e=>{Rt.push(e)});let r=Rt;a.forEach(e=>{let{type:l,values:a,p0:n,p:s,cp1:i=null,cp2:o=null}=e,u=[n];"C"!==l&&"Q"!==l||u.push(i),"C"===l&&u.push(o),u.push(s);let h=0;if("A"===l){let[t,l]=[e.values[3],e.values[4]],a=te(n.x,n.y,e.values[0],e.values[1],e.values[2],t,l,s.x,s.y,!1),{cx:i,cy:o,rx:u,ry:p,startAngle:c,endAngle:y,deltaAngle:f,xAxisRotation:x}=a;if(u===p)h=Ut(u,Math.abs(f));else{x*=w,c=re(c-x,u,p),y=re(y-x,u,p);let e=y-c;f=f>0&&e<0||f<0&&e>0?f:e,l&&c>y&&(y+=2*Math.PI),!l&&c<y&&(y-=2*Math.PI),h=Ht(u,p,c,y,r)}}else h=Qt(u,{t:1,waArr:r});t+=h})}return t}(b)}return r}function Zt(e){e.querySelectorAll("*").forEach(e=>{e.nodeName.toLowerCase();let t=e.getAttribute("style")||"",l=!!t&&t.trim().includes("display:none");(e.getAttribute("display")&&"none"===e.getAttribute("display")||l)&&e.remove()})}function Xt(e,{removeElements:t=[],removeNameSpaced:l=!0}={}){t.push("script");let a=e.querySelectorAll("*"),r=!t.includes("metadata");a.forEach(e=>{let a=e.nodeName;!(r&&e.closest("metadata"))&&(l&&a.includes(":")||t.includes(a))&&e.remove()})}function Jt(e,t=[]){Yt(e,t)}function Yt(e,t=[]){t.forEach(t=>{e.removeAttribute(t)})}function _t(e,t=[]){if(t.length){let l=t.map(e=>`[${e}]`).join(", ").replaceAll(":","\\:");e.querySelectorAll(l).forEach(e=>{t.forEach(t=>{e.removeAttribute(t)})})}}function Kt(e,{removeIds:t=!1,removeClassNames:l=!1,removeDimensions:a=!1,stylesToAttributes:r=!1,allowMeta:n=!1,allowAriaAtts:s=!1,allowDataAtts:i=!1}={}){let o=new Set(["viewBox","xmlns","width","height"]);t||o.add("id"),l||o.add("class"),a&&(o.delete("width"),o.delete("height")),o=Array.from(o),r||o.push("fill","stroke","stroke-width","stroke-linecap","stroke-linejoin","font-size","font-family","font-style","style"),function(e,{allowed:t=["viewBox","xmlns","width","height","id","class"],allowAriaAtts:l=!0,allowDataAtts:a=!0,allowMeta:r=!1}={}){[...e.attributes].map(e=>e.name).forEach(n=>{let s=r&&"title"===n,i=l&&n.startsWith("aria-"),o=a&&n.startsWith("data-");t.includes(n)||i||o||s||e.removeAttribute(n)})}(e,{allowed:o,allowMeta:n,allowAriaAtts:s,allowDataAtts:i})}function el(e,{styleProps:t={}}={}){let{remove:l,matrix:a,transComponents:r}=t;e.nodeName.toLowerCase();if(!a)return t;let{rotate:n,scaleX:s,scaleY:i,skewX:o,translateX:u,translateY:h}=r,p=0!==n||0!==o||s!==i;return p=!0,e.setAttribute("transform",r.matrixAtt),t}function tl(e={},{props:t=[],scale:l=1}={},a=!0){if(1===l||!t.length)return t;for(let r=0;r<t.length;r++){let n=t[r];void 0!==e[n]&&(e[n]=e[n].map(e=>a?ke(e*l,3):e*l))}return e}function ll(e,{styleProps:t={}}={}){let l=t.pathLength;if(l){if(t["stroke-dasharray"]||t["stroke-dashoffset"]){(t=tl(t,{props:["stroke-dasharray","stroke-dashoffset"],scale:Wt(e,{pathLength:l,props:t})/l}))["stroke-dasharray"]&&e.setAttribute("stroke-dasharray",t["stroke-dasharray"].join(" ")),t["stroke-dashoffset"]&&e.setAttribute("stroke-dashoffset",t["stroke-dashoffset"][0])}delete t.pathLength,t.remove.push("pathLength"),e.removeAttribute("pathLength")}return t}function al(e,{parent:t=null,removeUnused:l=!0,flatten:a=!0}={}){let r=typeof e;if("string"===r&&(l=!1),"string"!==r)if("style"===e.nodeName)e=e.innerHTML;else{if("svg"!==e.nodeName)return console.warn("invalid CSS input"),{};{let l=e.querySelector("style");if(!l)return{};t=e,e=l.innerHTML}}if(!(e=e.trim()))return{};function n(e){let t={},l=0,a=e.length,r=!1;for(;l<a;){for(;l<a&&/\s/.test(e[l]);)l++;if(l>=a)break;let n=l,s=!1;for(;n<a;){if("{"===e[n]){s=!0;break}if(":"===e[n])break;if(";"===e[n])break;n++}if(s){r=!0;let t=0;for(;l<a&&("{"===e[l]&&t++,"}"===e[l]&&t--,l++,0!==t););}else{let r="",n=!1,s=!1,i="";for(;l<a;){let t=e[l],a=e[l+1];if("u"===t&&"r"===a&&"url("===e.slice(l,l+4)&&(n=!0),'"'!==t&&"'"!==t||0!==l&&"\\"===e[l-1]||(s?t===i&&(s=!1,i=""):(s=!0,i=t)),n&&")"===t&&!s&&(n=!1),";"===t&&!n&&!s){l++;break}r+=t,l++}if(r=r.trim(),r){let e=r.indexOf(":");if(e>-1){let l=r.substring(0,e).trim(),a=r.substring(e+1).trim();l&&a&&(t[l]=a)}}}}return{declarations:t,hasNested:r}}let s=function e(t,l=""){let a=0,r={},s=t.length;for(;a<s;){for(;/\s/.test(t[a]);)a++;if(a>=s)break;let i=a,o=!1;for(;i<s&&";"!==t[i];){if("{"===t[i]){o=!0;break}i++}if(!o){a=i+1;continue}let u="";for(;a<s&&"{"!==t[a];)u+=t[a],a++;if(u=u.trim(),!u||"{"!==t[a])continue;a++;let h="",p=1;for(;a<s&&p>0;)"{"===t[a]?p++:"}"===t[a]&&p--,p>0&&(h+=t[a]),a++;let c=u;l&&(c=u.includes("&")?u.replace(/&/g,l):l+" "+u),c=c.replace(/\s+/g," ").trim();let{declarations:y,hasNested:f}=n(h);if(Object.keys(y).length)if(r[c])for(let e in y){let t=r[c][e],l=y[e],a=t&&t.includes("!important"),n=l.includes("!important");a&&!n||(r[c][e]=l)}else r[c]=y;f&&e(h,c)}return r}(e=e.replace(/\/\*[\s\S]*?\*\//g,""));t&&l&&(s=function(e=null,t={}){return Object.keys(t).forEach(l=>{e.querySelector(l)||":root"===l||delete t[l]}),t}(t,s)),a&&(s=function(e){for(let t in e){let l=t.split(/,/).map(e=>e.trim());e[t],l.length>1&&(l.forEach(t=>{let l=e[t];for(let a in l){let r=l[a];r.includes("!important")||(e[t][a]=r)}}),delete e[t])}return e}(s));let i={},o={};for(let e in s){e.startsWith("#")&&(i[e]=s[e],delete s[e]);for(let t in s[e]){let l=s[e][t];l.includes("!important")&&(o[e]||(o[e]={}),o[e][t]=l)}}return s={...s,...i,...o},s}function rl(e,{removeHidden:t=!0,stylesToAttributes:l=!0,attributesToGroup:a=!1,removePrologue:r=!0,removeIds:n=!1,removeClassNames:s=!1,removeDimensions:i=!1,fixHref:o=!1,legacyHref:u=!1,cleanupDefs:h=!0,cleanupClip:p=!0,addViewBox:c=!1,addDimensions:y=!1,minifyRgbColors:f=!1,normalizeTransforms:x=!0,autoRoundValues:d=!0,unGroup:g=!1,mergePaths:m=!1,removeOffCanvas:v=!0,cleanupSVGAtts:b=!0,removeNameSpaced:A=!0,removeNameSpacedAtts:M=!0,convertPathLength:w=!1,toAbsoluteUnits:S=!1,allowMeta:k=!1,allowDataAtts:E=!0,allowAriaAtts:P=!0,shapeConvert:D=!1,convertShapes:T=[],removeElements:L=[],removeSVGAttributes:$=[],removeElAttributes:N=[],convertTransforms:q=!1,removeDefaults:I=!0,cleanUpStrokes:j=!0,decimals:z=-1,excludedEls:B=[]}={}){(g||q||f||a)&&(l=!0),l&&(j=!0),o&&(e=e.replaceAll("xlink:href=","href="));let F=(new DOMParser).parseFromString(e,"text/html").querySelector("svg"),O=mt(F),{x:R,y:Q,width:V,height:G}=O,U=[];c&&function(e,{x:t=0,y:l=0,width:a=0,height:r=0}={}){if(e.hasAttribute("viewBox"))return;a&&r||({x:t,y:l,width:a,height:r}=mt(e));e.setAttribute("viewBox",[t,l,a,r].join(" "))}(F,{x:R,y:Q,width:V,height:G}),y&&(F.setAttribute("width",V),F.setAttribute("height",G)),h&&function(e,{x:t=0,y:l=0,width:a=0,height:r=0,cleanupClip:n=!0}={}){let s=e.querySelectorAll("defs"),i=e.querySelectorAll("symbol, pattern, linearGradient, radialGradient, clipPath, mask, marker, filter");if(!s.length&&!i.length)return;s.forEach(t=>{[...t.children].length?e.insertBefore(t,e.children[0]):t.remove()});let o=new Set([]);i.forEach(e=>{o.add(e.id)}),Array.from(o).forEach(t=>{e.querySelectorAll(`[href="#${t}"], [xlink\\:href="#${t}"], [clip-path="url(#${t})"], [mask="url(#${t})"], [fill="url(#${t})"], [stroke="url(#${t})"]`).length||e.getElementById(t).remove()})}(F,{x:R,y:Q,width:V,height:G,cleanupClip:p}),v&&function(e,{x:t=0,y:l=0,width:a=0,height:r=0}={}){let n=[...e.querySelectorAll("path, polygon, polyline, line, rect, circle, ellipse, text")];n=n.filter(e=>!(e.parentNode.closest("defs")||e.parentNode.closest("symbol")||e.parentNode.closest("clipPath")||e.parentNode.closest("mask")||e.parentNode.closest("pattern")));let s={x:t,y:l,width:a,height:r};s.right=t+a,s.bottom=l+r,n.forEach(e=>{let t=function(e){let t=e.nodeName.toLowerCase(),l=Ve(e),a={x:0,y:0,width:0,height:0},r=[];switch(t){case"path":a=Ge(We(ut(e.getAttribute("d"))));break;case"rect":a={x:l.x||0,y:l.y||0,width:l.width,height:l.height};break;case"circle":let t=2*l.r;a={x:l.cx-l.r,y:l.cy-l.r,width:t,height:t};break;case"ellipse":a={x:l.cx-l.rx,y:l.cy-l.ry,width:2*l.rx,height:2*l.ry};break;case"line":r=[{x:l.x1,y:l.y1},{x:l.x2,y:l.y2}],a=Ge(r);break;case"polyline":case"polygon":r=Lt(l.points),a=Ge(r)}return a}(e);(t.right<s.x||t.bottom<s.y||t.x>s.right||t.y>t.bottom)&&e.remove()})}(F,{x:R,y:Q,width:V,height:G});let H={width:V,height:G,normalizeTransforms:x,removeDefaults:!1,cleanUpStrokes:!1,allowMeta:k,allowDataAtts:E,allowAriaAtts:P,autoRoundValues:d,removeIds:n,removeClassNames:s,minifyRgbColors:f,stylesheetProps:{},exclude:[]},W=qt(F,H),Z=F.querySelector("style"),X={};if(Z){X=al(Z,{parent:F});for(let e in X){F.querySelectorAll(`${e}`).forEach(t=>{if(t.cssRules||(t.cssRules=[]),t.cssRules.push(e),l){let l=e.substring(1);t.classList.remove(l)}})}l&&Z.remove()}l&&F.removeAttribute("style"),H.stylesheetProps=X,H.fontSize=W["font-size"]?W["font-size"][0]:16;let J=F.querySelectorAll("g");J.forEach(e=>{let t=qt(e,H);e.querySelectorAll(`${je.join(", ")}`).forEach(e=>{void 0===e.parentStyleProps&&(e.parentStyleProps=[]),e.parentStyleProps.push(t)})});let Y=F.querySelectorAll(`${je.join(", ")}`);for(let e=0;e<Y.length;e++){let t=Y[e],r=t.nodeName.toLowerCase(),o=qt(t,H),u={};(q||a)&&(w=!0),w&&(o=ll(t,{styleProps:o}),U=[...new Set([...U,...o.remove])]);let{parentStyleProps:h=[]}=t,p={},c=[];if(h.forEach(e=>{let{transformArr:t=[]}=e;c.push(...t),p={...p,...e}}),c=[...c,...o.transformArr],o.transformArr=c,W.class&&delete W.class,W.id&&delete W.id,p={...W,...p},o={...p,...o},It(o,c),U=[...new Set([...U,...o.remove])],k||L.push("meta","metadata","desc","title"),s&&($.push("class"),N.push("class")),n&&($.push("id"),N.push("id")),Zt(F),Xt(F,{removeElements:L,removeNameSpaced:A}),Jt(F,$),_t(F,N),b&&Kt(F,{removeIds:n,removeClassNames:s,removeDimensions:i,stylesToAttributes:l,allowMeta:k,allowAriaAtts:P,allowDataAtts:E}),S){x=!0,u=jt(r,o,{removeDefaults:!0,cleanUpStrokes:j,allowMeta:k,allowAriaAtts:P,allowDataAtts:E,removeIds:n,inheritedProps:p});for(let e in u.propsFiltered){let l=o[e],a=l.length?l.join(" "):l[0];t.setAttribute(e,a)}let e=[...new Set([...U,...u.remove])];for(let t in u.propsFiltered){let l=p[t]||[],a=u.propsFiltered[t]||[];l.join()===a.join()&&e.push(t)}Yt(t,e)}if(l){x&&(o=el(t,{styleProps:o}),U=[...new Set([...U,...o.remove])]),u=jt(r,o,{removeDefaults:!0,cleanUpStrokes:j,allowMeta:k,allowAriaAtts:P,allowDataAtts:E,removeIds:n,inheritedProps:p}),U=[...new Set([...U,...u.remove])];for(let e in u.propsFiltered){let l=o[e],a=l.length?l.join(" "):l[0];t.setAttribute(e,a)}Yt(t,U)}if(q&&(D="toPaths",T=["path","rect","ellipse","circle","line","polygon","polyline"]),"toPaths"===D){let{matrix:e=null,transComponents:l=null}=o;if(e&&l&&["stroke-width","stroke-dasharray","stroke-dashoffset"].forEach(e=>{let a=t.getAttribute(e),r=a?a.split(" ").filter(Boolean).map(Number).map(e=>e*l.scaleX):[];r.length&&t.setAttribute(e,r.join(" "))}),e?Ie.includes(r):Pe.includes(r)){let l=bt(t,{width:V,height:G,convertShapes:T,matrix:e});t.replaceWith(l),r="path",t=l}}else if("toShapes"===D){F.querySelectorAll("path").forEach(e=>{let t=Mt(e,{convertShapes:T});e.replaceWith(t),e=t})}if(m||a){let e={allowMeta:k,allowAriaAtts:P,removeIds:n,removeClassNames:s,allowDataAtts:E};m&&(e.removeIds=!0,e.removeClassNames=!0,e.allowAriaAtts=!1,e.allowMeta=!1),u=jt(r,o,e).propsFiltered;for(let e in u){if(qe.includes(e))continue;let l=u[e],a=l.length?l.join(" "):l[0];if("class"!==e&&"id"!==e){let l=`${Bt(e)}-${Bt(a)}`;t.styleSet||(t.styleSet=new Set),l&&t.styleSet.add(l)}}}}return g?function(e){e.forEach((e,t)=>{[...e.children].forEach(t=>{e.parentNode.insertBefore(t,e)}),e.remove()})}(J):l&&J.forEach(e=>{!function(e,t=[],l=[]){[...e.attributes].map(e=>e.name).forEach(a=>{t.includes(a)&&!l.includes(a)&&e.removeAttribute(a)})}(e,["style","transform"])}),a&&function(e){let t=e.querySelectorAll(je.join(", ")),l=t.length;if(1===l)return;let a=t[0]||null,r=void 0!==a.styleSet?[...a.styleSet].join("_"):"",n={},s=[];if(l){let i=[[a]],o=0,u=a;for(let e=0;e<l;e++){let a=t[e],r=Ve(a);for(let e in r){let t=`${e}_${r[e]}`;n[t]||(n[t]=[]),n[t].push(a),n[t].length===l&&s.push(e)}}if(s.length){let t=Ve(a);for(let l in t)s.includes(l)&&"transform"!==l&&e.setAttribute(l,t[l])}for(let e=1;e<l;e++){let l=t[e],a=void 0!==l.styleSet?[...l.styleSet]:[],n=a.length?a.join("_"):"";n===r&&u.nextElementSibling===l?i[o].push(l):(i.push([l]),o++),r=n,u=l}for(let e=0;e<i.length;e++){let t=i[e],l=t[0],a=Ve(l),r=l.parentNode.closest("g");if(1!==t.length){(!r||i.length>1)&&(r=document.createElementNS(C,"g"),l.parentNode.insertBefore(r,l),r.append(...t));for(let e in a){let l=a[e],n=["id","class"];qe.includes(e)||n.includes(e)||(s.includes(e)&&"transform"!==e||r.setAttribute(e,l),t.forEach(t=>{t.removeAttribute(e)}))}}}}}(F),m&&function(e){let t=e.querySelectorAll("path"),l=t.length;if(l){let e=t[0],a=e.getAttribute("d"),r=void 0!==e.styleSet?[...e.styleSet].join(" "):"",n=[];for(let s=1;s<l;s++){let l=t[s],i=void 0!==l.styleSet?[...l.styleSet].join(" "):"",o=l.previousElementSibling===e,u=l.getAttribute("d"),h=u.startsWith("M");if(o&&i===r){a+=h?u:it(u).pathData.map(e=>`${e.type} ${e.values.join(" ")}`).join(" "),e.setAttribute("d",a),n.push(l)}else e=l,a=h?u:it(u).pathData.map(e=>`${e.type} ${e.values.join(" ")}`).join(" ");r=i}n.forEach(e=>{e.remove()})}}(F),p&&function(e,{x:t=0,y:l=0,width:a=0,height:r=0}={}){let n=e.querySelectorAll("clipPath");if(!n.length)return;a&&r||({x:t,y:l,width:a,height:r}=mt(e));n.forEach(n=>{let s=[...n.children];if(s.length>1)return;let i=s[0],o=i.nodeName.toLowerCase();if("path"===o||"rect"===o){let s={x:0,y:0,width:0,height:0};if("path"===o){let e=ut(i.getAttribute("d")),t=Array.from(new Set(e.map(e=>e.type.toLowerCase()))).join("");if(!!/[acqts]/gi.test(t)||e.length>5)return;s=Ge(ee(e))}else"rect"===o&&(s={x:+i.getAttribute("x"),y:+i.getAttribute("y"),width:+i.getAttribute("width"),height:+i.getAttribute("height")});if(s.x===t&&s.y===l&&s.width===a&&s.height===r){n.remove(),e.querySelectorAll(`[clip-path="url(#${n.id})"]`).forEach(e=>{e.removeAttribute("clip-path")})}}})}(F,{x:R,y:Q,width:V,height:G}),u&&function(e){e.setAttribute("xmlns:xlink","http://www.w3.org/1999/xlink");let t=e.querySelectorAll("[href]");t.forEach(e=>{let t=e.getAttribute("href");e.setAttribute("xlink:href",t)})}(F),function(e){let t=e.querySelectorAll('[class=""]');t.forEach(e=>{e.removeAttribute("class")})}(F),{svg:F,svgElProps:[]}}function nl(e,t=!1){if(e.length<3)return!1;let l=e.length,a=Math.floor(.333*l),r=Math.floor(.666*l),n=Math.floor(.5*l),s=e[0],i=e[n],o=e[l-1],u=sl([s,i,o]),h=0,p=0,c=0,y=0,f={};if(t){if(l>3){let t=sl([s,e[a],o]),l=sl([s,e[r],o]);if(!t||!l)return!1;let n=fe(u,i);if(fe(u,t)+fe(u,l)>.05*n)return!1}let t=ye(u,i);for(let a=0;a<l;a++){let l=ye(u,e[a]);if(Math.abs(t-l)/t>.0025)return!1}h=Math.sqrt(t),f=X(u,s,o),({deltaAngle:p,startAngle:c,endAngle:y}=f)}else h=ce(u,s),f=X(u,s,o),({deltaAngle:p,startAngle:c,endAngle:y}=f);return{centroid:u,r:h,startAngle:c,endAngle:y,deltaAngle:p}}function sl(e=[]){if((e=e.filter(e=>void 0!==e)).length<3)return!1;let t=e[0],l=e[Math.floor(e.length/2)],a=e[e.length-1],r=t.x,n=t.y,s=l.x,i=l.y,o=a.x,u=a.y,h=r-s,p=n-i,c=r-o,y=n-u,f=(r*r-s*s+(n*n-i*i))/2,x=(r*r-o*o+(n*n-u*u))/2,d=h*y-p*c;return!(Math.abs(d)<1e-10)&&{x:(y*f-p*x)/d,y:(-c*f+h*x)/d}}function il(e,{threshold:t=0,simplifyQuadraticCorners:l=!1,tolerance:a=1}={}){let r=e.length,n=[e[0]],s="z"===e[r-1].type.toLowerCase(),i=!!s&&(e[r-1].p.x===e[0].p0.x&&e[r-1].p.y===e[0].p0.y),o=s?2:1,u=e[r-o],h="L"===u.type,p="C"===u.type,c="L"===e[1].type,y="C"===e[1].type,f=null,x=s&&y&&(h||i);x&&(e[r-1].values=e[0].values,e[r-1].type="L",h=!0);for(let t=1;t<r;t++){let i=e[t],{type:u}=i,d=e[t+1]?e[t+1]:null;if("L"===u&&d&&"C"===d.type||"C"===u&&d&&"L"===d.type){let x="L"===u?i:null,g=null,m=[],v=0;if(1===t&&y&&h&&(m=[e[1]],x=e[r-1],g=d),!x){n.push(i);continue}s&&p&&c&&t===r-o-1&&(g=e[1],m=[e[r-o]]);for(let l=t+1;l<r;l++){let t=e[l]?e[l]:null,a=e[l-1];if("C"===a.type&&l>2&&m.push(a),"L"===t.type&&"C"===a.type){g=t;break}v++}if(g){let e=fe(x.p0,x.p),s=fe(g.p0,g.p),u=fe(x.p,g.p0),h=Xe([x.p0,x.p,g.p0,g.p],!1),p=Xe([m[0].p0,m[0].cp1,m[0].cp2,m[0].p],!1),c=h<0&&p>0||h>0&&p<0,y=.5*u*a,d=y<e&&y<s;if(m.length&&!c&&d){let e=!1;if(1===m.length){let t=Math.abs(m[0].p.x-m[0].p0.x),l=t-Math.abs(m[0].p.y-m[0].p0.y);e=Math.abs(l/t)<.01}let a=!0;if(a=!1,a&&e){let e=K([m[0].p0,m[0].cp1,m[0].cp2,m[0].p],.5),l=nl([m[0].p0,e,m[0].p]),{r:a,centroid:r,deltaAngle:s}=l,i={type:"A",values:[a,a,0,0,s>0?1:0,m[0].p.x,m[0].p.y]};n.push(x,i),t+=v;continue}let s=.005*ye(m[0].p0,m[0].p),h=Math.abs(p)<s,c=Math.abs(p)<10*s,d=h?null:J(x.p0,x.p,g.p,g.p0,!1,!0);if(!d||c&&1===m.length){n.push(i);continue}if(d){let e=Xe([x.p0,x.p,g.p0,g.p],!1),t=Math.abs(e),l=Xe([x.p0,x.p,d,g.p0,g.p],!1),a=Math.abs(l),r=Math.abs(t-a)/t;if(!d||(e<0&&l>0||e>0&&l<0)||r>.5){n.push(i);continue}}let b=.75*fe(K([x.p,d,g.p0],.5),1===m.length?K([m[0].p0,m[0].cp1,m[0].cp2,m[0].p],.5):m[0].p);if(y&&b>y&&b>.3*u){n.push(i);continue}let A=g.p0;if(!l){let l=.1666,a=_(d,x.p,1+l);A=_(d,g.p0,1+l);let n=d.y===x.p.y,s=d.x===x.p.x,u=d.y===g.p0.y,h=d.x===g.p0.x;if(e&&i.dimA>3){let e=.5;n&&(a.x=ke(a.x,e)),s&&(a.y=ke(a.y,e)),u&&(A.x=ke(A.x,e)),h&&(A.y=ke(A.y,e))}t===r-o-1&&(f=A),x.values=[a.x,a.y],x.p=a}let M={type:"Q",values:[d.x,d.y,A.x,A.y]};M.cp1=d,M.p0=x.p,M.p=A,n.push(x,M),t+=v;continue}}}x&&t===r-1&&"L"===u||n.push(i)}return f&&(n[0].values=[f.x,f.y],n[0].p0=f),(x||s&&"Z"!==n[n.length-1].type)&&n.push({type:"Z",values:[]}),n}function ol(e,{threshold:t=0,tolerance:l=1,toCubic:a=!1,debug:r=!1}={}){e=function(e){let t=e.length,l=[e[0]];for(let a=1;a<t;a++){let t=e[a],r=e[a-1],n=e[a+1]||null;if(!n){l.push(t);break}let{type:s,values:i,extreme:o=!1,p0:u,p:h,dimA:p=0}=t,c=n.dimA,y=r.dimA+p+c;"A"===s&&p<.05*y&&i[0]<1&&i[1]<1&&(t.type="L",t.values=[h.x,h.y]),l.push(t)}return l}(e);let n=e.length,s=[e[0]];for(let t=1;t<n;t++){e[t-1];let l=e[t],a=e[t+1]||null;if(!a){s.push(l);break}let{type:r,extreme:i=!1,p0:o,p:u,dimA:h=0}=l,p=a.dimA,c=h+p,y=.1,f=p<c*y;if("C"!==r||"C"!==a.type&&!f)s.push(l);else{let a=[];for(let l=t+1;l<n;l++){let t=e[l],{type:r,extreme:n=!1,corner:s=!1,dimA:i=0}=t;if(n||s){i<c*y&&t.type,n&&!s&&a.push(t);break}a.push(t)}if(a.length>1){let e=a.length,r=[l.p0,l.p];a.forEach(e=>{if("C"===e.type){let t=K([e.p0,e.cp1,e.cp2,e.p],.5);r.push(t)}r.push(e.p)});let n=nl(r,!0);if(n){let{centroid:l,r:r,deltaAngle:i,startAngle:u,endAngle:h}=n,p=i>0?1:0,c=Math.abs(i)>Math.PI?1:0;c=0;let y=a[e-1],f=y.p,x={type:"A",values:[r,r,0,c,p,f.x,f.y]};x.dimA=fe(o,f),x.p0=o,x.p=f,x.error=0,x.directionChange=y.directionChange,x.extreme=y.extreme,x.corner=y.corner,s.push(x),t+=a.length;continue}s.push(l)}else s.push(l)}}return s}function ul(e,{threshold:t=0,tolerance:l=1,toCubic:a=!1,debug:r=!1}={}){let n=e.length,s=[e[0]];for(let t=1;t<n;t++){let l=e[t],{type:r}=l,n=e[t-1],i=e[t+1]?e[t+1]:null,o=e[t+2]?e[t+2]:null,u=e[t+3]?e[t+3]:null,h=null;"C"===l.type||"Q"===l.type?h=l:!i||"C"!==i.type&&"Q"!==i.type||(h=i);let p,c,y,f,x,d=h?"C"===h.type?[h.p0,h.cp1,h.cp2,h.p]:[h.p0,h.cp1,h.p]:[],g=0,m=0,v=!1,b=!1,A=[];if(o&&u&&"L"===n.type&&"L"===r&&h&&"L"===o.type&&("L"===u.type||"Z"===u.type)?(p=[l.p0,l.p],c=[o.p0,o.p],y=l.p0,f=o.p,g=Xe(d,!1),m=Xe([...p,...c],!1),v=g<0&&m>0||g>0&&m<0,v||(x=K(d,.5),A=[y,x,f],b=!0)):!i||"C"!==r&&"Q"!==r||"L"!==n.type||!o||"L"!==o.type||"C"!==i.type&&"Q"!==i.type||(b=!0,p=[n.p0,n.p],c=[o.p0,o.p],y=n.p,f=o.p0,x=h.p,A=[y,h.p,f]),b){let e=nl(A);if(e){let r,{centroid:n,r:i,deltaAngle:o,startAngle:u,endAngle:h}=e,p=0,c=o>0?1:0,d=Math.abs(o)>Math.PI?1:0;if(xe(le(y,n.x,n.y,.5*o),x)<.05*xe(y,f)){if(r=ft({p0:y,p:f,centroid:n,rx:i,ry:i,xAxisRotation:p,sweep:c,largeArc:d,deltaAngle:o,startAngle:u,endAngle:h}),1===r.length){let e=ht(y,r[0].cp1,r[0].cp2,f);"Q"===e.type?a=!0:e=r[0],l=e}r.length>1&&(a=!1),a||(l.type="A",l.values=[i,i,p,d,c,f.x,f.y]),l.p0=y,l.p=f,l.extreme=!1,l.corner=!1,s.push(l),t++;continue}}}s.push(l)}return s}function hl(e=[],{threshold:t=0}={}){let l=e.length,a="z"===e[l-1].type.toLowerCase(),r=a?l-2:l-1,n=e[r],s=n.values.slice(-2),i={x:e[0].values[0],y:e[0].values[1]},o=xe(i,{x:s[0],y:s[1]});if(o&&o<t){let l=e[r].values.length;e[r].values[l-2]=i.x,e[r].values[l-1]=i.y;let a=e[1];if("C"===a.type&&"C"===n.type){let l=Math.abs(a.values[0]-n.values[2]),s=Math.abs(a.values[1]-n.values[3]),o=Math.abs(e[1].values[0]-a.values[0]),u=Math.abs(e[1].values[1]-a.values[1]),h=Math.abs(e[1].values[0]-n.values[2]),p=Math.abs(e[1].values[1]-n.values[3]),c=u<t&&p<t&&l;l&&l<t&&(o<t&&h<t&&s)&&(e[1].values[0]=i.x,e[r].values[2]=i.x),s&&s<t&&c&&(e[1].values[1]=i.y,e[r].values[3]=i.y)}}return e}function pl(e,t=1){let l=[];for(let a=0,r=e.length;a<r;a++){let r=e[a],{type:n,values:s}=r,i={type:n,values:[]};switch(n.toLowerCase()){case"h":case"v":i.values=[s[0]*t];break;case"a":i.values=[s[0]*t,s[1]*t,s[2],s[3],s[4],s[5]*t,s[6]*t];break;default:s.length&&(i.values=s.map((e,l)=>e*t))}l.push(i)}return l}function cl(e,t=1){for(let l=1,a=e.length;l<a;l++){let a=e[l],{type:r,values:n,p0:s,cp1:i=null,cp2:o=null,p:u=null}=a;if("C"===r){let r=ht(s,i,o,u,t);"Q"===r.type&&(r.extreme=a.extreme,r.corner=a.corner,r.dimA=a.dimA,r.squareDist=a.squareDist,e[l]=r)}}return e}function yl(e,{quality:t=.9,width:l=0,height:a=0}={}){let r=!1;if("string"==typeof t&&(r=!0,t=parseFloat(t)),e.length<4)return e;let n=t;if(!r){if(n=1-t,t>.5&&(n/=2),!l&&!a){let t=de(e,12);({width:l,height:a}=Ge(t))}n=(n*((l+a)/2/100))**2}const s=(e,t,l)=>{let a=t.x,r=t.y,n=l.x-a,s=l.y-r;if(0!==n||0!==s){let t=((e.x-a)*n+(e.y-r)*s)/(n*n+s*s);t>1?(a=l.x,r=l.y):t>0&&(a+=n*t,r+=s*t)}return(e.x-a)**2+(e.y-r)**2};let i=[e[0]],o=[];for(o.push([0,e.length-1]);o.length>0;){let[t,l]=o.pop(),a=n,r=-1;for(let n=t+1;n<l;n++){let i=s(e[n],e[t],e[l]);i>a&&(r=n,a=i)}a>n?(o.push([r,l]),o.push([t,r])):i.push(e[l])}return i}function fl(e,{quality:t=.9,width:l=0,height:a=0}={}){let r=!1;if("string"==typeof t){r=!0,t=parseFloat(t)}if(e.length<4)return e;let n,s=e[0],i=[s],o=t;if(!r){if(o=t,!l&&!a){let t=de(e,12);({width:l,height:a}=Ge(t))}o=(o*((l+a)/2/25))**2,t>.5&&(o/=10)}for(let t=1,l=e.length;t<l;t++){n=e[t],ye(s,n)>o&&(i.push(n),s=n)}return s.x!==n.x&&s.y!==n.y&&i.push(n),i}function xl(e,t=!0){let l=[],a=[];return Array.isArray(e[0])?e.forEach(e=>{a=[{type:"M",values:[e[0].x,e[0].y]},...e.slice(1).map(e=>({type:"L",values:[e.x,e.y]}))],t&&a.push({type:"Z",values:[]}),l.push(...a)}):l=[{type:"M",values:[e[0].x,e[0].y]},...e.slice(1).map(e=>({type:"L",values:[e.x,e.y]}))],t&&l.push({type:"Z",values:[]}),l}function dl(e,{maxError:t=0,adjustCpts:l=!0,harmonize:a=!0,keepCorners:r=!0}={}){if(1===e.length)return[];if(2===e.length)return[{type:"L",values:[e[0].x,e[0].y]},{type:"L",values:[e[1].x,e[1].y]}];let n,s,i=e.length,o=function(e=[]){let t=[];return e.forEach(e=>{let l=4===e.length?"C":3===e.length?"Q":"L",a="C"===l||"Q"===l?e[1]:null,r="C"===l?e[2]:null,n=e[e.length-1],s={type:l,values:"C"===l?[a.x,a.y,r.x,r.y,n.x,n.y]:"Q"===l?[a.x,a.y,n.x,n.y]:[n.x,n.y]};t.push(s)}),t}(gl(e,Al(e[1],e[0]),Al(e[i-2],e[i-1]),t,r));{let t=o.length,l=o[0],a=o[t-1],r={x:e[0].x,y:e[0].y},u={x:e[1].x,y:e[1].y},h=e[2]?{x:e[2].x,y:e[2].y}:null;h&&(n={x:l.values[0],y:l.values[1]},n=El(n,r,u,h),l.values[0]=n.x,l.values[1]=n.y);let p={x:e[i-1].x,y:e[i-1].y},c={x:e[i-2].x,y:e[i-2].y},y=e[i-3]?{x:e[i-3][0],y:e[i-3][1]}:null;y&&(s={x:a.values[2],y:a.values[3]},s=El(s,p,c,y),a.values[2]=s.x,a.values[3]=s.y)}return o}function gl(e,t,l,a,r=!1){let n,s=function(e){let t=[],l=e.length,a=e[0],r=e[1],n=0,s=0;for(let i=0;i<l;i++)r=e[i],n=s+ce(r,a,!1),t.push(n),s=n,a=r;return t=t.map(function(e){return e/s}),t}(e),i=ml(e,s,s,t,l);n=i[0];let o=i[1],u=i[2];if(r){let t=function(e,t){let l,a=4,r=1/a,n=e.length,s=[t[0]];for(let e=1;e<a;e++){l=K(t,r*e),s.push(l)}s.push(t[t.length-1]);let i=Xe(e,!1);i||2!==e.length||(i=.01*ye(e[0],e[1]));let o=Xe(s,!1)/i>1.1,u=t;if(o){let l=e[Math.floor(.5*n)],a=e[n-1];u=t=[e[0],l,l,a]}return{isBulged:o,bezierNew:u}}(e,n),{isBulged:l,bezierNew:a}=t;l&&(n=a)}if(0===o||o<a)return[n];if(o<a*a){let r=s,i=o,h=u;for(let p=0;p<20;p++){r=vl(n,e,r);let p=ml(e,s,r,t,l);if(n=p[0],o=p[1],u=p[2],o<a)return[n];if(u===h){let e=o/i;if(e>.9999&&e<1.0001)break}i=o,h=u}}let h=[],p=Ml(e[u-1],e[u+1]);if(0===p.x&&0===p.y){p=Ml(e[u-1],e[u]);let t={x:-p.y,y:p.x};p.x=t.x,p.y=t.y}let c=function(e){let t=Math.sqrt(e.x*e.x+e.y*e.y);return 0===t?{x:0,y:0}:{x:e.x/t,y:e.y/t}}(p),y=Cl(c,-1);return e.length,h.push(...gl(e.slice(0,u+1),t,c,a,r),...gl(e.slice(u),y,l,a,r)),h}function ml(e,t,l,a,r){let n,s,i;n=function(e,t,l,a){let r,n,s,i,o=e[0],u=e[e.length-1],h=[o,null,null,u],p=function(e){let t=[];for(;e--;)t.push([0,0]);return t}(t.length),c=t.length;for(let e=0;e<c;e++)s=t[e],i=1-s,r=p[e],r[0]=Cl(l,3*s*(i*i)),r[1]=Cl(a,3*i*(s*s));let y=[[0,0],[0,0]],f=[0,0],x=e.length;for(let l=0;l<x;l++)s=t[l],r=p[l],y[0][0]+=Sl(r[0],r[0]),y[0][1]+=Sl(r[0],r[1]),y[1][0]+=Sl(r[0],r[1]),y[1][1]+=Sl(r[1],r[1]),n=Ml(e[l],K([o,o,u,u],s)),f[0]+=Sl(r[0],n),f[1]+=Sl(r[1],n);let d=y[0][0]*y[1][1]-y[1][0]*y[0][1],g=y[0][0]*f[1]-y[1][0]*f[0],m=f[0]*y[1][1]-f[1]*y[0][1],v=0===d?0:m/d,b=0===d?0:g/d,A=ce(o,u,!1),M=1e-6*A;return v<M||b<M?(h[1]=wl(o,Cl(l,.333*A)),h[2]=wl(u,Cl(a,.333*A))):(h[1]=wl(o,Cl(l,v)),h[2]=wl(u,Cl(a,b))),h}(e,l,a,r);let o=function(e,t,l){let a,r,n,s,i,o;r=0,n=Math.floor(.5*e.length);let u=function(e,t){let l,a=[0],r=e[0],n=0;for(let s=1;s<=t;s++)l=K(e,s/t),n+=ce(l,r),a.push(n),r=l;return a=a.map(e=>e/n),a}(t,10),h=e.length,p=null;for(s=0;s<h;s++)i=e[s],o=bl(l[s],u,10),p=K(t,o),a=ye(p,i),a>r&&(r=a,n=s);return[r,n]}(e,n,t);return s=o[0],i=o[1],[n,s,i]}function vl(e,t,l){return l.map((l,a)=>function(e,t,l){let a=K(e,l),r=a.x-t.x,n=a.y-t.y,s=kl(e,l),i=r*s[0]+n*s[1],o=s[0]*s[0]+s[1]*s[1],u=kl(e,l,!0),h=2*(r*u[0]+n*u[1]),p=o+h;if(Math.abs(p)<1e-10)return l;return l-i/p}(e,t[a],l))}function bl(e,t,l){if(e<0)return 0;if(e>1)return 1;let a,r,n,s,i;for(let o=1;o<=l;o++)if(e<=t[o]){s=(o-1)/l,n=o/l,r=t[o-1],a=t[o],i=(e-r)/(a-r)*(n-s)+s;break}return i}function Al(e,t){let l=e.x-t.x,a=e.y-t.y,r=Math.sqrt(l*l+a*a);return 0===r?{x:0,y:0}:{x:l/r,y:a/r}}function Ml(e,t){return{x:e.x-t.x,y:e.y-t.y}}function wl(e,t){return{x:e.x+t.x,y:e.y+t.y}}function Cl(e,t){return{x:e.x*t,y:e.y*t}}function Sl(e,t){return e.x*t.x+e.y*t.y}function kl(e,t,l=!1){let a,r,n=e[0],s=e[1],i=e[2],o=e[3],u=t,h=1-u,p=h*h,c=u*u;return l?(a=6*h*(i.x-2*s.x+n.x)+6*u*(o.x-2*i.x+s.x),r=6*h*(i.y-2*s.y+n.y)+6*u*(o.y-2*i.y+s.y)):(a=3*p*(s.x-n.x)+6*h*u*(i.x-s.x)+3*c*(o.x-i.x),r=3*p*(s.y-n.y)+6*h*u*(i.y-s.y)+3*c*(o.y-i.y)),[a,r]}function El(e,t,l,a){let r=Z(t,l),n=Z(t,a)-r;return e=le(e,t.x,t.y,-n)}function Pl(e,{debug:t=!1,width:l=0,height:a=0,denoise:r=.9,keepCorners:n=!0,keepExtremes:s=!0,keepInflections:i=!1,manhattan:o=!1,absolute:u=!1,closed:h=!0,tolerance:p=1,simplifyRD:c=1,simplifyRDP:y=1}={}){let f=[],x=e.length,d=e[0],g=e[x-1];if(3===e.length){let t=_(d,e[1],.5),l=_(e[1],g,.5),a=_(g,e[0],.5);if(h){let r=.6666,n=_(t,e[1],r),s=_(l,e[1],r),i=_(l,g,r),o=_(a,g,r),u=_(a,d,r),h=_(t,d,r);f=[{type:"M",values:[t.x,t.y]},{type:"C",values:[n.x,n.y,s.x,s.y,l.x,l.y]},{type:"C",values:[i.x,i.y,o.x,o.y,a.x,a.y]},{type:"C",values:[u.x,u.y,h.x,h.y,t.x,t.y]},{type:"Z",values:[]}]}else f=[{type:"M",values:[d.x,d.y]},{type:"C",values:[e[1].x,e[1].y,e[1].x,e[1].y,g.x,g.y]}];return f}let m=function(e){let t=e.length,l=0,a=0;for(let r=0;t&&r<t;r++){let t=e[r];l+=t.x,a+=t.y}return{x:l/t,y:a/t}}(function(e){if(e.length<4)return e;let t=e.length,l=e[0],a=e[t-1];l.x===a.x&&l.y===a.y&&(e.pop(),t--,a=e[t-1]);let r,n,s=[l],i=l;for(let a=2;a<t;a++){r=e[a-1],n=e[a];let o=a===t-1;if(r.x===i.x&&r.y===i.y||r.x===n.x&&r.y===n.y)continue;let u=i.x===r.x,h=i.y===r.y;if(u||h){let e=r.x===n.x,t=r.y===n.y;if(u&&e||h&&t){if(!o)continue;if(o&&l.x!==n.x&&l.y!==n.y){s.push(n);continue}}}Xe([i,r,n],!0)<=.005*ye(i,n)&&a<t-1||(s.push(r),o&&l.x!==n.x&&l.y!==n.y&&s.push(n)),i=r}return Xe([s[1],l,s[s.length-1]],!0)<.005*ye(s[1],s[s.length-1])&&s.shift(),s}(e)),v=function(e,t={x:0,y:0}){let l=ye(e[0],t);for(let a=1,r=e.length;a<r;a++){let r=ye(e[a],t);if(Math.abs(l-r)/l>.05)return!1}return!0}(e,m);if(v){let t=le(e[0],m.x,m.y,Math.PI),l=Xe(e)>0?1:0;return f=[{type:"M",values:[e[0].x,e[0].y]},{type:"A",values:[1,1,0,0,l,t.x,t.y]},{type:"A",values:[1,1,0,0,l,e[0].x,e[0].y]}],h&&f.push({type:"Z",values:[]}),f}let b=s||n?function(e,{x:t=0,y:l=0,width:a=0,height:r=0,debug:n=!1}={}){let s=e.length,i=Ge(e);a&&r||({x:t,y:l,width:a,height:r}=i);let o=.01*(a+r);for(let t=0;t<s;t++){let l=t>0?e[t-1]:e[s-1],a=e[t],r=Xe([l,a,t<s-1?e[t+1]:e[s-1]],!1);a.area=r,a.dist=fe(l,a),a.idx=t}for(let t=0;t<s;t++){t>1?e[t-2]:e[s-1];let l=t>0?e[t-1]:e[s-1],a=e[t],r=t<s-1?e[t+1]:e[s-1];ye(l,r),Math.abs(l.area);let n=Math.abs(a.area);Math.abs(r.area);let u=!1,h=!a.area||n<o;fe(a,l);let p=!1;a.x!==i.left&&a.x!==i.right&&a.y!==i.top&&a.y!==i.bottom||(p=!0);let c=a.y===l.y&&a.x!==l.x,y=a.x===l.x&&a.y!==l.y;(c||y)&&(l.isExtreme=!0,p=!0);let f=Ge([l,r]),{left:x,right:d,top:g,bottom:m}=f,v=a.x<x||a.x>d||a.y<g||a.y>m;!p&&v&&(p=!0);let b=(l.area<0&&a.area>0||l.area>0&&a.area<0)&&!h&&!l.isDirChange;if(p){let e=X(a,r,l),{deltaAngleDeg:t}=e;t=Math.abs(t),t>10&&t<160&&(u=!0)}a.isCorner=u,a.isExtreme=p,a.isHorizontal=c,a.isVertical=y,a.isDirChange=b}let u=[],h=[];for(let t=0;t<e.length;t++){let l=e[t],a=e[t+1]||null,r=e[t+2]||null,n=[];if(a&&a.isExtreme&&l.isExtreme&&!l.isCorner){let e=a.dist<2*o&&!a.isCorner,s=r&&r.isExtreme&&r.dist<2*o&&!r.isCorner;if(e&&!s?n.push(l,a):s&&n.push(l,a,r),n.length){let e=n.reduce((e,t)=>e+t.x,0)/n.length,a=n.reduce((e,t)=>e+t.y,0)/n.length;l.x=e,l.y=a,t+=n.length-1}}(l.isExtreme||l.isCorner||l.isDirChange)&&h.push(u.length),u.push(l);let s=u.length,i=u[0],p=u[s-1],c=fe(i,p)<2*o;i.isExtreme&&p.isExtreme&&c&&(p.x=i.x,p.y=i.y)}return u}(e,{debug:!1}):e,A=s||n?function(e,{closed:t=!0,keepCorners:l=!0,keepExtremes:a=!0,keepInflections:r=!1}={}){let n=[[e[0]]],s=0,i=n[s],o=e.length;for(let t=1;t<o;t++){t>0?e[t]:e[o-1];let r=e[t];t<o-1?e[t+1]:e[o-1],(a&&r.isExtreme||l&&r.isCorner)&&(s++,n.push([])),i=n[s],i.push(r)}return n}(b,{keepCorners:n,keepExtremes:s,keepInflections:i}):[b];return f=function(e=[],{closed:t=!0,keepCorners:l=!0,tolerance:a=1}={}){let r=e.length,n=[{type:"M",values:[e[0][0].x,e[0][0].y]}];for(let t=0;t<r;t++){let r=e[t],s=e[t+1]?e[t+1]:null,i=[],o=r.length;r[r.length-1],s&&r.push(s[0]),o<2||2===o&&r[1].isExtreme?(r[r.length-1],i=r.map(e=>({type:"L",values:[e.x,e.y]}))):i=dl(r,{maxError:a,keepCorners:l}),n.push(...i)}t&&n.push({type:"Z",values:[]});return n}(A,{closed:h,tolerance:l&&a?(l+a)/2*.004*p:2.5,keepCorners:n,keepExtremes:!0}),f=function(e=[]){let t=e.length,l={x:e[0].values[0],y:e[0].values[1]},a=l;for(let r=1;r<t;r++){let t=e[r],n=e[r-1]||null,{type:s,values:i}=t;if(e[r+1]&&e[r+1],"C"===s){let e=1.2,r={x:i[0],y:i[1]};a={x:i[4],y:i[5]};let s={x:i[2],y:i[3]};_(l,r,e);let o=_(a,s,e);n.values.slice(-2);let u=J(l,r,a,o,!0,!0);if(u){let e=.666;r=_(l,u,e),s=_(a,u,e),t.values=[r.x,r.y,s.x,s.y,a.x,a.y]}}i.length&&(l=a)}return e}(f),f}function Dl(e,{precisionPoly:t=1,autoAccuracy:l=!1,polyFormat:a="points",decimals:r=-1,simplifyRD:n=1,simplifyRDP:s=1}={}){let i=e.length,o=[],u=[{x:e[0].values[0],y:e[0].values[1]}],h=[];for(let t=1;t<i;t++){let l=e[t],{type:a,values:r,p0:n,p:s,dimA:i=0}=l;h.push(+i.toFixed(8)),u.push(s)}let p=[u[0]];h=h.filter(Boolean).sort();let c=h[h.length-1];t*=c>2&&c<25?1:20/c;for(let l=1;l<i;l++){let a=e[l],{type:r,values:n,p0:s,p:i,cp1:o=null,cp2:u=null,dimA:h}=a,c=h,y=o&&u?[s,o,u,i]:o?[s,o,i]:[];if(y.length){let e=u?_(o,u,.5):o;c=.2*(fe(s,e)+fe(i,e))+h}let f=Math.ceil(.2*c*t),x=Math.ceil(f);if(x&&y.length){let e=x?1/(x+1):0;for(let t=1;t<=x;t++){let l=K(y,e*t);p.push(l)}}p.push(i)}n>0&&(p=fl(p,{quality:n})),s>0&&(p=yl(p,{quality:s})),o=xl(p),e=o,l&&(r=function(e){let t=[];for(let l=1,a=e.length;l<a;l++){let a=e[l],{p0:r=null,p:n=null,dimA:s=0}=a;n&&r&&(s=s||fe(r,n),s&&t.push(s))}let l=t.sort(),a=Math.ceil(l.length/8);l=l.slice(0,a);let r=l.reduce((e,t)=>e+t,0)/a,n=r>112.5?0:Math.floor(75/r).toString().length;return Math.min(Math.max(0,n),8)}(u));let y=r>-1?p.map(e=>({x:ke(e.x,r),y:ke(e.y,r)})):p.map(e=>({x:e.x,y:e.y}));return"array"===a?y=y.map(e=>[e.x,e.y]):"string"===a&&(y=y.map(e=>[e.x,e.y].join(",")).flat().join(" ")),{pathData:e,poly:y}}function Tl(e){for(let t=1,l=e.length;t<l;t++){let l=e[t],{type:a,values:r,p0:n,cp1:s=null,cp2:i=null,p:o=null}=l;if("L"===a){let l=_(n,o,.333),a=_(o,n,.333);e[t].type="C",e[t].values=[l.x,l.y,a.x,a.y,o.x,o.y],e[t].cp1=l,e[t].cp2=a}}return e}function Ll(e=[],t=!1){let l=[];e.forEach((e,t)=>{let a=function(e=[],{precision:t=1}={}){let l=[];for(let t=0;t<e.length;t++){let a=e[t],r=t>0?e[t-1]:e[t],{type:n,values:s}=a,i={x:r.values[r.values.length-2],y:r.values[r.values.length-1]},o=s.length?{x:s[s.length-2],y:s[s.length-1]}:"",u=s.length?{x:s[0],y:s[1]}:"";switch(n){case"A":xt(i,s).forEach(e=>{let t=e.values,a={x:t[0],y:t[1]},r={x:t[2],y:t[3]},n={x:t[4],y:t[5]};l.push(a,r,n)});break;case"C":let e={x:s[2],y:s[3]};l.push(u,e);break;case"Q":l.push(u)}"z"!==n.toLowerCase()&&l.push(o)}return l}(e.pathData),r=Xe(a)>=0;l.push({pts:a,bb:Ge(a),cw:r,index:t,inter:0,includes:[],includedIn:[]})});let a=l.length;for(let e=0;e<a;e++){let t=l[e],r=t.bb;for(let n=0;n<a;n++){let a=l[n],s=a.bb;e===n||a.includes.includes(e)||Y({x:s.left+s.width/2,y:s.top+s.height/2},t.pts,r)&&(l[n].inter+=1,a.includedIn.push(e),t.includes.push(n))}}for(let t=0;a&&t<a;t++){let a=l[t],{cw:r,includedIn:n,includes:s}=a,i=s.length;for(let t=0;i&&t<i;t++){let a=s[t];l[a].cw===r&&(e[a].pathData=Dt(e[a].pathData),l[a].cw=!l[a].cw)}}return e}let $l={removeComments:!0,removeOffCanvas:!1,removeDimensions:!1,removeIds:!1,removeClassNames:!1,omitNamespace:!1,cleanUpStrokes:!0,addViewBox:!0,addDimensions:!1,removePrologue:!0,removeHidden:!0,removeUnused:!0,cleanupDefs:!0,cleanupClip:!0,cleanupSVGAtts:!0,removeNameSpaced:!0,removeNameSpacedAtts:!0,attributesToGroup:!1,minifyRgbColors:!0,stylesToAttributes:!1,fixHref:!1,legacyHref:!1,allowMeta:!1,allowDataAtts:!0,allowAriaAtts:!0,convertPathLength:!1,toAbsoluteUnits:!1,removeElements:[],removeSVGAttributes:[],removeElAttributes:[],unGroup:!1,mergePaths:!1,splitCompound:!1,shapesToPaths:!1,shapeConvert:0,convertShapes:["rect","ellipse","circle","line","polygon","polyline"],keepSmaller:!0,simplifyBezier:!0,optimizeOrder:!0,autoClose:!1,removeZeroLength:!0,refineClosing:!0,removeColinear:!0,flatBezierToLinetos:!0,revertToQuadratics:!0,refineExtremes:!1,simplifyCorners:!1,simplifyQuadraticCorners:!1,keepExtremes:!0,keepCorners:!0,keepInflections:!1,addExtremes:!1,fixDirections:!1,reversePath:!1,toAbsolute:!1,toRelative:!0,toMixed:!1,toShorthands:!0,toLonghands:!1,quadraticToCubic:!0,arcToCubic:!1,cubicToArc:!1,lineToCubic:!1,decimals:3,autoAccuracy:!0,minifyD:0,tolerance:1,toPolygon:!1,smoothPoly:!1,polyFormat:"object",precisionPoly:1,simplifyRD:0,simplifyRDP:0,harmonizeCpts:!1,removeOrphanSubpaths:!1,simplifyRound:!1,scale:1,scaleTo:0,crop:!1,alignToOrigin:!1,convertTransforms:!1};const Nl={};for(let e in $l){let t=$l[e],l=!1===t||!0===t,a=!isNaN(t),r=Array.isArray(t);l?t=!1:!r&&a?t=1===t?1:"decimals"===e?-1:0:r&&(t=[]),Nl[e]=t}const ql={default:$l,education:{...$l,keepSmaller:!1,toRelative:!1,toMixed:!1,toShorthands:!1,fixHref:!0,legacyHref:!1,addViewBox:!0,addDimensions:!0,removeComments:!1,decimals:3,minifyD:2},null:Nl,editor:{...$l,keepSmaller:!1,convertPathLength:!0,toRelative:!0,toMixed:!0,toShorthands:!0,allowMeta:!0,allowDataAtts:!0,allowAriaAtts:!0,legacyHref:!0,addViewBox:!0,addDimensions:!0,removeComments:!0,autoAccuracy:!0,minifyD:.5},noSimplification:{...$l,simplifyBezier:!1,quadraticToCubic:!1,toRelative:!0,toShorthands:!0,fixHref:!0,optimizeOrder:!1,removeZeroLength:!1,refineExtremes:!1,refineClosing:!1,removeColinear:!1,flatBezierToLinetos:!1,addDimensions:!1,removeComments:!0,minifyD:0},path:{...$l,shapeConvert:"toPaths",convertShapes:["rect","ellipse","circle","line","polygon","polyline"],addViewBox:!0,minifyD:.5},poly:{...$l,toPolygon:!0},curvefit:{...$l,smoothPoly:!0},detransform:{...$l,convertTransforms:!0,addViewBox:!0,minifyD:.5},high:{...$l,tolerance:1.1,toMixed:!0,refineExtremes:!0,simplifyCorners:!0,simplifyQuadraticCorners:!0,removeOrphanSubpaths:!0,simplifyRound:!0,removeClassNames:!0,cubicToArc:!0,minifyD:0,removeComments:!0,removeHidden:!0,addViewBox:!0,removeDimensions:!0,removeOffCanvas:!0}};function Il(e=[],{toRelative:t=!0,toShorthands:l=!0,minifyD:a=0,decimals:r=3,addDimensions:n=!1}={}){let s=(e=JSON.parse(JSON.stringify(e))).length,i=[],o=[];for(let t=0;t<s;t++){let l=e[t],{pathData:a,bb:r}=l;if(r.width&&r.height);else{r=Ge(ee(a,!0)),e[t].bb=r}i.push(r.left,r.right),o.push(r.top,r.bottom),l.includes=[]}for(let t=0,l=e.length;t<l;t++){let a=e[t],{bb:r,poly:n}=a;for(let a=0;a<l;a++){let l=e[a];if(t===a)continue;let n=l.bb,s={x:n.x+.5*n.width,y:n.y+.5*n.height};s.x>=r.x&&s.y>=r.y&&s.x<=r.right&&s.y<=r.bottom&&e[t].includes.push(a)}}for(let t=0,l=e.length;t<l;t++){let l=e[t],{includes:a}=l;a.forEach(l=>{let a=e[l].pathData;a.length&&(e[t].pathData.push(...a),e[l].pathData=[])})}e=(e=e.filter(e=>e.pathData.length)).sort((e,t)=>e.bb.x-t.bb.x);let u=Math.min(...i),h=Math.min(...o),p=Math.max(...i)-u,c=Math.max(...o)-h;[u,h,p,c]=[u,h,p,c].map(e=>ke(e,r));let y=`<svg ${n?`width="${p}" height="${c}"`:""} viewBox="${u} ${h} ${p} ${c}" xmlns="${C}">`;return e.forEach(e=>{let{pathData:n}=e;n=ot(n,{toRelative:t,toShorthands:l,decimals:r});let s=Je(n,a);y+=`<path d="${s}"/>`}),y+="</svg>",{pathData:e,svg:y}}function jl(e="",t={}){let l=void 0!==t.preset&&t.preset?t.preset:null;t={...l&&void 0!==ql[l]?ql[l]:ql.default,...t};let{getObject:a=!1,removeComments:r,removeOffCanvas:n,unGroup:s,mergePaths:i,removeElements:o,removeDimensions:u,removeIds:h,removeClassNames:p,omitNamespace:c,cleanUpStrokes:y,addViewBox:f,addDimensions:x,removePrologue:d,removeHidden:g,removeUnused:m,cleanupDefs:v,cleanupClip:b,cleanupSVGAtts:A,removeNameSpaced:M,removeNameSpacedAtts:w,attributesToGroup:C,minifyRgbColors:k,stylesToAttributes:E,fixHref:D,legacyHref:T,allowMeta:L,allowDataAtts:$,allowAriaAtts:N,removeSVGAttributes:q,removeElAttributes:I,shapesToPaths:j,shapeConvert:z,convertShapes:B,simplifyBezier:F,optimizeOrder:O,autoClose:R,removeZeroLength:Q,refineClosing:V,removeColinear:G,flatBezierToLinetos:U,revertToQuadratics:H,refineExtremes:W,simplifyCorners:Z,fixDirections:X,keepExtremes:J,keepCorners:Y,keepInflections:_,addExtremes:K,reversePath:te,toAbsolute:le,toRelative:ae,toMixed:re,toShorthands:ne,toLonghands:se,quadraticToCubic:ie,arcToCubic:oe,cubicToArc:ue,lineToCubic:he,decimals:pe,autoAccuracy:ce,minifyD:ye,tolerance:fe,toPolygon:xe,smoothPoly:ge,polyFormat:ve,precisionPoly:be,simplifyRD:Me,simplifyRDP:we,harmonizeCpts:Ce,removeOrphanSubpaths:Ee,simplifyRound:Pe,simplifyQuadraticCorners:De,scale:Te,scaleTo:Le,crop:$e,alignToOrigin:Ne,convertTransforms:qe,keepSmaller:Ie,splitCompound:je,convertPathLength:ze,toAbsoluteUnits:Be}=t;fe=Math.max(.1,fe),Te=Math.max(.001,Te),X&&(Ie=!1),(1!==Te||Le||$e||Ne)&&(qe=!0,t.convertTransforms=!0);let Fe=P(e),{inputType:Oe,log:Re}=Fe;if("invalid"===Oe||e===S){return{svg:S,d:"",polys:[],report:{original:0,new:0,saved:0,svgSize:0,svgSizeOpt:0,compression:0,decimals:0,invalid:!0},pathDataPlusArr:[],pathDataPlusArr_global:[],inputType:"invalid",dOriginal:""}}let Qe="",Ve=0,Ue=0,He=0,We={},Ze="",Xe="svgMarkup"===Oe?1:0,Ye=[],Ke=[],et=[],at=[],rt="",nt="";Ve=e.length;let st={x:0,y:0,width:0,height:0},it={x:0,y:0,width:0,height:0},ht=[],pt=[];oe=!!xe||oe,R=!1;let ct=[];if("json"===Oe){let t=[];/([{,]\s*)(x|y)(\s*:)/.test(e)&&(e=e.replaceAll("x:",'"x":').replaceAll("y:",'"y":'));try{t=JSON.parse(e)}catch{console.warn("No valid JSON")}t.length&&(Oe="polyArray",e=Lt(t))}if("svgMarkup"!==Oe&&"symbol"!==Oe){if("pathDataString"===Oe)Ze=e;else if("polyString"===Oe)je=!1,at=Lt(e),Ze=xl(at,closed);else if("polyArray"===Oe||"polyObjectArray"===Oe||"polyComplexArray"===Oe||"polyComplexObjectArray"===Oe){je=!1,at=Lt(e),Ze=xl(at,!0),rt=Ze.map(e=>`${e.type} ${e.values.join(" ")}`).join(" "),nt=rt,Ve=rt.length}else"pathData"===Oe?(Ze=e,rt=Array.from(Ze).map(e=>`${e.type} ${e.values.join(" ")}`).join(" "),Ve=rt.length):Ze="M0 0 h0";Ke.push({d:Ze,el:null})}else{"symbol"===Oe&&(e=e.replaceAll("<symbol","<svg").replaceAll("</symbol","</svg"),h=!1,u=!0),j&&(z="toPaths",B=["rect","polygon","polyline","line","circle","ellipse"]),Qe=rl(e,JSON.parse(JSON.stringify(t))).svg,Qe.querySelectorAll("path").forEach((e,t)=>{let l=e.getAttribute("d");Ke.push({d:l,el:e,idx:t})}),st=mt(Qe,pe)}let yt={toRelative:ae,toMixed:re,toShorthands:ne,decimals:pe},ft=0,xt=0;for(let e=0,t=Ke.length;t&&e<t;e++){let t=[],l=Ke[e],{d:a,el:r}=l,n=!1;r&&(r.hasAttribute("stroke-dasharray")||r.hasAttribute("stroke-dashoffset"))&&(O=!1);let s=ut(a,{quadraticToCubic:ie,arcToCubic:oe}),i=ge||xe?Ge(ee(s)):null;if(1!==Te||Le){if(Le)if(st.width&&!$e)Te=Le/st.width;else{let e=s.map(e=>({type:e.type,values:e.values}));e=ot(e,{arcToCubic:!0}),e=Ae(e);let t=Ge(ee(e));ht.push(t.x,t.x+t.width),pt.push(t.y,t.y+t.height);let l=Le/t.width;Te=l}s=pl(s,Te)}ft+=s.length,!n&&Ee&&(s=Ct(s));let o=me(s),u=o.length;for(let e=0;e<u;e++){let l=o[e],a=[],r=Array.from(new Set(l.map(e=>e.type))).join("");n=!/[acqts]/gi.test(r);let s=!!n;if(n&&!Xe){a=ee(l);let e=Ge(de(a,64));Me>0&&(a=fl(a,{quality:Me,width:e.width,height:e.height})),we>0&&(a=yl(a,{quality:we,width:e.width,height:e.height})),xe=!1,l=xl(a,s)}else if(xe){F=!1,ge=!1,Ce=!1,l=lt(l),l=Dl(l,{precisionPoly:be,autoAccuracy:ce,simplifyRD:Me,simplifyRDP:we}).pathData,n=!0}if(ge&&n){l=St(l),l=Pl(ee(l),{denoise:.8,tolerance:fe,width:i.width,height:i.height,manhattan:!1,absolute:!1,keepCorners:Y,keepExtremes:J,keepInflections:_,closed:s,simplifyRD:Me,simplifyRDP:we})}(G||Q)&&(l=St(l)),O&&(l=kt(l)),G&&(l=wt(l,{tolerance:fe,flatBezierToLinetos:!1})),K&&(l=Ae(l,{tMin:0,tMax:1,addExtremes:K,angles:[30]})),te&&(l=Dt(l));let u={bb:{},dimA:0,pathData:[]};if(n){if(!a.length){let e=ot(JSON.parse(JSON.stringify(l)),{toLonghands:!0,toAbsolute:!0,arcToCubic:!0,testTypes:!0});u.bb=Ge(ee(e))}u.dimA=u.bb.width+u.bb.height,u.pathData=lt(l,{addSquareLength:!1,addArea:!1,addAverageDim:!1})}else u=tt(l);let{pathData:h,bb:p,dimA:c}=u;if(ht.push(p.x,p.x+p.width),pt.push(p.y,p.y+p.height),V&&(h=hl(h,{threshold:.001*c})),h=F?_e(h,{simplifyBezier:F,keepInflections:_,keepExtremes:J,keepCorners:Y,revertToQuadratics:H,tolerance:fe}):h,W){h=Tt(h,{threshold:.05*(p.width+p.height),tolerance:fe})}if(!oe&&ue&&(h=dt(h,{areaThreshold:2.5})),G&&U&&(h=wt(h,{tolerance:fe,flatBezierToLinetos:U})),Z){h=il(h,{threshold:.1*(p.width+p.height),tolerance:fe,simplifyQuadraticCorners:De})}if(Pe&&(h=ul(h),h=ol(h)),H&&(h=cl(h,fe)),he&&(h=Tl(h)),O&&(h=Et(h,{autoClose:R})),ce){let e=Se(h);ct.push(e)}t.push({pathData:h,bb:p})}let h=Math.min(...ht),p=Math.min(...pt);if(it={x:h,y:p,width:Math.max(...ht)-h,height:Math.max(...pt)-p},it.height,it.width,X&&(t=Ll(t)),O){t.forEach(e=>{void 0===e.bb.x&&(e.bb=Ge(ee(e.pathData)))});try{t=t.sort((e,t)=>+e.bb.x.toFixed(2)-+t.bb.x.toFixed(2)||e.bb.y-t.bb.y)}catch{}}if(s=[],Ye.push(t),t.forEach(e=>{s.push(...e.pathData)}),ce){ct=ct.sort().reverse();let e=ct[Math.floor(.5*ct.length)];pe=Math.floor(.5*(ct[0]+e)),yt.decimals=pe}if(n&&t.forEach(e=>{let t=ee(e.pathData,!1,pe);"array"===ve&&(t=$t(t)),et.push(t)}),je&&!Xe&&t.length>1){let e=Il(t,{toRelative:ae,toShorthands:ne,decimals:pe,addDimensions:x});Qe=(new DOMParser).parseFromString(e.svg,"image/svg+xml").querySelector("svg"),Xe=1,Oe="splitPath"}s=JSON.parse(JSON.stringify(s)),s=ot(s,yt),Q&&(s=St(s)),Ne&&(s[0].values[0]=ke(s[0].values[0]-it.x,pe),s[0].values[1]=ke(s[0].values[1]-it.y,pe),it.x=0,it.y=0),xt+=s.length;let c=Je(s,ye);Ue=c.length,He=+(100/Ve*Ue).toFixed(2),l.d=c,l.report={original:ft,new:xt,saved:ft-xt,compression:He,decimals:pe},r&&r.setAttribute("d",c)}if(Xe||"symbol"===Oe){if(Te){let{x:e,y:t,width:l,height:a,w:r,h:n,hasViewBox:s,hasWidth:i,hasHeight:o,widthUnit:u,heightUnit:h}=st;$e&&(e=it.x,t=it.y,l=it.width,a=it.height,r=l,n=a),s&&Qe.setAttribute("viewBox",[e,t,l,a].map(e=>ke(e*Te,pe)).join(" ")),i&&Qe.setAttribute("width",ke(r*Te,pe)+u),o&&Qe.setAttribute("height",ke(n*Te,pe)+h)}if(X){Qe.querySelectorAll("path[fill-rule], path[clip-rule]").forEach(e=>{e.removeAttribute("fill-rule"),e.removeAttribute("clip-rule")})}q.includes("xmlns")&&(c=!0),Qe=Ft(Qe,{omitNamespace:c,removeComments:r,format:ye}),Ue=Qe.length,He=+(100/Ve*Ue).toFixed(2),Ve=+(Ve/1024).toFixed(3),Ue=+(Ue/1024).toFixed(3),We={original:ft,new:xt,saved:ft-xt,svgSize:Ve,svgSizeOpt:Ue,compression:He,decimals:pe},Ie&&Ve<Ue&&!je&&(Qe=e,We.node="Original is smaller!")}else({d:Ze,report:We}=Ke[0]);return et.length&&1===et.length&&(et=et[0]),"string"===ve&&et.length&&(et=et.flat().map(e=>`${e.x},${e.y}`).join(" ")),a?{svg:Qe,d:Ze,polys:et,report:We,pathDataPlusArr:Ye,inputType:Oe,dOriginal:nt}:Ze||Qe}"undefined"!=typeof window&&(window.svgPathSimplify=jl,window.getElementTransform=ge,window.validateSVG=E,window.detectInputType=P,window.getViewBox=mt),e.PI=A,e.abs=l,e.acos=a,e.asin=r,e.atan=n,e.atan2=s,e.ceil=i,e.cos=o,e.detectInputType=P,e.exp=u,e.floor=h,e.getElementTransform=ge,e.getViewBox=mt,e.hypot=c,e.log=p,e.max=y,e.min=f,e.pow=x,e.random=d,e.round=g,e.sin=m,e.sqrt=v,e.svgPathSimplify=jl,e.tan=b,e.validateSVG=E}(this["svg-path-simplify"]=this["svg-path-simplify"]||{});