modern-openxml
Version:
OpenXML for JavaScript
84 lines • 288 kB
JavaScript
(function(M,J){typeof exports=="object"&&typeof module<"u"?J(exports):typeof define=="function"&&define.amd?define(["exports"],J):(M=typeof globalThis<"u"?globalThis:M||self,J(M.modernOpenxml={}))})(this,function(M){"use strict";var Ph=Object.defineProperty;var Ch=(M,J,ue)=>J in M?Ph(M,J,{enumerable:!0,configurable:!0,writable:!0,value:ue}):M[J]=ue;var k=(M,J,ue)=>Ch(M,typeof J!="symbol"?J+"":J,ue);var ct;var J=Uint8Array,ue=Uint16Array,qn=Int32Array,cn=new J([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),hn=new J([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),jn=new J([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Ur=function(n,e){for(var t=new ue(31),r=0;r<31;++r)t[r]=e+=1<<n[r-1];for(var s=new qn(t[30]),r=1;r<30;++r)for(var a=t[r];a<t[r+1];++a)s[a]=a-t[r]<<5|r;return{b:t,r:s}},Gr=Ur(cn,2),qr=Gr.b,Wn=Gr.r;qr[28]=258,Wn[258]=28;for(var jr=Ur(hn,0),Ca=jr.b,Wr=jr.r,Vn=new ue(32768),se=0;se<32768;++se){var nt=(se&43690)>>1|(se&21845)<<1;nt=(nt&52428)>>2|(nt&13107)<<2,nt=(nt&61680)>>4|(nt&3855)<<4,Vn[se]=((nt&65280)>>8|(nt&255)<<8)>>1}for(var He=function(n,e,t){for(var r=n.length,s=0,a=new ue(e);s<r;++s)n[s]&&++a[n[s]-1];var i=new ue(e);for(s=1;s<e;++s)i[s]=i[s-1]+a[s-1]<<1;var o;if(t){o=new ue(1<<e);var l=15-e;for(s=0;s<r;++s)if(n[s])for(var c=s<<4|n[s],h=e-n[s],p=i[n[s]-1]++<<h,f=p|(1<<h)-1;p<=f;++p)o[Vn[p]>>l]=c}else for(o=new ue(r),s=0;s<r;++s)n[s]&&(o[s]=Vn[i[n[s]-1]++]>>15-n[s]);return o},rt=new J(288),se=0;se<144;++se)rt[se]=8;for(var se=144;se<256;++se)rt[se]=9;for(var se=256;se<280;++se)rt[se]=7;for(var se=280;se<288;++se)rt[se]=8;for(var Nt=new J(32),se=0;se<32;++se)Nt[se]=5;var Ta=He(rt,9,0),Ma=He(rt,9,1),ka=He(Nt,5,0),Fa=He(Nt,5,1),Hn=function(n){for(var e=n[0],t=1;t<n.length;++t)n[t]>e&&(e=n[t]);return e},Ue=function(n,e,t){var r=e/8|0;return(n[r]|n[r+1]<<8)>>(e&7)&t},Xn=function(n,e){var t=e/8|0;return(n[t]|n[t+1]<<8|n[t+2]<<16)>>(e&7)},Yn=function(n){return(n+7)/8|0},zt=function(n,e,t){return(e==null||e<0)&&(e=0),(t==null||t>n.length)&&(t=n.length),new J(n.subarray(e,t))},La=["unexpected EOF","invalid block type","invalid length/literal","invalid distance","stream finished","no stream handler",,"no callback","invalid UTF-8 data","extra field too long","date not in range 1980-2099","filename too long","stream finishing","invalid zip data"],ge=function(n,e,t){var r=new Error(e||La[n]);if(r.code=n,Error.captureStackTrace&&Error.captureStackTrace(r,ge),!t)throw r;return r},Vr=function(n,e,t,r){var s=n.length,a=r?r.length:0;if(!s||e.f&&!e.l)return t||new J(0);var i=!t,o=i||e.i!=2,l=e.i;i&&(t=new J(s*3));var c=function(Ie){var _e=t.length;if(Ie>_e){var ve=new J(Math.max(_e*2,Ie));ve.set(t),t=ve}},h=e.f||0,p=e.p||0,f=e.b||0,u=e.l,g=e.d,m=e.m,d=e.n,S=s*8;do{if(!u){h=Ue(n,p,1);var T=Ue(n,p+1,3);if(p+=3,T)if(T==1)u=Ma,g=Fa,m=9,d=5;else if(T==2){var w=Ue(n,p,31)+257,P=Ue(n,p+10,15)+4,b=w+Ue(n,p+5,31)+1;p+=14;for(var F=new J(b),z=new J(19),L=0;L<P;++L)z[jn[L]]=Ue(n,p+L*3,7);p+=P*3;for(var I=Hn(z),N=(1<<I)-1,_=He(z,I,1),L=0;L<b;){var $=_[Ue(n,p,N)];p+=$&15;var x=$>>4;if(x<16)F[L++]=x;else{var Z=0,B=0;for(x==16?(B=3+Ue(n,p,3),p+=2,Z=F[L-1]):x==17?(B=3+Ue(n,p,7),p+=3):x==18&&(B=11+Ue(n,p,127),p+=7);B--;)F[L++]=Z}}var O=F.subarray(0,w),W=F.subarray(w);m=Hn(O),d=Hn(W),u=He(O,m,1),g=He(W,d,1)}else ge(1);else{var x=Yn(p)+4,C=n[x-4]|n[x-3]<<8,y=x+C;if(y>s){l&&ge(0);break}o&&c(f+C),t.set(n.subarray(x,y),f),e.b=f+=C,e.p=p=y*8,e.f=h;continue}if(p>S){l&&ge(0);break}}o&&c(f+131072);for(var R=(1<<m)-1,G=(1<<d)-1,Y=p;;Y=p){var Z=u[Xn(n,p)&R],D=Z>>4;if(p+=Z&15,p>S){l&&ge(0);break}if(Z||ge(2),D<256)t[f++]=D;else if(D==256){Y=p,u=null;break}else{var V=D-254;if(D>264){var L=D-257,j=cn[L];V=Ue(n,p,(1<<j)-1)+qr[L],p+=j}var Q=g[Xn(n,p)&G],te=Q>>4;Q||ge(3),p+=Q&15;var W=Ca[te];if(te>3){var j=hn[te];W+=Xn(n,p)&(1<<j)-1,p+=j}if(p>S){l&&ge(0);break}o&&c(f+131072);var q=f+V;if(f<W){var Me=a-W,ke=Math.min(W,q);for(Me+f<0&&ge(3);f<ke;++f)t[f]=r[Me+f]}for(;f<q;++f)t[f]=t[f-W]}}e.l=u,e.p=Y,e.b=f,e.f=h,u&&(h=1,e.m=m,e.d=g,e.n=d)}while(!h);return f!=t.length&&i?zt(t,0,f):t.subarray(0,f)},et=function(n,e,t){t<<=e&7;var r=e/8|0;n[r]|=t,n[r+1]|=t>>8},Ut=function(n,e,t){t<<=e&7;var r=e/8|0;n[r]|=t,n[r+1]|=t>>8,n[r+2]|=t>>16},Zn=function(n,e){for(var t=[],r=0;r<n.length;++r)n[r]&&t.push({s:r,f:n[r]});var s=t.length,a=t.slice();if(!s)return{t:Zr,l:0};if(s==1){var i=new J(t[0].s+1);return i[t[0].s]=1,{t:i,l:1}}t.sort(function(y,w){return y.f-w.f}),t.push({s:-1,f:25001});var o=t[0],l=t[1],c=0,h=1,p=2;for(t[0]={s:-1,f:o.f+l.f,l:o,r:l};h!=s-1;)o=t[t[c].f<t[p].f?c++:p++],l=t[c!=h&&t[c].f<t[p].f?c++:p++],t[h++]={s:-1,f:o.f+l.f,l:o,r:l};for(var f=a[0].s,r=1;r<s;++r)a[r].s>f&&(f=a[r].s);var u=new ue(f+1),g=Kn(t[h-1],u,0);if(g>e){var r=0,m=0,d=g-e,S=1<<d;for(a.sort(function(w,P){return u[P.s]-u[w.s]||w.f-P.f});r<s;++r){var T=a[r].s;if(u[T]>e)m+=S-(1<<g-u[T]),u[T]=e;else break}for(m>>=d;m>0;){var x=a[r].s;u[x]<e?m-=1<<e-u[x]++-1:++r}for(;r>=0&&m;--r){var C=a[r].s;u[C]==e&&(--u[C],++m)}g=e}return{t:new J(u),l:g}},Kn=function(n,e,t){return n.s==-1?Math.max(Kn(n.l,e,t+1),Kn(n.r,e,t+1)):e[n.s]=t},Hr=function(n){for(var e=n.length;e&&!n[--e];);for(var t=new ue(++e),r=0,s=n[0],a=1,i=function(l){t[r++]=l},o=1;o<=e;++o)if(n[o]==s&&o!=e)++a;else{if(!s&&a>2){for(;a>138;a-=138)i(32754);a>2&&(i(a>10?a-11<<5|28690:a-3<<5|12305),a=0)}else if(a>3){for(i(s),--a;a>6;a-=6)i(8304);a>2&&(i(a-3<<5|8208),a=0)}for(;a--;)i(s);a=1,s=n[o]}return{c:t.subarray(0,r),n:e}},Gt=function(n,e){for(var t=0,r=0;r<e.length;++r)t+=n[r]*e[r];return t},Xr=function(n,e,t){var r=t.length,s=Yn(e+2);n[s]=r&255,n[s+1]=r>>8,n[s+2]=n[s]^255,n[s+3]=n[s+1]^255;for(var a=0;a<r;++a)n[s+a+4]=t[a];return(s+4+r)*8},Yr=function(n,e,t,r,s,a,i,o,l,c,h){et(e,h++,t),++s[256];for(var p=Zn(s,15),f=p.t,u=p.l,g=Zn(a,15),m=g.t,d=g.l,S=Hr(f),T=S.c,x=S.n,C=Hr(m),y=C.c,w=C.n,P=new ue(19),b=0;b<T.length;++b)++P[T[b]&31];for(var b=0;b<y.length;++b)++P[y[b]&31];for(var F=Zn(P,7),z=F.t,L=F.l,I=19;I>4&&!z[jn[I-1]];--I);var N=c+5<<3,_=Gt(s,rt)+Gt(a,Nt)+i,$=Gt(s,f)+Gt(a,m)+i+14+3*I+Gt(P,z)+2*P[16]+3*P[17]+7*P[18];if(l>=0&&N<=_&&N<=$)return Xr(e,h,n.subarray(l,l+c));var Z,B,O,W;if(et(e,h,1+($<_)),h+=2,$<_){Z=He(f,u,0),B=f,O=He(m,d,0),W=m;var R=He(z,L,0);et(e,h,x-257),et(e,h+5,w-1),et(e,h+10,I-4),h+=14;for(var b=0;b<I;++b)et(e,h+3*b,z[jn[b]]);h+=3*I;for(var G=[T,y],Y=0;Y<2;++Y)for(var D=G[Y],b=0;b<D.length;++b){var V=D[b]&31;et(e,h,R[V]),h+=z[V],V>15&&(et(e,h,D[b]>>5&127),h+=D[b]>>12)}}else Z=Ta,B=rt,O=ka,W=Nt;for(var b=0;b<o;++b){var j=r[b];if(j>255){var V=j>>18&31;Ut(e,h,Z[V+257]),h+=B[V+257],V>7&&(et(e,h,j>>23&31),h+=cn[V]);var Q=j&31;Ut(e,h,O[Q]),h+=W[Q],Q>3&&(Ut(e,h,j>>5&8191),h+=hn[Q])}else Ut(e,h,Z[j]),h+=B[j]}return Ut(e,h,Z[256]),h+B[256]},Aa=new qn([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),Zr=new J(0),Ba=function(n,e,t,r,s,a){var i=a.z||n.length,o=new J(r+i+5*(1+Math.ceil(i/7e3))+s),l=o.subarray(r,o.length-s),c=a.l,h=(a.r||0)&7;if(e){h&&(l[0]=a.r>>3);for(var p=Aa[e-1],f=p>>13,u=p&8191,g=(1<<t)-1,m=a.p||new ue(32768),d=a.h||new ue(g+1),S=Math.ceil(t/3),T=2*S,x=function(Oe){return(n[Oe]^n[Oe+1]<<S^n[Oe+2]<<T)&g},C=new qn(25e3),y=new ue(288),w=new ue(32),P=0,b=0,F=a.i||0,z=0,L=a.w||0,I=0;F+2<i;++F){var N=x(F),_=F&32767,$=d[N];if(m[_]=$,d[N]=_,L<=F){var Z=i-F;if((P>7e3||z>24576)&&(Z>423||!c)){h=Yr(n,l,0,C,y,w,b,z,I,F-I,h),z=P=b=0,I=F;for(var B=0;B<286;++B)y[B]=0;for(var B=0;B<30;++B)w[B]=0}var O=2,W=0,R=u,G=_-$&32767;if(Z>2&&N==x(F-G))for(var Y=Math.min(f,Z)-1,D=Math.min(32767,F),V=Math.min(258,Z);G<=D&&--R&&_!=$;){if(n[F+O]==n[F+O-G]){for(var j=0;j<V&&n[F+j]==n[F+j-G];++j);if(j>O){if(O=j,W=G,j>Y)break;for(var Q=Math.min(G,j-2),te=0,B=0;B<Q;++B){var q=F-G+B&32767,Me=m[q],ke=q-Me&32767;ke>te&&(te=ke,$=q)}}}_=$,$=m[_],G+=_-$&32767}if(W){C[z++]=268435456|Wn[O]<<18|Wr[W];var Ie=Wn[O]&31,_e=Wr[W]&31;b+=cn[Ie]+hn[_e],++y[257+Ie],++w[_e],L=F+O,++P}else C[z++]=n[F],++y[n[F]]}}for(F=Math.max(F,L);F<i;++F)C[z++]=n[F],++y[n[F]];h=Yr(n,l,c,C,y,w,b,z,I,F-I,h),c||(a.r=h&7|l[h/8|0]<<3,h-=7,a.h=d,a.p=m,a.i=F,a.w=L)}else{for(var F=a.w||0;F<i+c;F+=65535){var ve=F+65535;ve>=i&&(l[h/8|0]=c,ve=i),h=Xr(l,h+1,n.subarray(F,ve))}a.i=i}return zt(o,0,r+Yn(h)+s)},$a=function(){for(var n=new Int32Array(256),e=0;e<256;++e){for(var t=e,r=9;--r;)t=(t&1&&-306674912)^t>>>1;n[e]=t}return n}(),Ia=function(){var n=-1;return{p:function(e){for(var t=n,r=0;r<e.length;++r)t=$a[t&255^e[r]]^t>>>8;n=t},d:function(){return~n}}},Kr=function(){var n=1,e=0;return{p:function(t){for(var r=n,s=e,a=t.length|0,i=0;i!=a;){for(var o=Math.min(i+2655,a);i<o;++i)s+=r+=t[i];r=(r&65535)+15*(r>>16),s=(s&65535)+15*(s>>16)}n=r,e=s},d:function(){return n%=65521,e%=65521,(n&255)<<24|(n&65280)<<8|(e&255)<<8|e>>8}}},Qr=function(n,e,t,r,s){if(!s&&(s={l:1},e.dictionary)){var a=e.dictionary.subarray(-32768),i=new J(a.length+n.length);i.set(a),i.set(n,a.length),n=i,s.w=a.length}return Ba(n,e.level==null?6:e.level,e.mem==null?s.l?Math.ceil(Math.max(8,Math.min(13,Math.log(n.length)))*1.5):20:12+e.mem,t,r,s)},Jr=function(n,e){var t={};for(var r in n)t[r]=n[r];for(var r in e)t[r]=e[r];return t},Xe=function(n,e){return n[e]|n[e+1]<<8},Ge=function(n,e){return(n[e]|n[e+1]<<8|n[e+2]<<16|n[e+3]<<24)>>>0},Qn=function(n,e){return Ge(n,e)+Ge(n,e+4)*4294967296},pe=function(n,e,t){for(;t;++e)n[e]=t,t>>>=8},Ea=function(n,e){var t=e.level,r=t==0?0:t<6?1:t==9?3:2;if(n[0]=120,n[1]=r<<6|(e.dictionary&&32),n[1]|=31-(n[0]<<8|n[1])%31,e.dictionary){var s=Kr();s.p(e.dictionary),pe(n,2,s.d())}},Da=function(n,e){return((n[0]&15)!=8||n[0]>>4>7||(n[0]<<8|n[1])%31)&&ge(6,"invalid zlib data"),(n[1]>>5&1)==1&&ge(6,"invalid zlib data: "+(n[1]&32?"need":"unexpected")+" dictionary"),(n[1]>>3&4)+2};function _a(n,e){return Qr(n,e||{},0,0)}function Oa(n,e){return Vr(n,{i:2},e&&e.out,e&&e.dictionary)}function Ra(n,e){e||(e={});var t=Kr();t.p(n);var r=Qr(n,e,e.dictionary?6:2,4);return Ea(r,e),pe(r,r.length-4,t.d()),r}function Na(n,e){return Vr(n.subarray(Da(n),-4),{i:2},e,e)}var es=function(n,e,t,r){for(var s in n){var a=n[s],i=e+s,o=r;Array.isArray(a)&&(o=Jr(r,a[1]),a=a[0]),a instanceof J?t[i]=[a,o]:(t[i+="/"]=[new J(0),o],es(a,i,t,r))}},ts=typeof TextEncoder<"u"&&new TextEncoder,Jn=typeof TextDecoder<"u"&&new TextDecoder,za=0;try{Jn.decode(Zr,{stream:!0}),za=1}catch{}var Ua=function(n){for(var e="",t=0;;){var r=n[t++],s=(r>127)+(r>223)+(r>239);if(t+s>n.length)return{s:e,r:zt(n,t-1)};s?s==3?(r=((r&15)<<18|(n[t++]&63)<<12|(n[t++]&63)<<6|n[t++]&63)-65536,e+=String.fromCharCode(55296|r>>10,56320|r&1023)):s&1?e+=String.fromCharCode((r&31)<<6|n[t++]&63):e+=String.fromCharCode((r&15)<<12|(n[t++]&63)<<6|n[t++]&63):e+=String.fromCharCode(r)}};function ns(n,e){var t;if(ts)return ts.encode(n);for(var r=n.length,s=new J(n.length+(n.length>>1)),a=0,i=function(c){s[a++]=c},t=0;t<r;++t){if(a+5>s.length){var o=new J(a+8+(r-t<<1));o.set(s),s=o}var l=n.charCodeAt(t);l<128||e?i(l):l<2048?(i(192|l>>6),i(128|l&63)):l>55295&&l<57344?(l=65536+(l&1047552)|n.charCodeAt(++t)&1023,i(240|l>>18),i(128|l>>12&63),i(128|l>>6&63),i(128|l&63)):(i(224|l>>12),i(128|l>>6&63),i(128|l&63))}return zt(s,0,a)}function Ga(n,e){if(e){for(var t="",r=0;r<n.length;r+=16384)t+=String.fromCharCode.apply(null,n.subarray(r,r+16384));return t}else{if(Jn)return Jn.decode(n);var s=Ua(n),a=s.s,t=s.r;return t.length&&ge(8),a}}var qa=function(n,e){return e+30+Xe(n,e+26)+Xe(n,e+28)},ja=function(n,e,t){var r=Xe(n,e+28),s=Ga(n.subarray(e+46,e+46+r),!(Xe(n,e+8)&2048)),a=e+46+r,i=Ge(n,e+20),o=t&&i==4294967295?Wa(n,a):[i,Ge(n,e+24),Ge(n,e+42)],l=o[0],c=o[1],h=o[2];return[Xe(n,e+10),l,c,s,a+Xe(n,e+30)+Xe(n,e+32),h]},Wa=function(n,e){for(;Xe(n,e)!=1;e+=4+Xe(n,e+2));return[Qn(n,e+12),Qn(n,e+4),Qn(n,e+20)]},er=function(n){var e=0;if(n)for(var t in n){var r=n[t].length;r>65535&&ge(9),e+=r+4}return e},rs=function(n,e,t,r,s,a,i,o){var l=r.length,c=t.extra,h=o&&o.length,p=er(c);pe(n,e,i!=null?33639248:67324752),e+=4,i!=null&&(n[e++]=20,n[e++]=t.os),n[e]=20,e+=2,n[e++]=t.flag<<1|(a<0&&8),n[e++]=s&&8,n[e++]=t.compression&255,n[e++]=t.compression>>8;var f=new Date(t.mtime==null?Date.now():t.mtime),u=f.getFullYear()-1980;if((u<0||u>119)&&ge(10),pe(n,e,u<<25|f.getMonth()+1<<21|f.getDate()<<16|f.getHours()<<11|f.getMinutes()<<5|f.getSeconds()>>1),e+=4,a!=-1&&(pe(n,e,t.crc),pe(n,e+4,a<0?-a-2:a),pe(n,e+8,t.size)),pe(n,e+12,l),pe(n,e+14,p),e+=16,i!=null&&(pe(n,e,h),pe(n,e+6,t.attrs),pe(n,e+10,i),e+=14),n.set(r,e),e+=l,p)for(var g in c){var m=c[g],d=m.length;pe(n,e,+g),pe(n,e+2,d),n.set(m,e+4),e+=4+d}return h&&(n.set(o,e),e+=h),e},Va=function(n,e,t,r,s){pe(n,e,101010256),pe(n,e+8,t),pe(n,e+10,t),pe(n,e+12,r),pe(n,e+16,s)};function Ha(n,e){e||(e={});var t={},r=[];es(n,"",t,e);var s=0,a=0;for(var i in t){var o=t[i],l=o[0],c=o[1],h=c.level==0?0:8,p=ns(i),f=p.length,u=c.comment,g=u&&ns(u),m=g&&g.length,d=er(c.extra);f>65535&&ge(11);var S=h?_a(l,c):l,T=S.length,x=Ia();x.p(l),r.push(Jr(c,{size:l.length,crc:x.d(),c:S,f:p,m:g,u:f!=i.length||g&&u.length!=m,o:s,compression:h})),s+=30+f+d+T,a+=76+2*(f+d)+(m||0)+T}for(var C=new J(a+22),y=s,w=a-s,P=0;P<r.length;++P){var p=r[P];rs(C,p.o,p,p.f,p.u,p.c.length);var b=30+p.f.length+er(p.extra);C.set(p.c,p.o+b),rs(C,s,p,p.f,p.u,p.c.length,p.o,p.m),s+=16+b+(p.m?p.m.length:0)}return Va(C,s,r.length,w,y),C}function Xa(n,e){for(var t={},r=n.length-22;Ge(n,r)!=101010256;--r)(!r||n.length-r>65558)&&ge(13);var s=Xe(n,r+8);if(!s)return{};var a=Ge(n,r+16),i=a==4294967295||s==65535;if(i){var o=Ge(n,r-12);i=Ge(n,o)==101075792,i&&(s=Ge(n,o+32),a=Ge(n,o+48))}for(var l=0;l<s;++l){var c=ja(n,a,i),h=c[0],p=c[1],f=c[2],u=c[3],g=c[4],m=c[5],d=qa(n,m);a=g,h?h==8?t[u]=Oa(n.subarray(d,d+p),{out:new J(f)}):ge(14,"unknown compression type "+h):t[u]=zt(n,d,d+p)}return t}class U{static encode(e,t){switch(t){case"boolean":return e?"1":"0";case"degree":return String(Number(e)*6e4);case"fontSize":return String(Number(e)*100);case"number":return String(e);case"string":return String(e);case"emu":return String(Number(e)/this.DPI*914400);case"dxa":return String(Number(e)/this.DPI*1440);case"percentage":return String(Number(e)*1e3);case"rate":return String(Number(e)*1e5);case"lineHeight":return String(e*1e5/1.2018-.0034);default:throw new Error(`type not found: ${t}`)}}static decode(e,t){if(e!==void 0){switch(t){case"boolean":return e==="true"||Number(e)===1;case"degree":case"ST_Angle":case"ST_PositiveFixedAngle":case"positiveFixedAngle":return Number(e)/6e4;case"fontSize":return Number(e)/100;case"int":case"unsignedInt":case"number":case"SByteValue":case"ST_TLTimeNodeID":case"ST_ShapeID":return Number(e);case"string":case"HexBinaryValue":case"StringValue":return String(e);case"emu":case"ST_PositiveCoordinate":case"ST_LineWidth":case"ST_Coordinate32":case"ST_AdjCoordinate":return Number(e)/914400*this.DPI;case"dxa":return Number(e)/1440*this.DPI;case"percentage":case"ST_Percentage":case"ST_PositivePercentage":case"CT_PositiveFixedPercentage":case"ST_PositiveFixedPercentage":case"positiveFixedPercentage":case"rate":return Number(e)/1e5;case"ST_TextSpacingPercentOrPercentString":return Number(String(e).replace("%",""))/1e5;case"ST_TextSpacingPoint":return Number(e)/100;case"lineHeight":return Number(e)/1e5*1.2018+.0034}throw new Error(`type not found: ${t}`)}}}k(U,"DPI",72);const ss={"‚":"‚","„":"„","…":"…","‰":"‰","ˆ":"ˆ","¢":"¢","£":"£","¥":"¥","€":"€","§":"§","©":"©","®":"®","™":"™","×":"×","÷":"÷","ƒ":"ƒ"};class wt{constructor(e,t){k(this,"doc");k(this,"resolver",e=>e&&this.namespaces[e]||null);this.dom=e,this.namespaces=t,this.doc=e.ownerDocument,this.find=this.find.bind(this),this.get=this.get.bind(this),this.attr=this.attr.bind(this),this.query=this.query.bind(this)}get name(){return this.dom.nodeName}static fromXML(e="",t){e=e.replace(/xmlns=".*?"/g,"");for(const a in ss)e=e.replace(new RegExp(a,"gi"),ss[a]);const r=new DOMParser().parseFromString(e,"text/xml"),s={};for(const[,a,i]of e.matchAll(/xmlns:(\w)="(.+?)"/g))s[a]=i;return new wt(r.documentElement,{...s,...t})}getDOM(){return this.dom}evaluate(e,t=XPathResult.ANY_TYPE){return this.doc.evaluate(e,this.dom,this.resolver,t,null)}query(e,t="node"){switch(t){case"node":{const r=this.evaluate(e,XPathResult.FIRST_ORDERED_NODE_TYPE).singleNodeValue;return r?new wt(r,this.namespaces):void 0}case"nodes":{const r=this.evaluate(e,XPathResult.ORDERED_NODE_ITERATOR_TYPE),s=[];let a;for(;a=r.iterateNext();)s.push(new wt(a,this.namespaces));return s}default:return U.decode(this.evaluate(e,XPathResult.STRING_TYPE).stringValue||void 0,t)}}get(e){return this.query(e,"nodes")}find(e){return this.query(e,"node")}attr(e,t="string"){return this.query(e,t)}}function is(n){return`<Properties
xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties"
xmlns:vt="http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes"
>
<Application>Microsoft Office PowerPoint</Application>
<PresentationFormat>Widescreen</PresentationFormat>
<Slides>${n}</Slides>
<Notes>0</Notes>
<HiddenSlides>0</HiddenSlides>
<ScaleCrop>false</ScaleCrop>
<HeadingPairs>
<vt:vector size="4" baseType="variant">
<vt:variant>
<vt:lpstr>Theme</vt:lpstr>
</vt:variant>
<vt:variant>
<vt:i4>1</vt:i4>
</vt:variant>
<vt:variant>
<vt:lpstr>Slide Titles</vt:lpstr>
</vt:variant>
<vt:variant>
<vt:i4>${n}</vt:i4>
</vt:variant>
</vt:vector>
</HeadingPairs>
<TitlesOfParts>
<vt:vector size="${n+1}" baseType="lpstr">
<vt:lpstr>Office Theme</vt:lpstr>
${Array.from({length:n}).map(e=>"<vt:lpstr>PowerPoint Presentation</vt:lpstr>").join(`
`)}
</vt:vector>
</TitlesOfParts>
<LinksUpToDate>false</LinksUpToDate>
<SharedDoc>false</SharedDoc>
<HyperlinksChanged>false</HyperlinksChanged>
<AppVersion>16.0000</AppVersion>
</Properties>`}function as(){const n=new Date;return`<cp:coreProperties
xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:dcterms="http://purl.org/dc/terms/"
xmlns:dcmitype="http://purl.org/dc/dcmitype/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
>
<dc:title>modern-openxml</dc:title>
<dc:subject>modern-openxml</dc:subject>
<dc:creator>modern-openxml</dc:creator>
<cp:lastModifiedBy>modern-openxml</cp:lastModifiedBy>
<cp:revision>1</cp:revision>
<dcterms:modified xsi:type="dcterms:W3CDTF">${`${n.getFullYear()}-${n.getMonth()+1}-${n.getDate()}T${n.getHours()}:${n.getMinutes()}:${n.getSeconds()}Z`}</dcterms:modified>
</cp:coreProperties>`}var os=(n=>(n.sha1="SHA-1",n.sha256="SHA-256",n.sha384="SHA-384",n.sha512="SHA-512",n))(os||{});const tr=typeof window<"u",ls=tr&&"crypto"in window,cs=ls&&"subtle"in window.crypto;function hs(n,e="sha1"){return new Promise((t,r)=>{const s=new FileReader;s.addEventListener("load",()=>{crypto.subtle.digest(os[e],s.result).then(a=>{const i=new Uint8Array(a);t(Array.prototype.map.call(i,o=>`00${o.toString(16)}`.slice(-2)).join(""))})}),s.addEventListener("error",()=>{r(s.error)}),s.readAsArrayBuffer(n)})}const ps='<?xml version="1.0" encoding="UTF-8" standalone="yes"?>';function fs(n){return`${ps}
${n}`}function us(n){return n.replace(/\n/g,"").replace(/> +</g,"><").replace(/ +([:\w]+=".+?")/g," $1").replace(/([:\w]+=".+?") +/g,"$1 ")}function E(n,e){return e===void 0?"":`${n}="${e}"`}function ee(n){return n.length?` ${n.filter(Boolean).join(" ")}`:""}function K(n,e=1,t=!0){if(n===void 0)return"";const r=Array.from({length:e}).map(()=>" ").join("");return n=typeof n=="string"?n:n.join(`
`),n.split(`
`).filter(Boolean).map((s,a)=>t&&a===0?s:`${r}${s}`).join(`
`)}function pn(n,e){return e?`<${n}>${e}</${n}>`:""}const Ya=[[/docProps\/app\.xml$/,"app",null],[/docProps\/core\.xml$/,"core",null],[/tableStyles\.xml$/,"tableStyles",null],[/presProps\.xml$/,"presProps",null],[/viewProps\.xml$/,"viewProps",null],[/theme\d+\.xml$/,"theme",null],[/slide\d+\.xml$/,"slide",null],[/colors\d+\.xml$/,"diagramColor",null],[/data\d+\.xml$/,"diagramData",null],[/layout\d+\.xml$/,"diagramLayout",null],[/quickStyle\d+\.xml$/,"diagramStyle",null],[/drawing\d+\.xml$/,"diagramDrawing",null],[/slideLayout\d+\.xml$/,"slideLayout",null],[/slideMaster\d+\.xml$/,"slideMaster",null],[/notesSlide\d+\.xml$/,"notesSlide",null],[/notesMaster\d+\.xml$/,"notesMaster",null],[/presentation\.xml$/,"presentation",null],[/\.rels$/,"relationship","rels"],[/\.svg$/i,"image/svg+xml","svg"],[/\.gif$/i,"image/gif","gif"],[/\.png$/i,"image/png","png"],[/\.jpg$/i,"image/jpeg","jpg"],[/\.jpeg$/i,"image/jpeg","jpeg"],[/\.wmf$/i,"image/x-wmf","wmf"],[/\.mp4$/i,"video/mp4","mp4"],[/\.mp3$/i,"audio/mpeg","mp3"],[/\.fntdata$/i,"font","fntdata"]];function nr(n){for(const[e,t,r]of Ya)if(e.test(n))return[t,r]}const ds={jpeg:"image/jpeg",jpg:"image/jpeg",png:"image/png",webp:"image/webp",svg:"image/svg+xml",mp3:"audio/mpeg",mp4:"video/mp4",mov:"video/quicktime"},gs=Object.fromEntries(Object.entries(ds).map(([n,e])=>[e,n]));function ms(n,e){if(n!==void 0){for(const[t,r]of Object.entries(e))if(r===n)return t;return n}}function ys(n,e){if(n!==void 0)return e[n]}const vs={map:{ctr:"center",dist:"distributed",just:"justified",justLow:"justified-low",l:"left",r:"right",thaiDist:"thai-distributed"},encode(n){return ms(n,this.map)},decode(n){return ys(n,this.map)}};function Ye(n){if(typeof n!="object"||!n)return n;if(Array.isArray(n))return n.map(t=>Ye(t));const e={};for(const t in n){const r=n[t];r!=null&&(e[t]=Ye(r))}return e}const Za=new Map([["aliceBlue","#F0F8FF"],["antiqueWhite","#FAEBD7"],["aqua","#00FFFF"],["aquamarine","#7FFFD4"],["azure","#F0FFFF"],["beige","#F5F5DC"],["bisque","#FFE4C4"],["black","#000000"],["blanchedAlmond","#FFEBCD"],["blue","#0000FF"],["blueViolet","#8A2BE2"],["brown","#A52A2A"],["burlyWood","#DEB887"],["cadetBlue","#5F9EA0"],["chartreuse","#7FFF00"],["chocolate","#D2691E"],["coral","#FF7F50"],["cornflowerBlue","#6495ED"],["cornsilk","#FFF8DC"],["crimson","#DC143C"],["cyan","#00FFFF"],["darkBlue","#00008B"],["darkCyan","#008B8B"],["darkGoldenrod","#B8860B"],["darkGray","#A9A9A9"],["darkGreen","#006400"],["darkKhaki","#BDB76B"],["darkMagenta","#8B008B"],["darkOliveGreen","#556B2F"],["darkOrange","#FF8C00"],["darkOrchid","#9932CC"],["darkRed","#8B0000"],["darkSalmon","#E9967A"],["darkSeaGreen","#8FBC8F"],["darkSlateBlue","#483D8B"],["darkSlateGray","#2F4F4F"],["darkTurquoise","#00CED1"],["darkViolet","#9400D3"],["deepPink","#FF1493"],["deepSkyBlue","#00BFFF"],["dimGray","#696969"],["dodgerBlue","#1E90FF"],["firebrick","#B22222"],["floralWhite","#FFFAF0"],["forestGreen","#228B22"],["fuchsia","#FF00FF"],["gainsboro","#DCDCDC"],["ghostWhite","#F8F8FF"],["gold","#FFD700"],["goldenrod","#DAA520"],["gray","#808080"],["green","#008000"],["greenYellow","#ADFF2F"],["honeydew","#F0FFF0"],["hotPink","#FF69B4"],["indianRed","#CD5C5C"],["indigo","#4B0082"],["ivory","#FFFFF0"],["khaki","#F0E68C"],["lavender","#E6E6FA"],["lavenderBlush","#FFF0F5"],["lawnGreen","#7CFC00"],["lemonChiffon","#FFFACD"],["lightBlue","#ADD8E6"],["lightCoral","#F08080"],["lightCyan","#E0FFFF"],["lightGoldenrodYellow","#FAFAD2"],["lightGray","#D3D3D3"],["lightGreen","#90EE90"],["lightPink","#FFB6C1"],["lightSalmon","#FFA07A"],["lightSeaGreen","#20B2AA"],["lightSkyBlue","#87CEFA"],["lightSlateGray","#778899"],["lightSteelBlue","#B0C4DE"],["lightYellow","#FFFFE0"],["lime","#00FF00"],["limeGreen","#32CD32"],["linen","#FAF0E6"],["magenta","#FF00FF"],["maroon","#800000"],["mediumAquamarine","#66CDAA"],["mediumBlue","#0000CD"],["mediumOrchid","#BA55D3"],["mediumPurple","#9370DB"],["mediumSeaGreen","#3CB371"],["mediumSlateBlue","#7B68EE"],["mediumSpringGreen","#00FA9A"],["mediumTurquoise","#48D1CC"],["mediumVioletRed","#C71585"],["midnightBlue","#191970"],["mintCream","#F5FFFA"],["mistyRose","#FFE4E1"],["moccasin","#FFE4B5"],["navajoWhite","#FFDEAD"],["navy","#000080"],["oldLace","#FDF5E6"],["olive","#808000"],["oliveDrab","#6B8E23"],["orange","#FFA500"],["orangeRed","#FF4500"],["orchid","#DA70D6"],["paleGoldenrod","#EEE8AA"],["paleGreen","#98FB98"],["paleTurquoise","#AFEEEE"],["paleVioletRed","#DB7093"],["papayaWhip","#FFEFD5"],["peachPuff","#FFDAB9"],["peru","#CD853F"],["pink","#FFC0CB"],["plum","#DDA0DD"],["powderBlue","#B0E0E6"],["purple","#800080"],["red","#FF0000"],["rosyBrown","#BC8F8F"],["royalBlue","#4169E1"],["saddleBrown","#8B4513"],["salmon","#FA8072"],["sandyBrown","#F4A460"],["seaGreen","#2E8B57"],["seaShell","#FFF5EE"],["sienna","#A0522D"],["silver","#C0C0C0"],["skyBlue","#87CEEB"],["slateBlue","#6A5ACD"],["slateGray","#708090"],["snow","#FFFAFA"],["springGreen","#00FF7F"],["steelBlue","#4682B4"],["tan","#D2B48C"],["teal","#008080"],["thistle","#D8BFD8"],["tomato","#FF6347"],["turquoise","#40E0D0"],["violet","#EE82EE"],["wheat","#F5DEB3"],["white","#FFFFFF"],["whiteSmoke","#F5F5F5"],["yellow","#FFFF00"],["yellowGreen","#9ACD32"]]),Ka={windowText:"#000000",window:"#FFFFFF",menu:"#F0F0F0",buttonFace:"#F0F0F0",buttonText:"#000000",highlight:"#3399FF",highlightText:"#FFFFFF"},xs=["a:hslClr","a:prstClr","a:schemeClr","a:scrgbClr","a:srgbClr","a:sysClr"],ws=`*[(${xs.map(n=>`self::${n}`).join(" or ")})]`;function Qa(n,e){var t,r,s,a,i;switch(n.name){case"a:hslClr":return bt(Ss({h:n.attr("@hue","ST_PositiveFixedAngle"),s:n.attr("@sat","ST_Percentage"),l:n.attr("@lum","ST_Percentage")}));case"a:prstClr":{const o=n.attr("@val");return bt(Za.get(o)??o)}case"a:schemeClr":{const o=e==null?void 0:e.master,l=e==null?void 0:e.theme,c=n.attr("@val");let h=c;h=((r=(t=o==null?void 0:o.meta)==null?void 0:t.colorMap)==null?void 0:r[h])??h;let p=(s=l==null?void 0:l.colorScheme)==null?void 0:s[h];return p||(h=((a=l==null?void 0:l.extraColorMap)==null?void 0:a[h])??h,p=(i=l==null?void 0:l.extraColorScheme)==null?void 0:i[h]),p?bt(p):c}case"a:scrgbClr":return bt({r:n.attr("@r","ST_Percentage"),g:n.attr("@g","ST_Percentage"),b:n.attr("@b","ST_Percentage")});case"a:srgbClr":return bt(n.attr("@val"));case"a:sysClr":return bt(Ka[n.attr("@val")]??"#000000");default:return"#000000"}}function ht(n,e){if(n&&!xs.includes(n==null?void 0:n.name)&&(n=n.find(ws)),!n)return;const t=Qa(n,e);if(!t||!t.startsWith("#"))return t;const r={...Ja(t),a:~~((n.attr("a:alpha/@val","ST_PositivePercentage")??1)*100)/100},s=n.attr("a:lumMod/@val","rate"),a=n.attr("a:lumOff/@val","rate");if(s){const i=eo(r);i.l=i.l*Number(s)+Number(a??0);const o=Ss(i);r.r=o.r,r.g=o.g,r.b=o.b}return`rgba(${r.r},${r.g},${r.b},${r.a})`}function fn(n){var e;if(!n)return"";if(n.startsWith("linear-gradient")){const t=((e=n.match(/linear-gradient\((.+)\)$/))==null?void 0:e[1])??"",r=t.split(",")[0],s=r.includes("deg")?r:"0deg";let a=Number(s.replace("deg",""));a=a&&(a+270)%360;const i=U.encode(a,"positiveFixedAngle"),o=t.replace(s,"").matchAll(/(#|rgba|rgb)(.+?) ([\d.]+%)/gi),l=Array.from(o).map(c=>{var p;let h=c[2];return h.startsWith("(")?h=h.split(",").length>3?`rgba${h}`:`rgb${h}`:h=`#${h}`,`<a:gs pos="${Number(((p=c[3])==null?void 0:p.replace("%",""))??0)*1e3}">
${K(bs(h))}
</a:gs>`});return`<a:gradFill>
<a:gsLst>
${K(l,2)}
</a:gsLst>
<a:lin${ee([E("ang",i),E("scaled",0)])}/>
</a:gradFill>`}return`<a:solidFill>
${K(bs(n))}
</a:solidFill>`}function bs(n){var t,r,s,a;let e=1e5;if(n==="transparent"&&(n="#0000"),n.startsWith("#"))n=n.substring(1),(n.length===3||n.length===4)&&(n=n.split("").map(i=>i+i).join("")),n.length===8&&(e*=+`0x${n.substring(6,8)}`/255,n=n.substring(0,6));else if(n.startsWith("rgba")){const i=(r=(t=n.match(/rgba\((.+)\)/))==null?void 0:t[1])==null?void 0:r.split(",").map(o=>Number(o.trim()));i&&(n=Ps({r:i[0],g:i[1],b:i[2]}),i[3]>1&&(i[3]/=255),e=i[3]*1e5)}else if(n.startsWith("rgb")){const i=(a=(s=n.match(/rgb\((.+)\)/))==null?void 0:s[1])==null?void 0:a.split(",").map(o=>Number(o.trim()));i&&(n=Ps({r:i[0],g:i[1],b:i[2]}))}return`<a:srgbClr val="${n}">
<a:alpha val="${Math.floor(e)}"/>
</a:srgbClr>`}function bt(n){return typeof n=="object"?`#${n.r}${n.g}${n.b}`:n.startsWith("#")?n:`#${n}`}function rr(n,e,t){return t<0&&(t+=1),t>1&&(t-=1),t<1/6?n+(e-n)*6*t:t<1/2?e:t<2/3?n+(e-n)*(2/3-t)*6:n}function Ss(n){const{h:e,s:t,l:r}=n;let s,a,i;if(t===0)s=a=i=r;else{const o=r<.5?r*(1+t):r+t-r*t,l=2*r-o;s=rr(l,o,e+1/3),a=rr(l,o,e),i=rr(l,o,e-1/3)}return{r:Math.round(s*255),g:Math.round(a*255),b:Math.round(i*255)}}function Ps(n){const{r:e,g:t,b:r}=n;return((1<<24)+(e<<16)+(t<<8)+r).toString(16).slice(1)}function Ja(n){n=n.replace(/^#/,""),n.length===3&&(n=n.split("").map(s=>s+s).join(""));const e=Number.parseInt(n.substring(0,2),16),t=Number.parseInt(n.substring(2,4),16),r=Number.parseInt(n.substring(4,6),16);return{r:e,g:t,b:r}}function eo(n){let{r:e,g:t,b:r}=n;e/=255,t/=255,r/=255;const s=Math.max(e,t,r),a=Math.min(e,t,r);let i=(s+a)/2,o=i;const l=o;if(s===a)i=o=0;else{const c=s-a;switch(o=l>.5?c/(2-s-a):c/(s+a),s){case e:i=(t-r)/c+(t<r?6:0);break;case t:i=(r-e)/c+2;break;case r:i=(e-t)/c+4;break}i/=6}return{h:i,s:o,l}}function sr(n){if(!n)return;const e={};return n.get("*").forEach(t=>{const r=t.name.replace("a:",""),s=t.attr("a:srgbClr/@val")??t.attr("a:sysClr/@lastClr");e[r]=s&&`#${s}`}),e}function Cs(n,e){if(!n)return;const t=ht(n,e);if(!t)return;const r=n.attr("@blurRad","ST_PositiveCoordinate")??0,s=n.attr("@dir","ST_PositiveFixedAngle")??0,a=n.attr("@dist","ST_PositiveCoordinate")??0,o=(s+90)/180*Math.PI,l=a*Math.sin(o),c=a*-Math.cos(o);return{color:t,offsetX:l,offsetY:c,blur:r}}function to(n,e){const t=Cs(n,e);if(!t)return;const r=n.attr("@sx","ST_Percentage")??1,s=n.attr("@sy","ST_Percentage")??1;return{...t,offsetX:t.offsetX*r,offsetY:t.offsetY*s}}function no(n){if(n)return{radius:n.attr("@rad","ST_PositiveCoordinate")??0}}function ir(n,e){if(n)return{innerShadow:Cs(n.find("a:innerShdw"),e),outerShadow:to(n.find("a:outerShdw"),e),softEdge:no(n.find("a:softEdge"))}}const Ts=["a:noFill","a:blipFill","p:blipFill","a:gradFill","a:grpFill","a:pattFill","a:solidFill"],pt=`*[(${Ts.map(n=>`self::${n}`).join(" or ")})]`;function ft(n,e){var t,r;if(n&&!Ts.includes(n==null?void 0:n.name)&&(n=n.find(pt)),!!n)switch(n.name){case"a:blipFill":case"p:blipFill":return ar(n,e);case"a:solidFill":return{color:ht(n,e)};case"a:gradFill":return{color:ro(n,e)};case"a:grpFill":return(t=e==null?void 0:e.parents)!=null&&t.length?(r=e.parents[e.parents.length-1])==null?void 0:r.fill:void 0;case"a:pattFill":return;case"a:noFill":default:return}}function ar(n,e){var h,p,f;if(!n)return;const t=n.attr("a:blip/a:extLst//a:ext/asvg:svgBlip/@r:embed")??n.attr("a:blip/@r:embed");let r;e!=null&&e.drawing?r=(h=e==null?void 0:e.drawing.rels.find(u=>u.id===t))==null?void 0:h.path:r=(f=(p=e==null?void 0:e.rels)==null?void 0:p.find(u=>u.id===t))==null?void 0:f.path,r=r??t;const s=n.find("a:srcRect"),a=s?Ye({top:s.attr("@t","ST_Percentage"),right:s.attr("@r","ST_Percentage"),bottom:s.attr("@b","ST_Percentage"),left:s.attr("@l","ST_Percentage")}):void 0,i=n.find("a:stretch/a:fillRect"),o=i?Ye({top:i.attr("@t","ST_Percentage"),right:i.attr("@r","ST_Percentage"),bottom:i.attr("@b","ST_Percentage"),left:i.attr("@l","ST_Percentage")}):void 0,l=n.find("a:tile"),c=l?Ye({scaleX:l.attr("@sx","ST_Percentage"),scaleY:l.attr("@sy","ST_Percentage"),alignment:l.attr("@algn"),translateX:l.attr("@tx","ST_Percentage"),translateY:l.attr("@ty","ST_Percentage"),flip:l.attr("@flip")}):void 0;return{rotateWithShape:n.attr("@rotWithShape","boolean"),dpi:n.attr("@dpi","number"),src:r,opacity:n.attr("a:blip/a:alphaModFix/@amt","ST_PositivePercentage"),srcRect:a,stretch:o&&Object.keys(o).length>0?{rect:o}:void 0,tile:c&&Object.keys(c).length>0?c:void 0}}function ro(n,e){if(!n)return;const t=n.get("a:gsLst/a:gs").map(s=>({color:ht(s,e),percentage:(s.attr("@pos","positiveFixedPercentage")??0)*100})).filter(({color:s})=>s).sort((s,a)=>s.percentage-a.percentage);return t.length?n.attr("a:path/@path")==="circle"?`radial-gradient(${t.map(({color:s,percentage:a})=>`${s} ${a}%`).join(",")})`:`linear-gradient(${[`${((n.attr("a:lin/@ang","positiveFixedAngle")??0)+90)%360}deg`,...t.map(({color:s,percentage:a})=>`${s} ${a}%`)].join(",")})`:void 0}function un(n,e=!1){if(n){if(n.src||e){const t=e?"p:blipFill":"a:blipFill",r=n.src??n.src;return`<${t}>
<a:blip${ee([E("r:embed",r)])}>
${K([n.opacity!==void 0&&`<a:alphaModFix amt="${U.encode(n.opacity,"ST_PositivePercentage")}" />`])}
<a:lum/>
</a:blip>
<a:srcRect/>
<a:stretch>
<a:fillRect/>
</a:stretch>
</${t}>`}else if(n.color)return fn(String(n.color??"#FFFFFF"))}}function Ms(n){if(n)return n==null?void 0:n.get("*").reduce((e,t)=>{var s;const r=(s=t.name.match(/a:(\w+)Font/))==null?void 0:s[1];return r&&(e[r]=Ye({complexScript:t.attr("a:cs/@typeface")||void 0,eastasian:t.attr("a:ea/@typeface")||void 0,latin:t.attr("a:latin/@typeface")||void 0,symbol:t.attr("a:sym/@typeface")||void 0})),e},{})}var ks=(n=>(n.NONE="none",n.OVAL="oval",n.STEALTH="stealth",n.TRIANGLE="triangle",n.ARROW="arrow",n.DIAMOND="diamond",n))(ks||{}),Fs=(n=>(n.SOLID="solid",n.SYS_DOT="sysDot",n.SYS_DASH="sysDash",n.DASH="dash",n.DASH_DOT="dashDot",n.LG_DASH="lgDash",n.LG_DASH_DOT="lgDashDot",n.LG_DASH_DOT_DOT="lgDashDotDot",n))(Fs||{});function dn(n,e){if(n&&n.name!=="a:ln"&&(n=n.find(".//a:ln")),!n)return;const t=(e==null?void 0:e.query)??n.query,r=n.attr("a:prstDash/@val"),s=ft(t(pt),e);return{style:r?r!=="solid"?"dashed":"solid":void 0,width:n.attr("@w","ST_LineWidth"),color:s==null?void 0:s.color}}function Ls(n){if(n)return`<a:ln${ee([E("w",U.encode(n.width,"ST_LineWidth"))])}>
${n.width?K(fn(String(n.color))):"<a:noFill/>"}
</a:ln>`}function gn(n,e){var s;if(!n)return;const t=n.find("p:bgRef"),r=t==null?void 0:t.attr("@idx","number");if(r){const a=(s=e==null?void 0:e.theme)==null?void 0:s.backgroundFillStyleList;if(!a)return;const i=a[r-1]??a[0];return(i==null?void 0:i.color)==="phClr"?{color:ht(t,e)}:i}else return ft(n.find("p:bgPr"),e)}function As(n){if(!n)return;const e=un(n);return`<p:bg>
<p:bgPr>
${K(e,2)}
<a:effectLst/>
</p:bgPr>
</p:bg>`}function mn(n){if(!n)return;const e=n.getDOM(),t=e.attributes.length,r={};for(let s=0;s<t;s++){const a=e.attributes.item(s);r[a.name]=a.value}return r}function St(n){if(n)return{name:n.attr("@name"),meta:{id:n.attr("@id"),desc:n.attr("@descr"),click:n.attr("a:hlinkClick/@action")},style:{visibility:n.attr("@hidden","boolean")?"hidden":void 0}}}function yn(n){return n.meta.click?`<p:cNvPr${ee([E("id",n.meta.id),E("name",n.name??"")])}>
<a:hlinkClick${ee([E("r:id",""),E("action",n.meta.click)])}/>
</p:cNvPr>`:`<p:cNvPr${ee([E("id",n.meta.id),E("name",n.name??"")])}/>`}function Bs(n,e){var i,o,l,c;if(n&&n.name!=="p:ph"&&(n=n.find("//p:nvPr/p:ph")),!n)return;const t=n==null?void 0:n.attr("@idx"),r=t!==void 0,s=(n==null?void 0:n.attr("@type"))??(r?"body":void 0);let a;if(s){const p=`p:cSld/p:spTree/p:sp/p:nvSpPr/p:nvPr/p:ph[${[`@type="${s}"`,r&&`@idx="${t}"`].filter(Boolean).join(" and ")}]/ancestor::p:sp`;a=((o=(i=e==null?void 0:e.layout)==null?void 0:i.node)==null?void 0:o.find(p))??((c=(l=e==null?void 0:e.master)==null?void 0:l.node)==null?void 0:c.find(p))}return{type:s,index:t,node:a}}function Pt(n,e){var o,l,c,h;if(!n)return;const t=n.attr("a:audioFile/@r:link"),r=n.attr("a:videoFile/@r:link"),s=(l=(o=e==null?void 0:e.rels)==null?void 0:o.find(p=>p.id===t))==null?void 0:l.path,a=(h=(c=e==null?void 0:e.rels)==null?void 0:c.find(p=>p.id===r))==null?void 0:h.path,i=Bs(n.find("p:ph"),e);return{audio:s?{url:s}:void 0,video:a?{url:a}:void 0,placeholder:i}}function $s(n){return"<p:nvPr/>"}function so(n,e,t=2){const r=e&&e.length,s=r?e[0]*t:n.length;let a=Is(n,0,s,t,!0);const i=[];if(!a||a.next===a.prev)return i;let o,l,c;if(r&&(a=co(n,e,a,t)),n.length>80*t){o=1/0,l=1/0;let h=-1/0,p=-1/0;for(let f=t;f<s;f+=t){const u=n[f],g=n[f+1];u<o&&(o=u),g<l&&(l=g),u>h&&(h=u),g>p&&(p=g)}c=Math.max(h-o,p-l),c=c!==0?32767/c:0}return qt(a,i,t,o,l,c,0),i}function Is(n,e,t,r,s){let a;if(s===bo(n,e,t,r)>0)for(let i=e;i<t;i+=r)a=Os(i/r|0,n[i],n[i+1],a);else for(let i=t-r;i>=e;i-=r)a=Os(i/r|0,n[i],n[i+1],a);return a&&Ct(a,a.next)&&(Vt(a),a=a.next),a}function ut(n,e){if(!n)return n;e||(e=n);let t=n,r;do if(r=!1,!t.steiner&&(Ct(t,t.next)||oe(t.prev,t,t.next)===0)){if(Vt(t),t=e=t.prev,t===t.next)break;r=!0}else t=t.next;while(r||t!==e);return e}function qt(n,e,t,r,s,a,i){if(!n)return;!i&&a&&go(n,r,s,a);let o=n;for(;n.prev!==n.next;){const l=n.prev,c=n.next;if(a?ao(n,r,s,a):io(n)){e.push(l.i,n.i,c.i),Vt(n),n=c.next,o=c.next;continue}if(n=c,n===o){i?i===1?(n=oo(ut(n),e),qt(n,e,t,r,s,a,2)):i===2&&lo(n,e,t,r,s,a):qt(ut(n),e,t,r,s,a,1);break}}}function io(n){const e=n.prev,t=n,r=n.next;if(oe(e,t,r)>=0)return!1;const s=e.x,a=t.x,i=r.x,o=e.y,l=t.y,c=r.y,h=Math.min(s,a,i),p=Math.min(o,l,c),f=Math.max(s,a,i),u=Math.max(o,l,c);let g=r.next;for(;g!==e;){if(g.x>=h&&g.x<=f&&g.y>=p&&g.y<=u&&jt(s,o,a,l,i,c,g.x,g.y)&&oe(g.prev,g,g.next)>=0)return!1;g=g.next}return!0}function ao(n,e,t,r){const s=n.prev,a=n,i=n.next;if(oe(s,a,i)>=0)return!1;const o=s.x,l=a.x,c=i.x,h=s.y,p=a.y,f=i.y,u=Math.min(o,l,c),g=Math.min(h,p,f),m=Math.max(o,l,c),d=Math.max(h,p,f),S=or(u,g,e,t,r),T=or(m,d,e,t,r);let x=n.prevZ,C=n.nextZ;for(;x&&x.z>=S&&C&&C.z<=T;){if(x.x>=u&&x.x<=m&&x.y>=g&&x.y<=d&&x!==s&&x!==i&&jt(o,h,l,p,c,f,x.x,x.y)&&oe(x.prev,x,x.next)>=0||(x=x.prevZ,C.x>=u&&C.x<=m&&C.y>=g&&C.y<=d&&C!==s&&C!==i&&jt(o,h,l,p,c,f,C.x,C.y)&&oe(C.prev,C,C.next)>=0))return!1;C=C.nextZ}for(;x&&x.z>=S;){if(x.x>=u&&x.x<=m&&x.y>=g&&x.y<=d&&x!==s&&x!==i&&jt(o,h,l,p,c,f,x.x,x.y)&&oe(x.prev,x,x.next)>=0)return!1;x=x.prevZ}for(;C&&C.z<=T;){if(C.x>=u&&C.x<=m&&C.y>=g&&C.y<=d&&C!==s&&C!==i&&jt(o,h,l,p,c,f,C.x,C.y)&&oe(C.prev,C,C.next)>=0)return!1;C=C.nextZ}return!0}function oo(n,e){let t=n;do{const r=t.prev,s=t.next.next;!Ct(r,s)&&Ds(r,t,t.next,s)&&Wt(r,s)&&Wt(s,r)&&(e.push(r.i,t.i,s.i),Vt(t),Vt(t.next),t=n=s),t=t.next}while(t!==n);return ut(t)}function lo(n,e,t,r,s,a){let i=n;do{let o=i.next.next;for(;o!==i.prev;){if(i.i!==o.i&&vo(i,o)){let l=_s(i,o);i=ut(i,i.next),l=ut(l,l.next),qt(i,e,t,r,s,a,0),qt(l,e,t,r,s,a,0);return}o=o.next}i=i.next}while(i!==n)}function co(n,e,t,r){const s=[];for(let a=0,i=e.length;a<i;a++){const o=e[a]*r,l=a<i-1?e[a+1]*r:n.length,c=Is(n,o,l,r,!1);c===c.next&&(c.steiner=!0),s.push(yo(c))}s.sort(ho);for(let a=0;a<s.length;a++)t=po(s[a],t);return t}function ho(n,e){let t=n.x-e.x;if(t===0&&(t=n.y-e.y,t===0)){const r=(n.next.y-n.y)/(n.next.x-n.x),s=(e.next.y-e.y)/(e.next.x-e.x);t=r-s}return t}function po(n,e){const t=fo(n,e);if(!t)return e;const r=_s(t,n);return ut(r,r.next),ut(t,t.next)}function fo(n,e){let t=e;const r=n.x,s=n.y;let a=-1/0,i;if(Ct(n,t))return t;do{if(Ct(n,t.next))return t.next;if(s<=t.y&&s>=t.next.y&&t.next.y!==t.y){const p=t.x+(s-t.y)*(t.next.x-t.x)/(t.next.y-t.y);if(p<=r&&p>a&&(a=p,i=t.x<t.next.x?t:t.next,p===r))return i}t=t.next}while(t!==e);if(!i)return null;const o=i,l=i.x,c=i.y;let h=1/0;t=i;do{if(r>=t.x&&t.x>=l&&r!==t.x&&Es(s<c?r:a,s,l,c,s<c?a:r,s,t.x,t.y)){const p=Math.abs(s-t.y)/(r-t.x);Wt(t,n)&&(p<h||p===h&&(t.x>i.x||t.x===i.x&&uo(i,t)))&&(i=t,h=p)}t=t.next}while(t!==o);return i}function uo(n,e){return oe(n.prev,n,e.prev)<0&&oe(e.next,n,n.next)<0}function go(n,e,t,r){let s=n;do s.z===0&&(s.z=or(s.x,s.y,e,t,r)),s.prevZ=s.prev,s.nextZ=s.next,s=s.next;while(s!==n);s.prevZ.nextZ=null,s.prevZ=null,mo(s)}function mo(n){let e,t=1;do{let r=n,s;n=null;let a=null;for(e=0;r;){e++;let i=r,o=0;for(let c=0;c<t&&(o++,i=i.nextZ,!!i);c++);let l=t;for(;o>0||l>0&&i;)o!==0&&(l===0||!i||r.z<=i.z)?(s=r,r=r.nextZ,o--):(s=i,i=i.nextZ,l--),a?a.nextZ=s:n=s,s.prevZ=a,a=s;r=i}a.nextZ=null,t*=2}while(e>1);return n}function or(n,e,t,r,s){return n=(n-t)*s|0,e=(e-r)*s|0,n=(n|n<<8)&16711935,n=(n|n<<4)&252645135,n=(n|n<<2)&858993459,n=(n|n<<1)&1431655765,e=(e|e<<8)&16711935,e=(e|e<<4)&252645135,e=(e|e<<2)&858993459,e=(e|e<<1)&1431655765,n|e<<1}function yo(n){let e=n,t=n;do(e.x<t.x||e.x===t.x&&e.y<t.y)&&(t=e),e=e.next;while(e!==n);return t}function Es(n,e,t,r,s,a,i,o){return(s-i)*(e-o)>=(n-i)*(a-o)&&(n-i)*(r-o)>=(t-i)*(e-o)&&(t-i)*(a-o)>=(s-i)*(r-o)}function jt(n,e,t,r,s,a,i,o){return!(n===i&&e===o)&&Es(n,e,t,r,s,a,i,o)}function vo(n,e){return n.next.i!==e.i&&n.prev.i!==e.i&&!xo(n,e)&&(Wt(n,e)&&Wt(e,n)&&wo(n,e)&&(oe(n.prev,n,e.prev)||oe(n,e.prev,e))||Ct(n,e)&&oe(n.prev,n,n.next)>0&&oe(e.prev,e,e.next)>0)}function oe(n,e,t){return(e.y-n.y)*(t.x-e.x)-(e.x-n.x)*(t.y-e.y)}function Ct(n,e){return n.x===e.x&&n.y===e.y}function Ds(n,e,t,r){const s=xn(oe(n,e,t)),a=xn(oe(n,e,r)),i=xn(oe(t,r,n)),o=xn(oe(t,r,e));return!!(s!==a&&i!==o||s===0&&vn(n,t,e)||a===0&&vn(n,r,e)||i===0&&vn(t,n,r)||o===0&&vn(t,e,r))}function vn(n,e,t){return e.x<=Math.max(n.x,t.x)&&e.x>=Math.min(n.x,t.x)&&e.y<=Math.max(n.y,t.y)&&e.y>=Math.min(n.y,t.y)}function xn(n){return n>0?1:n<0?-1:0}function xo(n,e){let t=n;do{if(t.i!==n.i&&t.next.i!==n.i&&t.i!==e.i&&t.next.i!==e.i&&Ds(t,t.next,n,e))return!0;t=t.next}while(t!==n);return!1}function Wt(n,e){return oe(n.prev,n,n.next)<0?oe(n,e,n.next)>=0&&oe(n,n.prev,e)>=0:oe(n,e,n.prev)<0||oe(n,n.next,e)<0}function wo(n,e){let t=n,r=!1;const s=(n.x+e.x)/2,a=(n.y+e.y)/2;do t.y>a!=t.next.y>a&&t.next.y!==t.y&&s<(t.next.x-t.x)*(a-t.y)/(t.next.y-t.y)+t.x&&(r=!r),t=t.next;while(t!==n);return r}function _s(n,e){const t=lr(n.i,n.x,n.y),r=lr(e.i,e.x,e.y),s=n.next,a=e.prev;return n.next=e,e.prev=n,t.next=s,s.prev=t,r.next=t,t.prev=r,a.next=r,r.prev=a,r}function Os(n,e,t,r){const s=lr(n,e,t);return r?(s.next=r.next,s.prev=r,r.next.prev=s,r.next=s):(s.prev=s,s.next=s),s}function Vt(n){n.next.prev=n.prev,n.prev.next=n.next,n.prevZ&&(n.prevZ.nextZ=n.nextZ),n.nextZ&&(n.nextZ.prevZ=n.prevZ)}function lr(n,e,t){return{i:n,x:e,y:t,prev:null,next:null,z:0,prevZ:null,nextZ:null,steiner:!1}}function bo(n,e,t,r){let s=0;for(let a=e,i=t-r;a<t;a+=r)s+=(n[i]-n[a])*(n[a+1]+n[i+1]),i=a;return s}function So(n,e,t,r={}){const{radius:s=1}=r;n.moveTo(e,t),n.arc(e,t,s,0,Math.PI*2)}const Po={arcs:"bevel",bevel:"bevel",miter:"miter","miter-clip":"miter",round:"round"};function cr(n,e){const{fill:t="#000",stroke:r="none",strokeWidth:s=r==="none"?0:1,strokeLinecap:a="round",strokeLinejoin:i="miter",strokeMiterlimit:o=0,strokeDasharray:l=[],strokeDashoffset:c=0,shadowOffsetX:h=0,shadowOffsetY:p=0,shadowBlur:f=0,shadowColor:u="rgba(0, 0, 0, 0)"}=e;n.fillStyle=t,n.strokeStyle=r,n.lineWidth=s,n.lineCap=a,n.lineJoin=Po[i],n.miterLimit=o,n.setLineDash(l),n.lineDashOffset=c,n.shadowOffsetX=h,n.shadowOffsetY=p,n.shadowBlur=f,n.shadowColor=u}class A{constructor(e=0,t=0){this.x=e,this.y=t}static get MAX(){return new A(1/0,1/0)}static get MIN(){return new A(-1/0,-1/0)}get array(){return[this.x,this.y]}set(e,t){return this.x=e,this.y=t,this}add(e){return this.x+=e.x,this.y+=e.y,this}sub(e){return this.x-=e.x,this.y-=e.y,this}multiply(e){return this.x*=e.x,this.y*=e.y,this}divide(e){return this.x/=e.x,this.y/=e.y,this}dot(e){return this.x*e.x+this.y*e.y}cross(e){return this.x*e.y-this.y*e.x}rotate(e,t={x:0,y:0}){const r=-e/180*Math.PI,s=this.x-t.x,a=-(this.y-t.y),i=Math.sin(r),o=Math.cos(r);return this.set(t.x+(s*o-a*i),t.y-(s*i+a*o)),this}distanceTo(e){return Math.sqrt(this.distanceToSquared(e))}distanceToSquared(e){const t=this.x-e.x,r=this.y-e.y;return t*t+r*r}lengthSquared(){return this.x*this.x+this.y*this.y}length(){return Math.sqrt(this.lengthSquared())}scale(e,t=e,r={x:0,y:0}){const s=e<0?r.x-this.x+r.x:this.x,a=t<0?r.y-this.y+r.y:this.y;return this.x=s*Math.abs(e),this.y=a*Math.abs(t),this}skew(e,t=0,r={x:0,y:0}){const s=this.x-r.x,a=this.y-r.y;return this.x=r.x+(s+Math.tan(e)*a),this.y=r.y+(a+Math.tan(t)*s),this}min(...e){return this.x=Math.min(this.x,...e.map(t=>t.x)),this.y=Math.min(this.y,...e.map(t=>t.y)),this}max(...e){return this.x=Math.max(this.x,...e.map(t=>t.x)),this.y=Math.max(this.y,...e.map(t=>t.y)),this}normalize(){return this.scale(1/(this.length()||1))}addVectors(e,t){return this.x=e.x+t.x,this.y=e.y+t.y,this}subVectors(e,t){return this.x=e.x-t.x,this.y=e.y-t.y,this}multiplyVectors(e,t){return this.x=e.x*t.x,this.y=e.y*t.y,this}divideVectors(e,t){return this.x=e.x/t.x,this.y=e.y/t.y,this}lerpVectors(e,t,r){return this.x=e.x+(t.x-e.x)*r,this.y=e.y+(t.y-e.y)*r,this}equals(e){return this.x===e.x&&this.y===e.y}applyMatrix3(e){const t=this.x,r=this.y,s=e.elements;return this.x=s[0]*t+s[3]*r+s[6],this.y=s[1]*t+s[4]*r+s[7],this}copy(e){return this.x=e.x,this.y=e.y,this}clone(){return new A(this.x,this.y)}}class ne{constructor(e=0,t=0,r=0,s=0){this.left=e,this.top=t,this.width=r,this.height=s}get x(){return this.left}set x(e){this.left=e}get y(){return this.top}set y(e){this.top=e}get right(){return this.left+this.width}get bottom(){return this.top+this.height}get center(){return new A((this.left+this.right)/2,(this.top+this.bottom)/2)}get array(){return[this.left,this.top,this.width,this.height]}static from(...e){if(e.length===0)return new ne;if(e.length===1)return e[0].clone();const t=e[0],r=e.slice(1).reduce((s,a)=>(s.left=Math.min(s.left,a.left),s.top=Math.min(s.top,a.top),s.right=Math.max(s.right,a.right),s.bottom=Math.max(s.bottom,a.bottom),s),{left:(t==null?void 0:t.left)??0,top:(t==null?void 0:t.top)??0,right:(t==null?void 0:t.right)??0,bottom:(t==null?void 0:t.bottom)??0});return new ne(r.left,r.top,r.right-r.left,r.bottom-r.top)}translate(e,t){return this.left+=e,this.top+=t,this}copy(e){return this.left=e.left,this.top=e.top,this.width=e.width,this.height=e.height,this}clone(){return new ne(this.left,this.top,this.width,this.height)}}class Fe{constructor(e=1,t=0,r=0,s=0,a=1,i=0,o=0,l=0,c=1){k(this,"elements",[]);this.set(e,t,r,s,a,i,o,l,c)}set(e,t,r,s,a,i,o,l,c){const h=this.elements;return h[0]=e,h[1]=s,h[2]=o,h[3]=t,h[4]=a,h[5]=l,h[6]=r,h[7]=i,h[8]=c,this}identity(){return this.set(1,0,0,0,1,0,0,0,1),this}copy(e){const t=this.elements,r=e.elements;return t[0]=r[0],t[1]=r[1],t[2]=r[2],t[3]=r[3],t[4]=r[4],t[5]=r[5],t[6]=r[6],t[7]=r[7],t[8]=r[8],this}multiply(e){return this.multiplyMatrices(this,e)}premultiply(e){return this.multiplyMatrices(e,this)}multiplyMatrices(e,t){const r=e.elements,s=t.elements,a=this.elements,i=r[0],o=r[3],l=r[6],c=r[1],h=r[4],p=r[7],f=r[2],u=r[5],g=r[8],m=s[0],d=s[3],S=s[6],T=s[1],x=s[4],C=s[7],y=s[2],w=s[5],P=s[8];return a[0]=i*m+o*T+l*y,a[3]=i*d+o*x+l*w,a[6]=i*S+o*C+l*P,a[1]=c*m+h*T+p*y,a[4]=c*d+h*x+p*w,a[7]=c*S+h*C+p*P,a[2]=f*m+u*T+g*y,a[5]=f*d+u*x+g*w,a[8]=f*S+u*C+g*P,this}invert(){const e=this.elements,t=e[0],r=e[1],s=e[2],a=e[3],i=e[4],o=e[5],l=e[6],c=e[7],h=e[8],p=h*i-o*c,f=o*l-h*a,u=c*a-i*l,g=t*p+r*f+s*u;if(g===0)return this.set(0,0,0,0,0,0,0,0,0);const m=1/g;return e[0]=p*m,e[1]=(s*c-h*r)*m,e[2]=(o*r-s*i)*m,e[3]=f*m,e[4]=(h*t-s*l)*m,e[5]=(s*a-o*t)*m,e[6]=u*m,e[7]=(r*l-c*t)*m,e[8]=(i*t-r*a)*m,this}transpose(){let e;const t=this.elements;return e=t[1],t[1]=t[3],t[3]=e,e=t[2],t[2]=t[6],t[6]=e,e=t[5],t[5]=t[7],t[7]=e,this}scale(e,t){return this.premultiply(hr.makeScale(e,t)),this}rotate(e){return this.premultiply(hr.makeRotation(-e)),this}translate(e,t){return this.premultiply(hr.makeTranslation(e,t)),this}makeTranslation(e,t){return this.set(1,0,e,0,1,t,0,0,1),this}makeRotation(e){const t=Math.cos(e),r=Math.sin(e);return this.set(t,-r,0,r,t,0,0,0,1),this}makeScale(e,t){return this.set(e,0,0,0,t,0,0,0,1),this}fromArray(e,t=0){for(let r=0;r<9;r++)this.elements[r]=e[r+t];return this}clone(){return new this.constructor().fromArray(this.elements)}}const hr=new Fe;function Rs(n,e,t,r){const s=n*t+e*r,a=Math.sqrt(n*n+e*e)*Math.sqrt(t*t+r*r);let i=Math.acos(Math.max(-1,Math.min(1,s/a)));return n*r-e*t<0&&(i=-i),i}function Co(n,e,t,r,s,a,i,o){if(e===0||t===0){n.lineTo(o.x,o.y);return}r=r*Math.PI/180,e=Math.abs(e),t=Math.abs(t);const l=(i.x-o.x)/2,c=(i.y-o.y)/2,h=Math.cos(r)*l+Math.sin(r)*c,p=-Math.sin(r)*l+Math.cos(r)*c;let f=e*e,u=t*t;const g=h*h,m=p*p,d=g/f+m/u;if(d>1){const z=Math.sqrt(d);e=z*e,t=z*t,f=e*e,u=t*t}const S=f*m+u*g,T=(f*u-S)/S;let x=Math.sqrt(Math.max(0,T));s===a&&(x=-x);const C=x*e*p/t,y=-x*t*h/e,w=Math.cos(r)*C-Math.sin(r)*y+(i.x+o.x)/2,P=Math.sin(r)*C+Math.cos(r)*y+(i.y+o.y)/2,b=Rs(1,0,(h-C)/e,(p-y)/t),F=Rs((h-C)/e,(p-y)/t,(-h-C)/e,(-p-y)/t)%(Math.PI*2);n.ellipse(w,P,e,t,r,b,b+F,a===0)}const ce={WHITESPACE:/[ \t\r\n]/,DIGIT:/\d/,SIGN:/[-+]/,POINT:/\./,COMMA:/,/,EXP:/e/i,FLAGS:/[01]/};function Ze(n,e,t=0){let o=0,l=!0,c="",h="";const p=[];function f(d,S,T){const x=new SyntaxError(`Unexpected character "${d}" at index ${S}.`);throw x.partial=T,x}function u(){c!==""&&(h===""?p.push(Number(c)):p.push(Number(c)*10**Number(h))),c="",h=""}let g;const m=n.length;for(let d=0;d<m;d++){if(g=n[d],Array.isArray(e)&&e.includes(p.length%t)&&ce.FLAGS.test(g)){o=1,c=g,u();continue}if(o===0){if(ce.WHITESPACE.test(g))continue;if(ce.DIGIT.test(g)||ce.SIGN.test(g)){o=1,c=g;continue}if(ce.POINT.test(g)){o=2,c=g;continue}ce.COMMA.test(g)&&(l&&f(g,d,p),l=!0)}if(o===1){if(ce.DIGIT.test(g)){c+=g;continue}if(ce.POINT.test(g)){c+=g,o=2;continue}if(ce.EXP.test(g)){o=3;continue}ce.SIGN.test(g)&&c.length===1&&ce.SIGN.test(c[0])&&f(g,d,p)}if(o===2){if(ce.DIGIT.test(g)){c+=g;continue}if(ce.EXP.test(g)){o=3;continue}ce.POINT.test(g)&&c[c.length-1]==="."&&f(g,d,p)}if(o===3){if(ce.DIGIT.test(g)){h+=g;continue}if(ce.SIGN.test(g)){if(h===""){h+=g;continue}h.length===1&&ce.SIGN.test(h)&&f(g,d,p)}}ce.WHITESPACE.test(g)?(u(),o=0,l=!1):ce.COMMA.test(g)?(u(),o=0,l=!0):ce.SIGN.test(g)?(u(),o=1,c=g):ce.POINT.test(g)?(u(),o=2,c=g):f(g,d,p)}return u(),p}function Tt(n,e){return n-(e-n)}function Ns(n,e){const t=new A,r=new A;for(let s=0,a=n.length;s<a;s++){const i=n[s];if(i.type==="m"||i.type==="M")i.type==="m"?t.add(i):t.copy(i),e.moveTo(t.x,t.y),r.copy(t);else if(i.type==="h"||i.type==="H")i.type==="h"?t.x+=i.x:t.x=i.x,e.lineTo(t.x,t.y),r.copy(t);else if(i.type==="v"||i.type==="V")i.type==="v"?t.y+=i.y:t.y=i.y,e.lineTo(t.x,t.y),r.copy(t);else if(i.type==="l"||i.type==="L")i.type==="l"?t.add(i):t.copy(i),e.lineTo(t.x,t.y),r.copy(t);else if(i.type==="c"||i.type==="C")i.type==="c"?(e.bezierCurveTo(t.x+i.x1,t.y+i.y1,t.x+i.x2,t.y+i.y2,t.x+i.x,t.y+i.y),r.x=t.x+i.x2,r.y=t.y+i.y2,t.add(i)):(e.bezierCurveTo(i.x1,i.y1,i.x2,i.y2,i.x,i.y),r.x=i.x2,r.y=i.y2,t.copy(i));else if(i.type==="s"||i.type==="S")i.type==="s"?(e.bezierCurveTo(Tt(t.x,r.x),Tt(t.y,r.y),t.x+i.x2,t.y+i.y2,t.x+i.x,t.y+i.y),r.x=t.x+i.x2,r.y=t.y+i.y2,t.add(i)):(e.bezierCurveTo(Tt(t.x,r.x),Tt(t.y,r